JPH11175757A - 情報処理装置および方法、並びに提供媒体 - Google Patents

情報処理装置および方法、並びに提供媒体

Info

Publication number
JPH11175757A
JPH11175757A JP9352232A JP35223297A JPH11175757A JP H11175757 A JPH11175757 A JP H11175757A JP 9352232 A JP9352232 A JP 9352232A JP 35223297 A JP35223297 A JP 35223297A JP H11175757 A JPH11175757 A JP H11175757A
Authority
JP
Japan
Prior art keywords
node
prototype
current scope
routing
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP9352232A
Other languages
English (en)
Inventor
Masayuki Ishikawa
真之 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP9352232A priority Critical patent/JPH11175757A/ja
Priority to US09/205,936 priority patent/US6483508B1/en
Publication of JPH11175757A publication Critical patent/JPH11175757A/ja
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use

Landscapes

  • Engineering & Computer Science (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

(57)【要約】 【課題】 より容易に、プロトタイプを設定できるよう
にする。 【解決手段】 カレントスコープの一部のノードを用い
てプロトタイプが定義された場合において、編集ツール
52は、カレントスコープの中に、プロトタイプにルー
ティングすべきノードが存在するとき、プロトタイプ
に、イベントを入力または出力するためのフィールドと
してのインタフェースを追加し、追加されたインタフェ
ースを介して、ノードとプロトタイプの間をルーティン
グする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置およ
び方法、並びに提供媒体に関し、特に、所定のワールド
を構成するノードの一部または全てを用いて、プロトタ
イプとして新たなノードを定義する場合において、定義
されたプロトタイプにルーティングすべきノードが存在
するとき、定義されたプロトタイプに、インタフェース
を自動的に追加するようにした、情報処理装置および方
法、並びに提供媒体に関する。
【0002】
【従来の技術】世界的規模で構築されたコンピュータネ
ットワークであるインターネット(TheInternet)におい
て、様々な情報を提供するWWW(World Wide Web)の枠組
みを利用して3次元的な情報を統一的に扱うことができ
る記述言語として、VRML(Virtual Reality Modeling La
nguage)が知られている。
【0003】インターネットで利用できる情報提供シス
テムとして、スイスのCERN(European Center for Nucl
ear Research:欧州核物理学研究所)が開発したWWWが
知られている。このWWWは、テキスト、画像、または音
声などの情報を、ハイパーテキスト形式で閲覧できるよ
うにしたもので、HTTP(Hyper Text Transfer Protoco
l:ハイパーテキスト転送プロトコル)と呼ばれるプロト
コルに基づいて、WWWサーバに格納された情報をパーソ
ナルコンピュータなどの端末に非同期転送するものであ
る。
【0004】WWWサーバは、HTTP、デーモン(daemon)
と呼ばれるサーバソフトウエア、および、ハイパーテキ
スト情報が格納されるHTMLファイルにより構成される。
なお、デーモンとは、UNIX上で作業を行う場合におい
て、バックグラウンドで管理や処理を実行するプログラ
ムである。ハイパーテキスト情報は、HTML(HyperTextM
arkup Language:ハイパーテキスト記述言語)と呼ばれ
る記述言語を用いて表現される。HTMLによるハイパーテ
キストの記述は、「<」と「>」で囲まれたタグと呼ば
れる書式指定によって文章の論理的な構造が表現され
る。他の情報とのリンクについての記述は、アンカーと
呼ばれるリンク情報を用いて行われる。このアンカーを
用いて、情報が存在する場所を指定する際には、URL(Un
iform Resource Locator)と呼ばれる文字列が用いられ
る。
【0005】HTMLで記述されたファイルを、ネットワー
ク上において転送するためのプロトコルがHTTPである。
クライアントからの、情報の要求をWWWサーバに伝え、H
TMLファイルのハイパーテキスト情報をクライアントに
転送する機能をもっている。
【0006】WWWを利用する環境として多く利用されて
いるのが、WWWブラウザ(ブラウザとは閲覧するという
意味)と呼ばれる。このWWWブラウザは、例えば、Netsc
ape Navigator(米国Netscape Communications社の商
標)をはじめとするクライアントソフトウエアである。
このWWWブラウザを用いて、URLに対応する世界規模で広
がるインターネット上のWWWサーバ上のファイル、いわ
ゆるホームページを閲覧することができ、いわゆるネッ
トサーフィンと呼ばれるように、リンクが張られたホー
ムページを次々と辿って、多種多様なWWWの情報ソース
にアクセスすることができる。
【0007】近年、このWWWをさらに拡張し、3次元仮想
空間の記述や、3次元グラフィックスで描画されたオブ
ジェクトに対してハイパーテキストのリンクの設定を可
能とし、これらのリンクをたどりながらWWWサーバを次
々とアクセスできるようにした、VRMLと呼ばれる3次元
グラフィックス記述言語の仕様が策定され、このVRMLの
仕様に基づいて記述された3次元空間を表示するための
VRMLブラウザが開発されている。
【0008】このVRMLの詳細は、例えば、「VRMLを知
る:3次元電脳空間の構築とブラウジング〔マーク・ペ
ッシ著,松田晃一・蒲地輝尚・竹内彰一・本田康晃・暦
本純一・石川真之・宮下健・原和弘訳,1996年3月
25日初版発行,プレンティスホール出版ISBN4-931356
-37-0〕(原著;VRML:Browsing & Building Cyberspac
e,Mark Pesce, 1995 New Readers Publishing ISBN 1-5
6205-498-8))」、または「VRMLの最新動向とCyberPas
sage〔松田晃一・本田康晃著、bit(共立出版)/1996
Vol.28 No.7 pp29 〜pp36, No.8 pp57 〜pp65, No.9 pp
29 〜pp36, No.10 pp49〜pp58〕」等の文献に記載され
ている。
【0009】また、 「The Virtual Reality Modeling
Language Version 2.0, ISO/IEC CD 14772」の公式か
つ完全な仕様書は、「http://www.vrml.org/Specificat
ions/VRML2.0/FINAL/spec/index.html」で公開されてお
り、その日本語版は、「http://www.webcity.co.jp/inf
o/andoh/VRML/vrml2.0/spec-jp/index.html」で公開さ
れている。
【0010】さらに、VRML2.0用ブラウザおよび共有サ
ーバ用ソフトウェアとしては、例えば、本出願人である
ソニー株式会社が「Community Place(商標) Browser /
Bureau」として開発し、製品化しており、そのβ版(試
供版)を、インターネット上のホームページ「http://v
s.sony co.jp」からダウンロードすることが可能とされ
ている。
【0011】このようなVRML2.0においては、3次元的
な仮想空間内におけるオブジェクトの自律的な振る舞い
(Behavior)を記述し、表現することが可能とされてい
る。このVRML2.0を用いて、3次元的な仮想空間内でオ
ブジェクトが動的に動き回るVRMLコンテンツを作成しよ
うとする場合、以下の様な作業行程を経ることになる。
なお、以下において、1つの仮想空間内で一連のオブジ
ェクトの振る舞いを実現するためのVRMLファイルや、ス
クリプト(Script)ファイル等の集合体をVRMLコンテン
ツと呼ぶことにする。
【0012】以下において、このVRMLコンテンツを作成
するための一連の作業について説明する。
【0013】モデル作成作業は、仮想空間内に配置する
オブジェクト(モデル)の形状や位置等をVRML2.0に基
づいて記述し、基本的なVRMLファイルを作成する作業で
ある。
【0014】センサノードの記述は、仮想空間内の各オ
ブジェクトに対して、マウスによるクリック操作(ポイ
ンティング操作)がされた場合にイベントを発生するTo
uchSensorや、予め設定された時刻になるとイベントを
発生するTimeSensor等のセンサノードの記述をVRMLファ
イルへ追加する作業である。
【0015】ルーティング(Routing)の編集作業は、
センサノードが付加されたオブジェクトに対するポイン
ティング操作等に応じて発生したイベントを伝達するた
めのルーティングの記述をVRMLファイルへ追加する作業
である。
【0016】スクリプトノードの記述は、ルーティング
によって伝達されたイベントを外部スクリプトへ受け渡
すためのスクリプトノードに関する記述を、VRMLファイ
ルへ追加する作業である。
【0017】スクリプトファイルの作成は、スクリプト
ノードを介して伝達されたイベントに基づいて、仮想空
間内の各オブジェクトに対して予め設定された振る舞い
を実現するためのJava言語(Javaは、米国Sun Microsys
tems社の商標)等によるスクリプトを記述(プログラミ
ング)する作業である。
【0018】以上の各種作業を経て、所望のVRMLコンテ
ンツが作成される。
【0019】VRML2.0に基づいて、仮想空間内でのオブ
ジェクトの自律的な挙動を伴うVRMLコンテンツを作成し
ようとする場合、既存のモデラーと呼ばれるオーサリン
グソフトウェア(例えば、3D Studio Max(商標)等)
を用いて、オブジェクトの形状やアニメーションを作成
し、作成したものを、VRML2.0の形式のファイルとして
出力する。仮に、モデラーがVRML2.0形式をサポートし
ていない場合、コンバータ等を用いて、作成したファイ
ルをVRML2.0形式に変換する必要がある。
【0020】次に、VRML2.0によって規定されている各
種センサ・ノード等の記述を、テキストエディタを用い
てVRMLファイルに追加したり、テキストエディタを用い
てJava言語によるスクリプトの作成や、これに対応する
スクリプトノードの追加、ルート文の追加等の作業を繰
り返す。そして、最後に、実際の動作確認に当たって
は、VRML2.0対応のVRMLブラウザを起動し、マウスによ
るクリック操作等により、オブジェクトの振る舞いを確
認する。
【0021】ところで、VRML2.0では、ユーザが、新し
いノード型を定義し、拡張することができ、また、定義
したノードを、あたかも既存の組み込みノードのように
使用することができるようになされている。このよう
に、ユーザが新しいノードを定義する方法を、プロトタ
イプ(ProtoType)と称する。このプロトタイプを定義
する場合、PROTOと称するキーワードが用いられる。
【0022】
【発明が解決しようとする課題】しかしながら、VRML2.
0のオーサリングシステムには、このプロトタイプの編
集をサポートしているものがほとんど存在せず、新しい
ノードをプロトタイプとして定義する場合、ルーティン
グの入出力の設定等の処理を、手作業で行わなければな
らない課題があった。
【0023】本発明は、このような状況に鑑みてなされ
たものであり、より容易にプロトタイプの編集を行うこ
とができるようにするものである。
【0024】
【課題を解決するための手段】請求項1に記載の情報処
理装置は、カレントスコープの一部のノードを用いてプ
ロトタイプが定義された場合において、カレントスコー
プの中に、プロトタイプにルーティングすべきノードが
存在するとき、プロトタイプに、イベントを入力または
出力するためのフィールドとしてのインタフェースを追
加する追加手段と、追加手段により追加されたインタフ
ェースを介して、ノードとプロトタイプの間をルーティ
ングするルーティング手段とを備えることを特徴とす
る。
【0025】請求項4に記載の情報処理方法は、カレン
トスコープの一部のノードを用いてプロトタイプが定義
された場合において、カレントスコープの中に、プロト
タイプにルーティングすべきノードが存在するとき、プ
ロトタイプに、イベントを入力または出力するためのフ
ィールドとしてのインタフェースを追加する追加ステッ
プと、追加ステップで追加されたインタフェースを介し
て、ノードとプロトタイプの間をルーティングするルー
ティングステップとを備えることを特徴とする。
【0026】請求項5に記載の提供媒体は、カレントス
コープの一部のノードを用いてプロトタイプが定義され
た場合において、カレントスコープの中に、プロトタイ
プにルーティングすべきノードが存在するとき、プロト
タイプに、イベントを入力または出力するためのフィー
ルドとしてのインタフェースを追加する追加ステップ
と、追加ステップで追加されたインタフェースを介し
て、ノードとプロトタイプの間をルーティングするルー
ティングステップとを有するコンピュータプログラムを
提供することを特徴とする。
【0027】請求項1に記載の情報処理装置、請求項4
に記載の情報処理方法、および請求項5に記載の提供媒
体においては、カレントスコープの一部のノードを用い
てプロトタイプが定義された場合において、カレントス
コープの中に、プロトタイプにルーティングすべきノー
ドが存在するとき、プロトタイプに、イベントを入力ま
たは出力するためのフィールドとしてのインタフェース
が追加され、追加されたインタフェースを介して、ノー
ドとプロトタイプの間がルーティングされる。
【0028】
【発明の実施の形態】以下に本発明の実施の形態を説明
するが、特許請求の範囲に記載の発明の各手段と以下の
実施の形態との対応関係を明らかにするために、各手段
の後の括弧内に、対応する実施の形態(但し一例)を付
加して本発明の特徴を記述すると、次のようになる。但
し勿論この記載は、各手段を記載したものに限定するこ
とを意味するものではない。
【0029】請求項1に記載の情報処理装置は、カレン
トスコープの一部のノードを用いてプロトタイプが定義
された場合において、カレントスコープの中に、プロト
タイプにルーティングすべきノードが存在するとき、プ
ロトタイプに、イベントを入力または出力するためのフ
ィールドとしてのインタフェースを追加する追加手段
(例えば、図7のステップS15)と、追加手段により
追加されたインタフェースを介して、ノードとプロトタ
イプの間をルーティングするルーティング手段(例え
ば、図7のステップS16)とを備えることを特徴とす
る。
【0030】請求項2に記載の情報処理装置は、プロト
タイプの実体であるインスタンスを作成する作成手段
(例えば、図13のステップS24)と、カレントスコ
ープの中に、作成手段により作成されたインスタンスに
ルーティングすべきノードが存在する場合において、イ
ンスタンスにインタフェースを追加する第2の追加手段
(例えば、図13のステップS25)と、第2の追加手
段により追加された前記インタフェースを介して、前記
ノードと前記インスタンスの間をルーティングする第2
のルーティング手段(例えば、図13のステップS2
6)とをさらに備えることを特徴とする。
【0031】図1は、本発明の情報処理装置を適用し
た、3次元仮想空間を統一的に扱うネットワークシステ
ムの構成を示す図である。この例において、ネットワー
クシステムは、主に、企業内ネットワーク1、インター
ネット2、プロバイダ3、ISDN(integrated services d
igital network) 網4、およびクライアント端末5が相
互に接続されて構成される。なお、実際には、企業内ネ
ットワーク1、インターネット2、プロバイダ3、およ
びクライアント端末5は、それぞれ複数存在しうるが、
図示の簡略化のために、この図においては、それぞれ1
つずつとしてある。この例においては、企業内ネットワ
ーク1のLAN(local area network)13、インターネッ
ト2のデジタル通信回線22、プロバイダ3、およびIS
DN網4により、企業内ネットワーク1のサーバ12とク
ライアント端末5との間のデータ通信が実現されるよう
になされている。
【0032】企業内ネットワーク1は、ハードディスク
11を有するサーバ12、LAN13およびゲートウェイ
サーバ14により構成される。サーバ12は、例えば、
本出願人がインターネット上(http://vs.sony.co.jp
/)で提供するCommunity Place(商標)用のサーバであ
って、ユーザがコンテンツ作成用ツール50(図3を用
いて後述する)により作成したコンテンツ、つまり、ユ
ーザがVRML2.0で記述した3次元的な物体(モデル)の
形状および位置等を示す図形データ(VRMLファイル)、
および、ユーザがJava言語等のプログラム言語により記
述し、モデルに対する操作に応じて起動するスクリプト
(ファイル等からなるVRMLコンテンツ)をネットワーク
等を介して取得し、さらにローカルのハードディスク1
1に記憶し、管理するようになされている。
【0033】また、サーバ12は、クライアント端末5
からの転送要求に応じて、ハードディスク11に記憶し
た3次元的な仮想空間のコンテンツを、LAN13、イン
ターネット2、プロバイダ3、およびISDN網4(以下、
ネットワークシステム内のこれらの通信ノードを総称し
て、適宜、単にネットワークと表記する)を介して、要
求元のクライアント端末5に転送し、さらにまた、コン
テンツ作成用のプログラム(図3を用いて後述するコン
テンツ作成用ツール50)を、ネットワーク介して、も
しくは、例えばフロッピーディスク等の記録媒体6を介
して、クライアント端末5に転送する。
【0034】インターネット2は、ルータ21,23お
よびディジタル通信回線22により構成される。
【0035】図2は、図1のクライアント端末5の構成
例を示すブロック図である。この例において、クライア
ント端末5は、CPU31を備え、このCPU31は、ROM3
2に記録されているプログラムに従って各種の処理を実
行するようになされている。RAM33には、CPU31が各
種の処理を実行する上において必要なデータまたはプロ
グラム等が適宜記録されるようになされている。通信装
置34は、ISDN網4を介して、データを授受するように
なされている。
【0036】表示装置35は、例えば、CRTやLCD等を備
え、CG(コンピュータグラフィック)の3次元画像等を
表示することができるようになされている。スピーカ3
6は、音声信号を出力するようになされている。入力装
置38のキーボード38aは、所定の文字や記号等を入
力するとき操作される。マウス38bは、所定の位置
(例えば、モデル)をポインティングするとき操作され
るようになされている。例えば、ハードディスク、光デ
ィスク、MOディスク、またはフロッピーディスク等よ
りなる記憶装置39は、コンテンツ作成用ツール50
や、各種のデータを記憶するようになされている。イン
タフェース37は、表示装置35、スピーカ36、入力
装置38、および記憶装置39に対するデータのインタ
フェースを構成している。
【0037】クライアント端末5は、図1のサーバ12
からネットワークを介してダウンロードされてきたVRML
コンテンツを、通信装置34を介して受信し、表示装置
35に表示させる。
【0038】また、クライアント端末5は、サーバ12
からネットワークあるいは記録媒体6を介して供給され
るコンテンツ作成用ツール50を記憶装置39にインス
トールし、また、これをユーザの操作に応じて起動し
て、3次元仮想空間のコンテンツを作成し、作成したVR
MLコンテンツを、ネットワークあるいは記録媒体6を介
してサーバ12にアップロードするようになされてい
る。
【0039】さらに、クライアント端末5は、表示した
モデルに対する、ユーザによる入力装置38を用いたポ
インティング操作等に応じて、例えば、ポインティング
されたモデルの色を変更したり、モデルを移動させる等
のスクリプトを起動し、3次元仮想空間の表示内容を変
更する。
【0040】つまり、3次元仮想空間上のモデルに対す
るユーザの操作に応じてインタラクティブに表示内容を
変更することにより、クライアント端末5は、ユーザ
に、あたかも実際に3次元仮想空間内において、ユーザ
自身が移動したり、モデルに触れて操作し、移動させた
り音を出したりしているかのような感覚を生じさせる。
【0041】図3は、図1および図2に示したクライア
ント端末5において動作するコンテンツ作成用ツール5
0の構成例を示す図である。この例において、コンテン
ツ作成用ツール50は、ユーザインタフェース部(GU
I:Graphical User Interface)51、編集ツール5
2、シーングラフデータベース53、作業ツール54、
スクリプト作成部56、およびブラウザ57により構成
される。
【0042】編集ツール52は、モデル編集ツール52
1、ルーティング編集ツール522、シーングラフ編集
ツール523、テキストエディタ524、テンプレート
作成ツール525、およびキーフレーム編集ツール52
6により構成され、作業ツール54は、ブラウザエミュ
レータ541、ファイル入出力部542、ファイルスコ
ープマネジメント部543、およびバックアップレスト
ア部544から構成される。また、スクリプト作成部5
6は、Javaコンパイラ561、Javaエミュレータ56
2、およびJavaデバッガ563により構成されている。
【0043】コンテンツ作成用ツール50は、図2のク
ライアント端末5において、記憶装置39にインストー
ルされて用いられるソフトウェアであって、ネットワー
クあるいは記録媒体6を介して配付され、モデル作成作
業とインタラクション作成作業を統合的に関連付けて、
コンテンツの作成を行うようになされている。
【0044】以下、コンテンツ作成用ツール50の構成
部分を説明する。
【0045】ユーザインタフェース部51は、3次元仮
想空間のコンテンツ作成に用いられる各種データの入力
に用いられる画像を、図2の表示装置35に、ウィンド
ウ形式を用いて表示するようになされている。また、ユ
ーザインタフェース部51は、ユーザが、表示装置35
に表示されたウィンドウ内の各種ボタンを入力装置38
のマウス38bを用いて操作することにより入力される
操作入力データ、または、キーボード38aから入力さ
れる操作入力データを受け入れ、必要なデータを編集ツ
ール52の各ツールまたはシーングラフデータベース5
3に供給する。つまり、ユーザインタフェース部51
は、ユーザに対して、GUI環境を提供するようになされ
ている。
【0046】そして、ユーザインタフェース部51は、
編集ツール52またはシーングラフデータベース53か
ら表示出力データを受け、表示装置35の所定のウィン
ドウ内に表示する。なお、編集ツール52、シーングラ
フデータベース53、および作業ツール54の各構成部
分は、ユーザインタフェース部51に入力される操作入
力データに応じて起動され、ユーザインタフェース部5
1により供給された操作入力データに基づいて処理を行
うようになされている。
【0047】編集ツール52は、3次元仮想空間内のモ
デルの図形データおよびインタラクションプログラムの
作成に必要な機能をユーザに提供する。編集ツール52
において、モデル編集ツール521は、表示装置35に
表示されたモデル編集用ウィンドウに対するユーザの操
作により入力されるモデル作成用のデータを用いて、モ
デルの大きさ、色(形状)、位置、または動作等の属性
を示す図形データを作成する。また、モデル編集ツール
521は、作成した図形データ(モデルの属性)を、シ
ーングラフデータベース53に出力する。さらに、モデ
ル編集ツール521は、ユーザインタフェース部51を
介して、表示装置35上のモデル編集用ウィンドウの所
定の位置に、作成された図形データを3次元的または2
次元的に表示する。
【0048】なお、モデル編集ツール521は、記憶装
置39に記憶されている図形データ、記録媒体6から読
み出された図形データ、または、ネットワークを介して
提供されてきた図形データを編集することも可能であ
る。
【0049】ルーティング編集ツール522は、スコー
プ(編集対象となっているVRMLファイル)内で名前が付
されたモデルの図形データとスクリプト等の各ノードと
を対応付けるルーティング編集を行う。なお、ルーティ
ングの際には、ルーティング元とルーティング先のノー
ドの属性(フィールド)の型、例えばSFBool(単一の理
論値を含むフィールド)等を合わせる必要がある。
【0050】VRMLにおいては、各ノードを階層的に配置
することが可能である。シーングラフ編集ツール523
は、モデルの階層構造、および、目に見えないノード
(スクリプトノード等)を編集するようになされてい
る。ノードの階層構造としては、例えば、葉を示すVRML
ファイルF1、枝を示すVRMLファイルF2、幹を示すVR
MLファイルF3、および根を示すVRMLファイルF4を、
木を示すVRMLファイルF5の下の階層として作成する構
造を具体例として挙げることができる。
【0051】ユーザが、現在の編集対象として所定のVR
MLファイルを選択すると、シーングラフ編集ツール52
3は、選択されているVRMLファイルが参照しているノー
ドを、シーングラフウィンドウ76(図4参照)内に、
ツリー形式(シーングラフ)で表示する。このように、
編集対象のVRMLファイルにより参照されているノードの
集合を、ファイルスコープ(またはカレントスコープ)
と称する。シーングラフ編集ツール523は、ルーティ
ング、キーフレーム、またはスクリプト作成等の編集の
対象となるノードを、シーングラフウィンドウ76に表
示されているファイルスコープに限定するようになされ
ている。また、ファイルスコープの内容、および、編集
対象となるノードは、ユーザによる編集対象のVRMLファ
イルの変更に対応して、変更後のVRMLが参照しているノ
ードに変更される。
【0052】テキストエディタ524は、Java言語等の
スクリプトの作成に適したプログラミング言語のエディ
タ機能を有し、スクリプトのソースプログラムの作成を
行うとともに、スクリプトノードに対する編集作業に連
携して、変数の追加、削除および変更を自動的に行うよ
うになされている。
【0053】テンプレート作成ツール525は、ユーザ
の便宜を図るために用いられるツールであって、テキス
トエディタ524と連携して動作し、表示装置35に表
示された「Script Expert」と呼ばれるウィンドウに対
するユーザの操作に応じて、スクリプトの原型となるプ
ログラム(テンプレート)を対話形式で作成してテキス
トエディタ524に対して出力する。このテンプレート
作成ツール525により、ユーザは、テンプレート作成
ツール525が提供し、既にある程度でき上がっている
ソースプログラム(スクリプトのひな型)に、必要に応
じて変更を加えることにより、容易にスクリプトを作成
することができる。
【0054】キーフレーム編集ツール526は、モデル
編集ツール521で編集されたモデルの状態(例えば、
モデルの座標)が、画面上で変化するようなアニメーシ
ョンを作成するようになされている(この点について
は、図9を参照して後述する)。
【0055】シーングラフデータベース53は、編集ツ
ール52の各ツールが作成したデータを、図2ののRAM
33に記憶し、管理して、編集ツール52および作業ツ
ール54の各構成部分の要求に応じて、記憶したデータ
を、高速にそれらに提供する。
【0056】作業ツール54は、作成したコンテンツの
確認、スクリプトの動作確認、および、データの記録お
よび再生等のコンテンツ作成作業に必要な機能をユーザ
に提供する。
【0057】作業ツール54において、ブラウザエミュ
レータ541は、作成したコンテンツの動作をユーザが
確認するため等の用途に用いられ、表示装置35に表示
される入力用画像に設けられた「Play」ボタン(後述)
が操作されることにより起動され、シーングラフデータ
ベース53に記憶されたコンテンツを、表示装置35の
画面のモデリングウィンドウに表示し、さらに、ユーザ
の操作に応じて表示内容を変更する。
【0058】つまり、ブラウザエミュレータ541は、
ブラウザ57の動作をエミュレートし、ブラウザ57を
用いた場合と同じコンテンツをユーザに示す。なお、ブ
ラウザエミュレータ541は、入力用画像等に設けられ
た「Stop」ボタン(後述)が操作されることにより、動
作を停止し、これに対応して、ユーザインタフェース部
51は、元の入力用画像を表示するようになされてい
る。
【0059】ファイル入出力部542は、シーングラフ
データベース53に記憶されたコンテンツの図形データ
〔VRMLファイル(拡張子.wrl)〕、スクリプト(拡張
子.java)、テクスチャファイル(拡張子.bmp,.jpg,.
gif)、またはサウンドファイル(拡張子.wav,.mod)
を、記憶装置39または記録媒体6に記録する。また反
対に、ファイル入出力部542は、記憶装置39等によ
り読み出された上記コンテンツの各種データをシーング
ラフデータベース53に対して出力する。
【0060】VRMLにおいては、図形データのファイル
(拡張子.wrl)ごとに1つのスコープ(ノードに付され
た名前およびルーティングが有効な範囲)が与えられ、
ノード名およびルーティングの管理はスコープを単位と
して行われる。ファイルスコープマネジメント部543
は、シーングラフデータベース53におけるノード名の
管理、ノード名の自動作成、および、ノードの検索を行
うとともに、ノードが同一の図形データファイルを複
数、参照する場合に、図形データファイルに対する変更
を、参照するノード全てに伝播させる。
【0061】ブラウザエミュレータ541がインタラク
ティブ操作可能なシーンを表示すると、ユーザによる操
作に応じてノードの状態が変化し、何らの手当てもしな
ければ、元のシーンの表示ができなくなる。このため、
バックアップレストア部544は、ブラウザエミュレー
タ541が、Playボタンの操作に応じて起動された際
に、モデリングウィンドウに最初に表示したシーン(VR
MLファイルから生成された3次元仮想空間)の各ノード
の初期状態を、シーングラフデータベース53から受け
て記憶する。
【0062】また、ブラウザエミュレータ541は、ブ
ラウザエミュレータ541がStopボタンの押下に応じて
動作を停止した場合に、記憶した各ノードの状態をシー
ングラフデータベース53に対して出力する。なお、ユ
ーザインタフェース部51は、シーングラフデータベー
ス53に入力された各ノードの初期状態に基づいて、モ
デリングウィンドウ内に3次元仮想空間を表示する。
【0063】スクリプト作成部56は、ユーザがテキス
トエディタ524を用いて作成したスクリプトのコンパ
イル、動作確認、およびデバッグ機能を有する。
【0064】スクリプト作成部56において、Javaコン
パイラ561は、シーングラフデータベース53に記憶
されたJava言語によるスクリプトのソースプログラムを
コンパイルしてオブジェクトプログラムを作成し、シー
ングラフデータベース53に対して出力する。
【0065】Javaエミュレータ562およびJavaデバッ
ガ563は、Java言語で記述されたプログラムのインタ
プリタとして動作し、ユーザがスクリプトプログラムの
動作確認およびデバッグを行うために用いられる。つま
り、Javaエミュレータ562は、シーングラフデータベ
ース53に記憶されたスクリプトのオブジェクトプログ
ラムの動作をエミュレートし、Javaデバッガ563は、
Javaエミュレータ562のエミュレート動作時の状態、
および、発生したエラーをシーングラフデータベース5
3に対して出力する。
【0066】ブラウザ57は、例えば、通常のWWWを見
るために用いられるブラウザを、3次元仮想空間の表示
に適するように改良したものであって、記憶装置39か
ら読み出された3次元仮想空間のコンテンツ、あるい
は、図1のサーバ12からネットワークを介して送信さ
れる3次元仮想空間のコンテンツを、表示装置35に表
示させるほか、ユーザインタフェース部51乃至作業ツ
ール54の各構成部分の動作と連動したヘルプファイル
の表示を行う。なお、ブラウザ57としては、本出願人
が提供する「Community Place(商標)Browser」を用い
ることができる。
【0067】以下、コンテンツ作成用ツール50の特徴
的な機能を説明する。ユーザが、表示装置35の画面内
のウィンドウに表示されたPlayボタン(図5を参照して
後述する)をマウス38bで押下すると、ブラウザエミ
ュレータ541は、その時点までに作成されたコンテン
ツを実行し、表示する(動作確認機能)。この機能によ
り、作成したコンテンツを、一度保存してからブラウザ
57を起動して動作確認を行う手間が不要で、しかも、
ユーザは、コンテンツ作成作業中の任意のタイミング
で、それまでの作業により作成したコンテンツの動作を
確認することができる。
【0068】動作確認のために、ユーザがPlayボタンを
押下すると、Javaコンパイラ561がスクリプトのソー
スプログラム(例えば、拡張子として「.java」を有す
るファイル)を自動的にコンパイルし、オブジェクトプ
ログラムを作成するようになされている(MAKE機能)。
【0069】動作確認開始時のコンテンツの状態、およ
び、ユーザの視点をバックアップレストア部544が保
存し、ユーザが、表示装置35の画面内のウィンドウに
表示されたStopボタンをマウス38bで押下することに
より、ブラウザエミュレータ541がコンテンツの実行
を停止した際に、コンテンツを動作確認開始時の状態に
戻し、モデルの表示内容、および、ユーザの視点を、動
作確認開始時の状態に戻す(バックアップレストア機
能)。
【0070】ユーザは、テキストエディタ524を用い
て、Java言語等のスクリプト作成に適したプログラム言
語でスクリプトのソースプログラムを作成し、Javaコン
パイラ561を用いて作成したソースプログラムをコン
パイルし、オブジェクトプログラムを作成することがで
きる(スクリプトプログラムの作成)。このオブジェク
トプログラムは、ブラウザ57でコンテンツを動作させ
る場合の他、ブラウザエミュレータ541により動作確
認を行う場合にも実行される。さらに、ソースプログラ
ムにデバッグコードを追加し、Javaエミュレータ562
で実行すると、Javaデバッガ563がスクリプトの入出
力の値等を表示し、スクリプトのデバッグ作業が可能に
なる(デバッグ機能)。
【0071】ユーザが、スクリプトノードの入出力の値
を対話形式で設定すると、テンプレート作成ツール52
5は、この設定に適合したスクリプトのソースプログラ
ムのひな型(テンプレート)を作成する(テンプレート
自動作成機能)。ユーザは、テキストエディタ524を
用いてテンプレートに必要な変更を加えることにより、
所望のイベントを実現するスクリプトのソースプログラ
ムを作成することができる。この機能により、ユーザ
は、スクリプトのソースプログラムを全てエディタで作
成する手間を省くことができ、しかも、単純なコーディ
ングミスの発生を防ぐことができる。
【0072】図4は、コンテンツ作成用ツール50のユ
ーザインタフェース部51が表示装置35(図2)に表
示するメニュー画面を示す図である。この例において
は、全てのウィンドウが表示されている状態とされてい
るが、勿論、必要なウィンドウだけを表示するようにす
ることもできる。
【0073】コンダクタウィンドウ70は、コンテンツ
作成用ツール50の全体的な管理を行うウィンドウであ
り、新規作成、読み込み、保存、作成したコンテンツの
確認動作の実行、または確認動作の停止を行うことがで
きる。また、マウスモードの切り替え、モデルの追加、
またはモデルの削除等を行うこともできる。
【0074】3Dビュウウィンドウ71には、作成され
た図形データに対応する物体の3次元透視投影図(3D pe
rspective view) が表示される。この3Dビュウウィン
ドウ71により、モデルの動作モード(回転、移動、ま
たは視点移動)を変更し、あるいは、選択されたモデル
を回転あるいは移動させた画像を表示させることができ
るようになされている。
【0075】パラレルビュウウィンドウ72には、3D
ビュウウィンドウ71に表示されているモデルの、側面
図(SideView)、上面図(Top View)、あるいはワイヤ
フレームによる図(Wireframe)が、2次元表示される
ようになされている。
【0076】ルートウィンドウ73は、イベントのルー
ティングを編集するときに用いられる(図6を用いて後
述する)。
【0077】アトリビュートウィンドウ74は、ルーテ
ィングを行うノードの属性と、そのノード名(DEF名)
を設定するときに用いられる。なお、DEF名の設定は、
シーングラフウィンドウ76とルートウィンドウ73を
用いて設定することも可能とされている。この点につい
ては後述する。
【0078】リソースライブラリウィンドウ75では、
動画(Video)、図形の形状(Shape)、音声(Soun
d)、およびテクスチャ(Texture)の、4つのライブラ
リの管理を行うようになされている。
【0079】シーングラフウィンドウ76には、カレン
トスコープの各ノードが、階層的に配置されて表示され
るようになされている。
【0080】ワールドインフォメーションウィンドウ7
7は、バックグラウンド(Background)ノード、ワール
ドインフォメーション(WorldInfo)ノード、またはナ
ビゲーションインフォメーション(NavigationInfo)ノ
ードの、3つのノードの設定を行うとき用いられる。ワ
ールドインフォメーションウィンドウ77において、バ
ックグラウンドノードの設定では、背景のテクスチャと
背景色を設定することができ、ワールドインフォメーシ
ョンの設定では、VRMLファイルに、タイトル、作者名、
または作成日等を設定することができ、また、ナビゲー
ションモードの設定では、ナビゲーション時の動作を設
定することができる。
【0081】アピアランスウィンドウ78は、モデルの
色(Material)、または、モデルに貼付するテクスチャ
の設定を行うときに用いられる。
【0082】スクリプトエディタ79は、VRMLファイル
や、Javaファイルを編集するときに用いられ、また、Ja
vaプログラムをコンパイルすることもできるようになさ
れている。
【0083】図5は、図4のコンダクタウィンドウ70
の構成例を示す図である。ボタン(Fileボタン)701
−1は、例えば、記憶装置39にファイルとして記憶さ
れているコンテンツを読み込むとき操作される。ボタン
(Playボタン)701−2は、作成したコンテンツの確
認動作(シミュレーションモード)を実行するとき操作
される。ボタン(Saveボタン)701−3は、コンテン
ツを、例えば、記憶装置39に保存するとき操作され
る。ボタン701−4(Pauseボタン)は、実行されて
いる確認動作を一時的に停止させるとき操作される。ボ
タン(Animeボタン)701−5は、アニメーションを
作成するためのキーフレームエディタ(KeyFrame Edito
r)を起動するとき、または、起動されているキーフレ
ームエディタを終了するとき、操作される。ボタン(ス
トップボタン)701−6は、実行されている確認動作
を停止させるとき操作される。
【0084】ボタン702−1乃至702−4は、マウ
スモードを設定することができる。ボタン(Navigateボ
タン)702−1は、パラレルビュウウィンドウ72内
または3Dビュウウィンドウ71内の視点を移動するモ
ードに設定するとき操作される。ボタン(Rotateボタ
ン)702−2は、モデルを回転させるモードに設定す
るとき操作される。ボタン(Moveボタン)702−3
は、モデルを移動させるモードに設定するとき操作され
る。ボタン(Scaleボタン)702−4は、モデルのス
ケールを設定するとき操作される。
【0085】プリミティブバー703は、幾何(Geomet
ry)ノード、センサ(Sensor)ノード、コモン(Commo
n)ノード、バインダブル(Bindable)ノード、または
グループ(Group)ノードを選択して追加することがで
きるようになされている。
【0086】図6は、3Dビュウウィンドウ71、ルー
トウィンドウ73、およびシーングラフウィンドウ76
を並べて配置した場合の表示例を示している。この例に
おいては、シーングラフウィンドウ76には、カレント
スコープとして、モデル(Box)に、ユーザ(ビュー
ア)が近づいたときに、Boxが回転するというワールド
が表示されている状態とされている。このワールドに
は、主に、近接度のセンサノードであるProximitySenso
rノード(ProximitySensor_00:DEF名)、時刻に関する
センサノードであるTimeSensorノード(TimeSensor_0
0:DEF名)、および方向に対する内挿ノードであるOrie
ntationInterpolatorノード(OrientationInterp_00:D
EF名)が用いられており、ルートウィンドウ73では、
ProximitySensor_00ノードからTimeSensor_00ノード
へ、TimeSensorノードからOrientationInterpolatorノ
ードへ、また、OrientationInterpolatorノードからTra
nsformノードへ、それぞれルートが生成されている。な
お、このワールドは、特に階層構造を考慮して作成され
ていないので、いまの場合、TimeSensorノードとOrient
ationInterpolatorノードは、図示するように、シーン
グラフウィンドウ76に表示されているシーングラフの
最上位におかれている。
【0087】ここで、図7のフローチャートを参照し
て、このワールドを構成しているノードの中から、一部
のノードを用いて、プロトタイプ(PROTO)を作成する
処理を説明する。このPROTOを作成するには、定義に必
要なノードが、全て、同一のグループに含まれていなけ
ればならない。すなわち、シーングラフ上で、PROTOと
して定義しようとするグループのノードが全て同一の階
層に含まれていなければならない。いま、Boxをグルー
プ化しているTransform_00ノードに注目する。しかしな
がら、いまの場合、Transform_00以下の階層には、Time
SensorノードとOrientationInterpolatorノードが含ま
れていない。このため、このTransform_00ノード以下の
階層のノードをPROTOとして定義してしまうと、TimeSen
sorノードとOrientationInterpolatorノードが含まれな
いことになる。
【0088】そこで、ステップS11において、ユーザ
は、例えばマウス38bを用いて、シーングラフウィン
ドウ76に表示されているシーングラフ上で、PROTOの
作成に必要なノードを、図8に示すように、Transform_
00ノードの下位に含まれるように移動する。いまの場
合、TimeSensorノードとOrientationInterpolatorノー
ドをTransform_00ノードの下位の階層に含まれるように
移動する。なお、このように、シーングラフ上でノード
の移動を行っても、ノード間のルーティングの状態は変
化しない。
【0089】次に、ステップS12において、ユーザ
は、例えばマウス38bで、PROTOとして定義しようと
しているグループの階層の最上位のノードであるTransf
orm_00ノードを指定することにより、Transform_00ノー
ドが選択されている状態(反転表示されている状態)に
する(図8)。このとき、ルートウィンドウ73内の表
示は、図9(A)に示す状態から、図9(B)に示す状
態に変化する。すなわち、選択されているノードに依存
関係にあるノードが、フェードアウト表示される。いま
の場合、Transform_00ノードと依存関係にある、TimeSe
nsor_00、OrientationInterp_00、およびTransform_00
が、それぞれフェードアウト表示されている。これによ
り、ユーザは、Transform_00以下の階層のノードを用い
てPROTOを作成した場合、これらのルーティングが作成
されたPROTO内に移動するのが視覚的に判断することが
できる。
【0090】ステップS13において、ユーザは、シー
ングラフウィンドウ76を、例えば、マウス38bで右
クリックすることにより、図10に示すように、ポップ
アップメニューを表示させ、このポップアップメニュー
に表示されている各種の機能の中から、PROTOを作成す
ることを示す”Create PROTO”を選択する。これによ
り、選択されているTransform_00ノード以下のノードの
PROTOが作成されたことになる。そして、このPROTOの名
前を入力する状態となり、ユーザは、ステップS14に
おいて、作成されたPROTOの名前を入力する。いまの場
合、”MyRotatingBox”という名前を入力するものとす
る。
【0091】このようにして、PROTOとして新たに、MyR
otatingBoxノードが作成され、図11に示すように、シ
ーングラフウィンドウ76のシーングラフ上に、”MYRO
TATINGBOX”というDEF名が与えられたMyRotatingBoxノ
ードが表示されている。ところで、PROTOを作成する以
前においては、図9で示したように、ProximitySensor
ノードからTimeSensorノードへのルートが存在していた
が、TimeSensorは、作成されたMyRotatingBoxノードに
移動したので、ProximitySensorノードとMyRotatingBox
ノードの間をルーティングしなくてはならない。そこ
で、ステップS15で、編集ツール52は、新たに作成
されたPROTO(以下、MyRotatingBoxノードと記述する)
に、外部のノードからのイベントを受け取るためのフィ
ールドとしてのインタフェースを追加する。これによ
り、外部のノード(いまの場合、ProximitySensorノー
ド)から出力される所定のイベントを、このインタフェ
ースを介して、PROTO(MyRotatingBoxノード)に入力す
ることができるようになる。
【0092】そして、ステップS16において、編集ツ
ール52は、ProximitySensorノード(ProximitySensor
_00)からMyRotatingBoxノード(MYROTATINGBOX)をル
ーティングする。これにより、図11のルートウィンド
ウ73では、ProximitySensor_00のアイコンとMYROTATI
NGBOXのアイコンの間に、ルートを示す線が表示され
る。
【0093】このように、PROTOを作成した場合、そのP
ROTOにルーティングすべきノードが存在する場合、編集
ツール52は、作成されたPROTOに、外部のノードから
のイベントを受け取る(または、外部のノードへ出力す
る)ことができるようなインタフェースを追加するよう
になされている。
【0094】ここで、図11のシーングラフウィンドウ
76には、”MyRotatingBox”というタブが新たに設け
られており、ユーザが、このタブ”MyRotatingBox”を
選択すると、図12に示すように、MyRotatingBoxノー
ドの内容が表示されるようになされており、いまの場
合、図6のルートウィンドウ73内で、ProximitySenso
rにルーティングされていたTimeSensorが、MyRotatingB
oxノード内に移動していることが分かる。
【0095】また、このとき、図示するように、アトリ
ビュートウィンドウ74が表示され、PROTOとして作成
されたMyRotatingBoxノードの属性を変更することがで
きる。いまの場合、MyRotatingBoxノードのenabledとい
うフィールド(exposedfield)を設定することができる
ボックスが設けられており、このenableを介してイベン
トの入出力を行うことができるようになされている。
【0096】次に 作成されたPROTOであるMyRotatingB
oxノードを実際にインスタンス(実体)として作成する
処理を、図13のフローチャートを用いて説明する。ま
ず、ステップS21において、ユーザは、シーングラフ
ウィンドウ76のタブ(body)選択することにより、現
在のカレントスコープであるワールドのシーングラフを
表示させ、ステップS22において、ユーザは、Transf
ormノードを、シーングラフ上に新規に追加する。ステ
ップS23において、ユーザは、シーングラフウィンド
ウ76で、例えばマウス38bを右クリックすることに
より、図14に示すようにポップアップメニューを表示
させ、このポップアップメニューの中のPROTOのインス
タンスを追加することを示す選択肢”Add ProtoInstanc
e”にマウスポインタを移動させ、その右側に表示され
る選択肢”MyRotatingBox”を選択する。そして、ステ
ップS24で、編集ツール52は、MyRotatingBoxノー
ドのインスタンスを、MyRotatingBox_00ノードとして、
シーングラフウィンドウ76のシーングラフに追加す
る。また、図15に示すように、追加されたインスタン
スに対応するBoxが、3Dビュウウィンドウ71に表示
される。
【0097】ステップS25において、編集ツール52
は、追加されたインスタンスであるMyRotatingBox_00ノ
ードに、ProximitySensorからのイベントを受け取るた
めのインタフェースを追加し、ステップS26におい
て、図15に示すように、ルートウィンドウ73内で、
ProximitySensorから、MyRotatingBox_00ノードにルー
トを生成する。これにより、追加されたインスタンス
は、ProximitySensorが出力するイベントを受け、その
フィールド(enabled)がtureとなった場合に回転する
ようになる。
【0098】このように、作成したPROTOのインスタン
スを追加した場合においても、そのインスタンスにルー
ティングすべきノードが存在する場合、編集ツール52
は、自動的にインタフェースを追加し、ルーティングを
行うようになされている。
【0099】次に、シーングラフウィンドウ76の”My
RotatingBox”のタブを選択することにより表示されるM
yRotatingBoxノードのツリーの中のBoxノードを、例え
ばマウス38bで指定することにより、このBoxノード
を選択状態(反転表示状態)にすると、3Dビュウウィ
ンドウ71に表示されている2つのBoxも選択状態とな
る。そして、例えば、図16に示すように、アトリビュ
ートウィンドウ74において、Boxの属性のX軸方向の
サイズを示す”x”の値を、例えば、Y軸のサイズおよ
びZ軸のサイズの値の1/4である0.5に設定すると、
これに対応して、3Dビュウウィンドウ71に表示され
ている2つのBoxのX軸方向のサイズが、図示するよう
に、2つとも1/4になる。このように、PROTOのイン
スタンスにも、PROTOの属性の変更が反映されるように
なされている。
【0100】なお、以上の説明において、カレントスコ
ープとして表示されているワールドを構成しているノー
ドの一部を用いてPROTOを作成したが、全てのノード
(すなわち、ワールド全体)のPROTOを作成することも
できる。
【0101】また、上記各種の処理を行うコンピュータ
プログラムは、CD−R、CD−ROM、またはフロッ
ピーディスクなどの記録媒体を介してユーザに提供した
り、ネットワークなどの提供媒体を介してユーザに提供
し、必要に応じて内蔵するRAMやハードディスクなどに
記録して利用させるようにすることができる。
【0102】
【発明の効果】以上の如く、請求項1に記載の情報処理
装置、請求項4に記載の情報処理方法、および請求項5
に記載の提供媒体によれば、カレントスコープの一部の
ノードを用いてプロトタイプが定義された場合におい
て、カレントスコープの中に、プロトタイプにルーティ
ングすべきノードが存在するとき、プロトタイプに、イ
ベントを入力または出力するためのフィールドとしての
インタフェースを追加し、追加したインタフェースを介
して、ノードとプロトタイプの間をルーティングするよ
うにしたので、より容易に、プロトタイプの編集を行う
ことができる。
【図面の簡単な説明】
【図1】3次元仮想空間を表す情報を統一的に扱うネッ
トワークシステムの構成例を示す図である。
【図2】図1のクライアント端末5の構成例を示すブロ
ック図である。
【図3】図1および図2に示したクライアント端末5に
おいて動作するコンテンツ作成用ツール50の構成を例
示する図である。
【図4】図3に示したコンテンツ作成用ツール50が表
示装置35に表示するメニュー画面を示す中間調画像の
写真である。
【図5】図4のコンダクタウィンドウ70を表示装置3
5に表示した例を示す中間調画像の写真である。
【図6】3Dビュウウィンドウ71、ルートウィンドウ
73、およびシーングラフウィンドウ76を並べて表示
装置35に表示した例を示す中間調画像の写真である。
【図7】PROTOを作成する処理を説明するフローチャー
トである。
【図8】図6のシーングラフウィンドウ76を表示装置
35に表示した例を示す中間調画像の写真である。
【図9】図6のルートウィンドウ73を表示装置35に
表示した例を示す中間調画像の写真である。
【図10】図8のシーングラフウィンドウ76における
ポップアップメニューを表示装置35に表示した例を示
す中間調画像の写真である。
【図11】PROTOが作成された状態の3Dビュウウィン
ドウ71、ルートウィンドウ73、およびシーングラフ
ウィンドウ76を表示装置35に表示した例を示す中間
調画像の写真である。
【図12】図11のシーングラフウィンドウ76でタ
ブ”MyRotatingBox”を選択している状態を示す中間調
画像の写真である。
【図13】図7で作成されたPROTOのインスタンスを作
成する処理を説明するフローチャートである。
【図14】シーングラフウィンドウ76でポップアップ
メニューを表示装置35に表示した例を示す中間調画像
の写真である。
【図15】インスタンスが作成された状態の3Dビュウ
ウィンドウ71、ルートウィンドウ73、およびシーン
グラフウィンドウ76を表示装置35に表示した例を示
す中間調画像の写真である。
【図16】PROTOの属性を変更した様子を説明する中間
調画像の写真である。
【符号の説明】
1 企業内ネットワーク, 2 インターネット, 3
プロバイダ, 4 ISDN網, 5 クライアント端
末, 31 CPU, 32 ROM, 33 RAM,34
通信装置, 35 表示装置, 36 スピーカ, 3
7 インタフェース, 38 入力装置, 38a キ
ーボード, 38b マウス, 39 記憶装置, 5
1 ユーザインタフェース部, 52 編集ツール,
53 シーングラフデータベース, 54 作業ツー
ル, 56 スクリプト作成部, 57 ブラウザ,
521 モデル編集ツール, 522 ルーティング編
集ツール, 523 シーングラフ編集ツール, 52
4 テキストエディタ, 525 テンプレート作成ツ
ール, 526 キーフレーム編集ツール

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 所定のワールドを構成しているノード
    を、カレントスコープとして階層表示し、階層表示され
    ている前記カレントスコープの、一部のノードまたは全
    てのノードを用いて、新たなノードをプロトタイプとし
    て定義する情報処理装置において、 前記カレントスコープの一部のノードを用いて前記プロ
    トタイプが定義された場合において、前記カレントスコ
    ープの中に、前記プロトタイプにルーティングすべきノ
    ードが存在するとき、前記プロトタイプに、イベントを
    入力または出力するためのフィールドとしてのインタフ
    ェースを追加する追加手段と、 前記追加手段により追加された前記インタフェースを介
    して、前記ノードと前記プロトタイプの間をルーティン
    グするルーティング手段とを備えることを特徴とする情
    報処理装置。
  2. 【請求項2】 前記プロトタイプの実体であるインスタ
    ンスを作成する作成手段と、 前記カレントスコープの中に、前記作成手段により作成
    された前記インスタンスにルーティングすべきノードが
    存在する場合において、前記インスタンスにインタフェ
    ースを追加する第2の追加手段と、 前記第2の追加手段により追加された前記インタフェー
    スを介して、前記ノードと前記インスタンスの間をルー
    ティングする第2のルーティング手段とをさらに備える
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 【請求項3】 前記インスタンスは、前記プロトタイプ
    の属性が変更された場合において、その変更が、前記イ
    ンスタンスの属性にも反映されるようになされているこ
    とを特徴とする請求項2に記載の情報処理装置。
  4. 【請求項4】 所定のワールドを構成しているノード
    を、カレントスコープとして階層表示し、階層表示され
    ている前記カレントスコープの、一部のノードまたは全
    てのノードを用いて、新たなノードをプロトタイプとし
    て定義する情報処理方法において、 前記カレントスコープの一部のノードを用いて前記プロ
    トタイプが定義された場合において、前記カレントスコ
    ープの中に、前記プロトタイプにルーティングすべきノ
    ードが存在するとき、前記プロトタイプに、イベントを
    入力または出力するためのフィールドとしてのインタフ
    ェースを追加する追加ステップと、 前記追加ステップで追加された前記インタフェースを介
    して、前記ノードと前記プロトタイプの間をルーティン
    グするルーティングステップとを備えることを特徴とす
    る情報処理方法。
  5. 【請求項5】 所定のワールドを構成しているノード
    を、カレントスコープとして階層表示し、階層表示され
    ている前記カレントスコープの、一部のノードまたは全
    てのノードを用いて、新たなノードをプロトタイプとし
    て定義する情報処理装置で読みとり、かつ、実行可能な
    コンピュータプログラムを提供する提供媒体において、 前記カレントスコープの一部のノードを用いて前記プロ
    トタイプが定義された場合において、前記カレントスコ
    ープの中に、前記プロトタイプにルーティングすべきノ
    ードが存在するとき、前記プロトタイプに、イベントを
    入力または出力するためのフィールドとしてのインタフ
    ェースを追加する追加ステップと、 前記追加ステップで追加された前記インタフェースを介
    して、前記ノードと前記プロトタイプの間をルーティン
    グするルーティングステップとを有するコンピュータプ
    ログラムを提供することを特徴とする提供媒体。
JP9352232A 1997-12-05 1997-12-05 情報処理装置および方法、並びに提供媒体 Abandoned JPH11175757A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9352232A JPH11175757A (ja) 1997-12-05 1997-12-05 情報処理装置および方法、並びに提供媒体
US09/205,936 US6483508B1 (en) 1997-12-05 1998-12-04 Information processing apparatus and method, and providing medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9352232A JPH11175757A (ja) 1997-12-05 1997-12-05 情報処理装置および方法、並びに提供媒体

Publications (1)

Publication Number Publication Date
JPH11175757A true JPH11175757A (ja) 1999-07-02

Family

ID=18422670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9352232A Abandoned JPH11175757A (ja) 1997-12-05 1997-12-05 情報処理装置および方法、並びに提供媒体

Country Status (2)

Country Link
US (1) US6483508B1 (ja)
JP (1) JPH11175757A (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100694238B1 (ko) * 2000-09-28 2007-03-14 가부시키가이샤 리코 구조편집방법, 영상구조편집방법, 오브젝트의 내용구조관리방법, 오브젝트의 내용구조표시방법, 컨텐츠관리방법 및 기록매체
JP4719987B2 (ja) * 2001-02-09 2011-07-06 ソニー株式会社 画面表示制御方法、プログラムおよび画面表示制御装置
GB2374776A (en) * 2001-04-19 2002-10-23 Discreet Logic Inc 3D Text objects
US7345777B2 (en) * 2001-09-17 2008-03-18 Hewlett-Packard Development Company, L.P. Recalling cancelled print jobs
US8751950B2 (en) 2004-08-17 2014-06-10 Ice Edge Business Solutions Ltd. Capturing a user's intent in design software
KR100601677B1 (ko) * 2004-05-17 2006-07-14 삼성전자주식회사 저장 매체에 기록된 데이터와 다운로드된 데이터를 함께재생하는 재생 방법 및 그 재생 장치
WO2009111885A1 (en) 2008-03-11 2009-09-17 Dirtt Environmental Solutions, Ltd. Automatically creating and modifying furniture layouts in design software
US7840899B2 (en) * 2006-06-02 2010-11-23 Microsoft Corporation Strategies for navigating through a list
US20080303819A1 (en) * 2007-06-08 2008-12-11 Pierre-Olivier Latour Method and apparatus for comparing program graphs
US8612485B2 (en) * 2008-08-11 2013-12-17 Sony Corporation Deferred 3-D scenegraph processing
US9245064B2 (en) * 2009-11-24 2016-01-26 Ice Edge Business Solutions Securely sharing design renderings over a network
US20120167015A1 (en) * 2010-12-22 2012-06-28 Sap Ag Providing visualization of system landscapes
WO2012173741A2 (en) 2011-06-11 2012-12-20 Dirtt Environmental Solutions Inc. Automated re-use of structural components
US9827714B1 (en) 2014-05-16 2017-11-28 Google Llc Method and system for 3-D printing of 3-D object models in interactive content items
US11119792B2 (en) * 2016-12-27 2021-09-14 Facebook, Inc. Systems and methods for generating user interface prototypes based on production system components

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105036A (en) * 1997-08-27 2000-08-15 International Business Machines Corporation Computer system and method of displaying a source code file with an ordered arrangement of object definitions
GB9721664D0 (en) * 1997-10-14 1997-12-10 Philips Electronics Nv Data management within a virtual environment browser
JPH11175761A (ja) 1997-12-05 1999-07-02 Sony Corp 情報処理装置および方法、並びに提供媒体

Also Published As

Publication number Publication date
US6483508B1 (en) 2002-11-19

Similar Documents

Publication Publication Date Title
US6493001B1 (en) Method, apparatus and medium for describing a virtual shared space using virtual reality modeling language
US6262734B1 (en) Graphic data generating apparatus, graphic data generation method, and medium of the same
US6466239B2 (en) Method and apparatus for editing data used in creating a three-dimensional virtual reality environment
US6552721B1 (en) Graphic data generating apparatus, graphic data generation method, and medium of the same
US6518989B1 (en) Graphic data generating apparatus, graphic data generation method, and medium of the same
KR101130494B1 (ko) 블렌딩된 객체 특성 키 프레이밍 방법
US6636211B2 (en) CAD/CAM feature tree with manipulatable 3D miniatures
US6401237B1 (en) Method and apparatus for editing data used in creating a three-dimensional virtual reality environment
JPH11175757A (ja) 情報処理装置および方法、並びに提供媒体
JPH11232487A (ja) 情報処理装置および方法、並びに提供媒体
JP2008541286A (ja) 3次元形状に関係づけられたパラメトリックモデルを生成する方法および装置
US6281900B1 (en) Information processing apparatus and method, and providing medium
Montero et al. IdealXML: An Interaction Design Tool: A Task-based Approach to User Interface Design
US6377255B1 (en) Pattern data generator, pattern data generating method and its medium
Molina Massó et al. Towards virtualization of user interfaces based on UsiXML
Huang et al. Environmental simulation within a virtual environment
JPH11175754A (ja) 情報処理装置および方法、並びに提供媒体
EP0895196A1 (en) Pattern data generator, pattern data generating method, and its medium
Hren Web-based environment for mechanism simulation integrated with CAD system
Hananto et al. Visual Adjustment Tools Selection for Multi-format Distributed World Framework
Pomaska Implementation of Web 3D tools for creating interactive walkthrough environments from building documentations
CN115686529A (zh) 代码生成方法和装置、电子设备和可读存储介质
KR20030066863A (ko) Vrml 편집 시스템 및 방법
Pascual Molina Masso et al. " Towards Virtualization of User Interfaces based on UsiXML
Choi et al. A Design and Implementation of Immersive Virtual Space Authoring System

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061023

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20061113