JP3059138B2 - 3次元仮想現実環境作成、編集及び配布システム - Google Patents

3次元仮想現実環境作成、編集及び配布システム

Info

Publication number
JP3059138B2
JP3059138B2 JP10211194A JP21119498A JP3059138B2 JP 3059138 B2 JP3059138 B2 JP 3059138B2 JP 10211194 A JP10211194 A JP 10211194A JP 21119498 A JP21119498 A JP 21119498A JP 3059138 B2 JP3059138 B2 JP 3059138B2
Authority
JP
Japan
Prior art keywords
database
file
virtual reality
environment
reality environment
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.)
Expired - Fee Related
Application number
JP10211194A
Other languages
English (en)
Other versions
JP2000057373A (ja
Inventor
ジョン・バラス
ステファン・マッケオン
イレーネ・ビー・スターンズ
Original Assignee
ミツビシ・エレクトリック・インフォメイション・テクノロジー・センター・アメリカ・インコーポレイテッド
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 ミツビシ・エレクトリック・インフォメイション・テクノロジー・センター・アメリカ・インコーポレイテッド filed Critical ミツビシ・エレクトリック・インフォメイション・テクノロジー・センター・アメリカ・インコーポレイテッド
Priority to JP10211194A priority Critical patent/JP3059138B2/ja
Publication of JP2000057373A publication Critical patent/JP2000057373A/ja
Application granted granted Critical
Publication of JP3059138B2 publication Critical patent/JP3059138B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、仮想現実(バー
チャル・リアリティ)など高度なグラフィック環境を提
供する分野、特に、通信網を使用してリアルタイムで3
次元仮想現実環境を作成、編集および配布するシステ
ム、情報の配布方法、仮想現実環境、仮想環境の更新方
法、並びに仮想現実環境の実行方法に関する。
【0002】
【従来の技術】3次元仮想現実環境の作成・編集・配布
分野では、ファイルに格納されているこれらの環境の保
存について改善の必要性のあることがやがて了解される
であろう。仮想現実環境の一部に手を加える場合や異な
るバージョンで仮想現実環境を伝送する場合、つまり、
その環境を編集したり伝送したりする場合、通常、大型
ファイルを格納、伝送およびダウンロードする必要があ
る。
【0003】3次元仮想現実環境ファイルをインターネ
ットを通じてリアルタイムで編集、作成および配布しよ
うとすると、そこにさまざまな問題が発生する。問題の
範囲としては、永続性(persistence)、スケーラビリテ
ィ(scalability)、セキュリティ、多重編集機能、多解
像度などの問題や、多重フォーマット要件およびバージ
ョン制御が含まれる。
【0004】まず、永続性について説明する。永続性
は、3次元仮想環境で変更が行われた場合に、その変更
を記録しておく機能のことをいう。確かに、変更はファ
イル全体を書き直せば保存できる。そのため、ほとんど
のシステムでは、オーサリング・ツール(authoring to
ol)で、ブラウザのみ恒久的な変更を行うことは許され
ない。たとえば、VRMLファイルについて言うと、フ
ァイル全体をロードおよび保存しなくてもその一部だけ
を変更できることが一般には望ましい。VRMLとはバ
ーチャル・リアリティ・モデリング・ランゲージ(Virt
ual Reality Modeling Language)のことで、3次元仮想
現実環境のコンテンツを記録するためのファイル形式で
あることが了解されるであろう。ファイルの中の1つの
項目を変更するために、ファイル全体を読み出してから
それを保存する必要がある。一般にVRMLファイルの
容量は10メガバイトにもなることがあるため、変更量
が少ない場合でも実行が厄介になる。
【0005】次に、3次元仮想環境の規模の拡張にかか
わるスケーラビリティについて説明する。先行技術のフ
ァイル・システムにこの種の機能を期待するのはひたす
ら困難である。それは、情報のほとんどが1つまたはせ
いぜい数個のファイルに格納されるためである。仮想現
実環境を拡張するためには、その数個のファイルを際限
なく多数の部分に分割する必要があり、仮想現実環境用
ファイルの操作方法として、やはり手間ひまがかかる。
さらに、VRML機能を使用して大型ファイルを細分化
しても、ファイルシステムにおいて非常にたくさんの細
かいファイルを処理しなければならないという新たな問
題が生じ、エラーやデータ損失の発生する機会が増え
る。
【0006】セキュリティについて説明する。1つのフ
ァイルにセキュリティ・コードを付けた場合、そのファ
イルを編集しようとするユーザはファイル全体へのアク
セス権をもつことが了解されるであろう。ゆえに、現
在、ファイルの編集を要する限られた部分のみのアクセ
ス権を付与し、同時にその他の部分をロックすることは
できない。
【0007】さらに、アクセス権を与える部分とそうで
ない部分とにファイルを分け、各ユーザの編集個所を限
定することは非常にむずかしい。
【0008】
【発明が解決しようとする課題】その結果、複数のユー
ザが仮想現実環境の各部分を並行して編集できる多重編
集機能をもたせることは1つのファイルで仮想環境を提
供する現状ではできない。また、1つのファイル・シス
テムでは3次元仮想現実環境を多様な解像度で提供する
ことができない。多解像度の便利な点は、受信するマシ
ンの解像度に出力ファイルの解像度を合わせることがで
きる点である。たとえば、あるハイエンド・マシンには
他のマシンにはないグラフィック・オブジェクトを細か
いテクスチャで表示できる機能がある。また、ポリゴン
のような3次元画像の描画の主要な要素を描く能力はマ
シンにより異なる。現在のところ、ある特定の解像度が
要求されると、それに応じてファイル全体を変更しなけ
ればならないため、単一のコンテンツの入った一つのフ
ァイルを多様な解像度で提供する方法は存在しない。ま
た、1つのファイルで3次元仮想環境を記録する場合、
複数のプラットフォームで同じコンテンツを表示する機
能、たとえばプラットフォーム間での互換機能がない。
仮想現実環境を単一ファイルに記録する方法では、同じ
コンテンツを異なるフォーマットで提供する多重フォー
マットを使用できない。
【0009】最後に、仮想現実環境の格納に単一ファイ
ルを使用する場合、元のファイル全体を複製しなくては
バージョン修正ができない。よって、たとえば10メガ
バイトのファイルについて数バイトの変更をする場合、
バージョンを変更するために10メガバイトのファイル
が2つできてしまう。
【0010】まとめとして、3次元仮想環境の作成、編
集および配布に関する上記の問題は、複数のプラットフ
ォームで複数のオーサ(author)が作業することのできな
い現行システムでは解決できない。ゆえに、機能の異な
る多様なハードウェアマシンにコンテンツを配布するシ
ステムを必要とする。さらに、必ず指定されたユーザだ
けにコンテンツへのアクセス権が与えられるようにする
一方で、仮想環境の無限の成長を妨げないようにするこ
とが重要である。
【0011】最後に、どうしたら3次元環境をオーサが
その環境のオブジェクトの制御権を得たり放棄したりで
きる間、永続的かつ編集可能にすることが思いのままに
できるかは、仮想環境を単一ファイルに格納する現状を
考えると、面倒な問題である。
【0012】この発明は上述した点に鑑みてなされたも
ので、複数のユーザが共通の3次元環境の個々の部分を
並行して作業でき、各人に3次元環境の異なる部分への
アクセス権を選択して与えることを可能にする3次元仮
想現実環境作成、編集および配布システムを得ることを
目的とする。
【0013】
【課題を解決するための手段】この発明に係る3次元仮
想現実環境作成、編集および配布システムは、データベ
ースと、仮想現実環境を作成する手段と、上記作成され
た仮想現実環境を上記データベースに格納する手段と、
上記データベースにアクセスし、アクセスされたデータ
を配布する手段とを備え、上記データベースはレコード
を含み、上記仮想現実環境は異なるパーツに分割され、
パーツ毎に個々のレコードに分けて格納され、それによ
り上記仮想現実環境は他の部分に影響を与えることなく
作成、編集または配布できるものとすると共に、上記パ
ーツをローカルとし、さらに、上記データベースに上記
仮想現実環境の各種バージョンが格納されるものとし、
ネットワークと、上記ネットワークに接続され、予め決
められた構成をもつ配布先マシンとをさらに備え、上記
データベースにアクセスし、アクセスされたデータを配
布する手段は、上記予め決められた構成に互換性のある
上記データベースに格納された上記仮想現実環境の特定
のバージョンだけを上記配布先マシンに伝送するもので
ある。
【0014】また、上記データベースをリレーショナル
・データベースとするものである。
【0015】
【0016】
【0017】また、上記データベースの予め決めたられ
た部分だけにアクセスを許可する手段をさらに含むもの
である。
【0018】
【0019】
【0020】
【0021】
【0022】
【0023】
【0024】
【0025】
【0026】
【0027】
【0028】
【0029】
【0030】
【0031】
【0032】
【0033】
【0034】
【0035】
【0036】
【0037】
【0038】
【0039】
【0040】
【0041】
【0042】
【0043】
【0044】
【0045】
【0046】
【0047】
【発明の実施の形態】この発明に係る仮想環境の作成・
編集・配布システムは、仮想現実環境またはシーンをフ
ァイル形式ではなく、別々のレコードに分割してデータ
ベース形式で格納するシステムである。これにより、複
数のオーサが共通の3次元環境の個々の部分を並行して
作業できるほか、各人に3次元環境の異なる部分へのア
クセス権を選択して与えることが可能となり、バージョ
ン制御が実現し、永続性などの変更を保存する機能が実
現し、スケーラビリティ、セキュリティおよびフォーマ
ット制御機能が実現し、すべて他の部分に影響を与えず
仮想現実環境のさまざまな部分について作業ができる独
立性がもたらされる。また、データベースを使用するこ
とにより、インデックスにより環境のさまざまな部分に
速やかにアクセスできるようになる。
【0048】たとえば、データベースで個々のレコード
またはオブジェクトを他のレコードを変更せずに更新で
きる点は、先行技術のシステムよりも有利である。ここ
では、仮想環境をファイルとして格納し、たとえば、2
人以上の異なるクリエータが、少し前に加えられた変更
に影響を与えたり、それらを書き換えたりせずに、同時
にいろいろなレコードを変更し、対象レコードだけを更
新できる。これにより、必要なネットワーク通信量をか
なり減らすことができる。
【0049】データベースを使用することにより、他の
レコードに関係なく、データベースの必要な部分を照
合、変更および出力できるため、永続性、スケーラビリ
ティ、多重編集機能、多解像度、多重フォーマットおよ
びバージョン制御の問題を解決できる。
【0050】永続性を保つには、揮発性RAM記憶装置
を除き、高密度ディスク記憶装置などの非揮発性の永久
記憶装置を必要とし、それらがいずれも高速かつ非揮発
性であることが注目されるであろう。
【0051】きめ細かい方法でアクセスおよびロッキン
グ制御を行い複数のユーザによる使用を促進することが
できる点も重要である。しかし、1度にロッキングでき
る部分が大きすぎる場合、たとえばパーティションの細
かさが不十分な場合などは、一人のオーサが3次元環境
の細かい部分の編集をするときも、広い部分をロックア
ップした状態でしか目的の編集ができない。
【0052】データベースに3次元環境を格納すること
により、ハードディスクでのファイルと等価な永続性を
得られる。実際、データベースの使用により、3次元環
境の必要な部分にだけアクセスすることができ、そうす
ることで、ファイル全体を使用しダウンロードする場合
より格段に早く編集できる。また、データベースでは、
複数のオーサの同時アクセスおよび行またはオブジェク
トのロッキング作業も可能である。
【0053】上記のことを達成するために、データベー
スにパーティションを作り、3次元環境全体を関連付け
された扱いやすい分量の大きさに細分化する。一つの実
施例で、フレキシビリティとスケーラビリティにも優れ
ているという理由から「ローカル」方式を選択すると便
利である。
【0054】したがって、この発明である仮想環境作成
・編集・配布システムは、仮想現実環境情報をデータベ
ースに格納し、各部分を他の部分に影響を与えずに作
成、編集または配布できるようにする。データベースに
は、たとえばワイド・エリア・ネットワークなどの通信
網を使ってアクセスし、各データベースのレコードをデ
ータベース内の他のレコードに影響を与えることなく個
別に更新できる。このように、仮想環境ファイルを変更
するために、ファイル全体を読み出したり格納したりす
る必要がない。さらに、配布先マシンの特性によりデー
タベースの読出しバージョンが口述されるため、配布先
マシンと互換性のあるバージョンを提供できる。さら
に、テクスチャなど仮想現実環境の特定の態様をいろい
ろな形で格納し、配布先マシンのそれぞれの特性に適応
できる。たとえば、ある仮想現実環境の地形テクスチャ
を、大容量のテクスチャ・メモリを備えた配布先マシン
用として「高解像度、24ビットフォーマット」、小容
量のテクスチャ・メモリの配布先マシン用として「低解
像度、低ビット・デプス(depth)フォーマット」、さら
にテクスチャ・メモリを備えていない配布先マシン用と
して非テクスチャフォーマットで、それぞれ格納でき
る。
【0055】(詳細な説明)全体として、仮想現実環境
が使用される機会はますます増えている。仮想現実環境
を応用したものとしてはコンピュータ・ゲームがある。
しかし、他にも多くの分野で実用化が模索されている。
たとえば、仮想現実環境は、医療分野など特定の分野で
手術の訓練環境など専門家の育成を可能にするために作
成できる。また、通信網で複数の人がその環境にアクセ
スすることを可能にしてそれらの人の協働や対話を可能
にする仮想現実環境が作成されつつある。
【0056】仮想現実環境はそれを実行する所定の配布
先コンピュータ・システムでそのグラフィック機能やサ
ウンド機能などいろいろな資源を利用する。
【0057】コンピュータの機能は千差万別である。た
とえば、あるハイエンド・コンピュータ・システムは非
常に詳細なテクスチャのグラフィックを表示できる。ま
た、ハイエンド・グラフィック表示ワークステーション
は、64メガバイトのテクスチャ用メモリを備え、その
メモリを使用して、表示する仮想現実環境の現実感をか
なり高めることができる。テクスチャを格納するメモリ
をもたない配布先マシンもある。ある配布先コンピュー
タ・システムには3次元グラフィックス表示機能がある
が、他の配布先コンピュータ・システムには2次元グラ
フィックス表示機能しかないということもある。あるハ
イエンド・コンピュータ・システムは非常に高忠実度の
サウンドを出すことができるのに対し、他のローエンド
機器は比較的低忠実度のサウンドしか出せない。さら
に、ネットワーク化された環境では、コンピュータ・シ
ステムによりネットワーク通信速度が異なる。仮想現実
環境は、たとえば複数の人がネットワーク化されたゲー
ムを行ったり、実際に仮想現実環境をリモート・コンピ
ュータに格納し、ネットワークを通じて配布先コンピュ
ータにそれを伝送したりする場合でも、配布先マシンの
ネットワーク通信機能に左右される。
【0058】仮想現実環境のコンテンツを各種の配布先
コンピュータに分散する従来技術の方法では、それぞれ
の配布先マシンに送られる内容を、ハイエンド・ワーク
ステーション用は第一ファイル、ミドルレンジ・ワーク
ステーション用は第二ファイル、パーソナル・コンピュ
ータ用は第三ファイル、ネットワーク・コンピュータ用
は第四ファイル、そしてセットトップボックス(SET TOP
BOX)用は第五ファイルにというように、それぞれ別々
のファイルに分散させる。
【0059】従来技術によるこれら各配布先コンピュー
タ用のコンテンツの開発手順は、それぞれの配布先コン
ピュータに合わせてコンテンツを個々に開発し、それら
を別々の大型ファイルに格納するというものである。仮
想環境の一部にだけアクセスすればよい場合も、配布先
コンピュータはやはりファイル全体をダウンロードしな
ければならない。よって、3次元仮想環境を読み出し、
それらを1つのファイルに格納する方法以外の方法で格
納し、必要な部分だけをダウンロードすれば済むように
する必要がある。また、各種マシンまたはプラットフォ
ームに配布される仮想環境は同様の内部構造をもち、す
べてのマシンでそれらを維持する必要がある。複数のフ
ァイルが同一の内部構造を保つように保守することは困
難であり、時間がかかる。
【0060】また、コンテンツの一部を変更する場合、
少なくともさらに2つの問題が生じる。第一に、ハイエ
ンド・ワークステーションのコンテンツを変更しても、
セットトップボックスなどのローエンド・ワークステー
ションのコンテンツにそれが反映されないことである。
変更は、ファイルごとに別々に行う必要がある。第二
に、コンテンツをほんの少し変更するだけでも、全体の
コンテンツを再びファイルに保存する必要があることで
ある。仮想現実環境は大型ファイルとなる可能性があ
り、事実、常にそうである。ファイルを保存する単純な
行為に手間取る可能性があり、それだけで仮想現実環境
を変更の妨げとなる。
【0061】了解されるように、仮想現実環境のほんの
一部分を変更するために、少なくともファイル全体を保
存しなおして変更を完了する必要があるため、一般に、
ファイル全体にアクセスする必要がある。このことが面
倒な操作であるという状況は容易に想像がつく。たとえ
ば、ミシガン州デトロイトにいるクライアントのネット
ワークで仮想現実環境の変更を要求する例を挙げる。ク
リエータがミシガン州のネットワークで作成した仮想現
実環境のインストールに成功した後、カリフォルニア州
の自宅からその編集をしている時に、仮想現実環境のあ
る部分を変更したいという要求を上記のクライアントか
ら受けた。クリエータは、ローカル・コンピュータ・シ
ステムに仮想現実ファイルのコピーをもっていても、要
求された変更をした後、ファイル全体をそのクライアン
トのネットワークに転送する必要がある。普通、仮想現
実環境ファイルのサイズが大きい場合、クライアントの
ネットワークにそのファイルを転送するために要する時
間は法外とは言わないまでも、非常に長くなる可能性が
ある。したがって、3次元仮想現実ファイルの限られた
部分だけを編集できるシステムが必要である。
【0062】さらにまた、仮想現実環境を作成する際、
クリエータは一般に開発用マシンで環境を開発する。開
発用マシンは、一般に比較的ハイエンドである。よっ
て、開発する環境は、ハイエンド・マシンの機能を用い
て表示し、往々にしてローエンドの配布先マシンで個々
に試験する必要がある。この過程は、開発、試験、再開
発の反復となる可能性がある。必要なのは、同じコンテ
ンツを機能の異なるマシン上で設計できるよう、多様な
バージョンでコンテンツを作成できるシステムである。
【0063】したがって、必要とされるのは、上記の課
題を克服する仮想現実環境開発および実行環境というこ
とになる。
【0064】より詳細には、解決を必要とする問題と
は、各種プラットフォームで複数のオーサが共に3次元
環境を設計する方法である。また、機能的に異なる種々
のハードウェアにコンテンツを配布できなければならな
い。必ず指定したユーザにだけコンテンツへのアクセス
権が付与され、指定したオーサにだけ3三次元環境の修
正が許可されるようにすることも重要である。さらに、
たとえば毎秒描画できるポリゴンの数についてハードウ
ェア上の制限がある場合でも、どのようにして無限に仮
想環境を拡張していくことができるかが重要である。ま
た、3次元環境にある期間にわたり永続性をもたせ、修
正可能とし、オーサが環境内のオブジェクトに自由に制
御できるようにする必要もある。
【0065】したがって、3次元環境を速やかに変更、
作成、管理および配布する機能に問題があるために、イ
ンターネット上のリアルタイム系3次元仮想環境に永続
性、スケーラビリティ、セキュリティ、多重編集機能、
機能の異なるプラットフォーム間の互換性をもたらす多
重フォーマット、多解像度およびバージョン制御機能を
実現することが重要である。
【0066】次に、図1(A)と(B)を参照すると、
それから分かるように、端末装置10は仮想現実シーン
12をディスプレイ14に表示している。一般に、点線
で囲まれた枠18の領域内のグラフィカル・オブジェク
ト16を編集対象として仮想現実シーンを編集するのが
望ましい。仮想現実シーンのそのような部分を編集する
ことが望ましい場合、以下で説明するように、リレーシ
ョナル・データベースの中の当該グラフィカル・オブジ
ェクトの位置する特定のローカルが格納されている部分
にアクセスし、そのグラフィカル・オブジェクト16を
変更できる。この例の場合、自転車がなくなり、グラフ
ィカル・オブジェクト16’のように立っている人物が
描かれる。
【0067】次に、図2を参照して説明する。3次元環
境編集機能を実現するために、最初に、テクスチャとサ
ウンド22、プリミティブ24、パーツの集合および階
層を含む構成要素26、さらに一般的には仮想現実画面
をいろいろなまとまりや領域に分けるローカル28など
の入力データを使用して枠20に示すように3次元環境
を作成する。
【0068】作成した3次元仮想環境は、細分化された
データベース30にダウンロードしてそこに格納し、3
次元仮想現実環境を含む単一ファイル全体の読出しおよ
び(または)格納を行わなくても3次元環境のいろいろ
な部分を編集、変更または削除することができる。
【0069】これにより、複数のオーサ32が仮想現実
環境のいろいろな部分に手を加えることが可能になる。
さらに、34に示すように、仮想現実環境の各部分への
アクセスを制限できる。また、特定の仮想環境のバージ
ョンは36で制御するが、どのバージョンかはクライア
ント・サーバ・システムのクライアントの示すハードウ
ェア要件38によりいくぶん異なる。
【0070】永続性は、42に示すように、他に影響を
与えることなく仮想環境の各部分を変更する機能により
保証されるのに対し、スケーラビリティは、44に示す
ように、細分化データベースを編集することで実現す
る。
【0071】最後に、フォーマット46を指定して、細
分化データベースの出力が特定の関連ハードウェアの出
力をフォーマットまたは調整し、種々のフォーマット変
換を行ったり、50に示すように、単一のプリミティブ
を編集したりすることができる。
【0072】「細分化」という語は仮想環境を個々の部
分に分割し、各部分を別々に作業できることをさしてい
ることが了解されるであろう。
【0073】次に、図3について説明のための実施例を
用いて説明する。仮想現実シーンに、たとえばテーブル
300、カップ302、皿304および別の皿306を
描くとする。図から分かるように、これらの要素は原点
(0,0,0)を基準に仮想現実シーンに位置してい
る。仮想現実シーン全体を300から306までの項目
に分け、単一のファイルに格納した場合は常にファイル
全体をダウンロードする必要がある。しかし、仮想現実
シーンを各ローカルに分割し、ここでは参照数字310
のついているローカルAにカップ302、皿304およ
びテーブル300を含め、それと別に、ここでは参照数
字312のついたローカルBにリレーショナル・データ
ベースの表320で示したように皿306を含めること
により、当該ローカルを指定して皿306を取り出し、
仮想現実シーンの他のすべてのグラフィカル・オブジェ
クトとは別にそれを編集できる。ファイル400から分
かるように、ローカルAはテーブルや皿などを含むのに
対し、ローカルBは(10,10,0)の位置の皿を含
む。したがって、特定の細分化されたリレーショナル・
データベースを使用することにより、仮想現実シーンの
どのような小さい部分も編集できることがわかる。
【0074】次に、図4を参照すると、データベースに
アクセスする手段となるVRMLファイルにより、デー
タベースの個々の部分を変更して仮想現実環境の対応す
る部分を変更できることが明らかである。
【0075】より詳細に、次に、図5(A)を参照する
と、画像500は、仮想環境502に描かれたシーンで
ある。この仮想環境は、家504、ビル506と50
8、道路510、風景512および草514、516、
518、520を含む。広告掲示板522は、仮想環境
で3次元レンダリング・モードのハードウェアが描画す
る必要のあるポリゴンの数を増やすことなく環境の現実
感を高めるために仮想環境でよく使用される「テクスチ
ャ・マップ」という画像を表示する。また、存在し、音
は聞こえるが、画面に表示されないものとしては、鳥の
さえずりとビル、家および広告掲示板を吹き抜ける風の
音がある。
【0076】図5(A)に示された家504などの各モ
デルは、ポリゴンの一覧表を使用して作成する。各ポリ
ゴンは面または頂点ごとに固有の色が割り当てられてい
る。また、ポリゴンごとに関連付けられた「テクスチャ
・マップ」があり、同一色で塗りつぶしたり、隣接する
ポリゴン間で滑らかに明るさが変化するように処理した
ポリゴンではなく、細かい柄や模様の画像をポリゴンに
貼り付けたように画像を表示できる。
【0077】テクスチャ・マップは、3次元仮想環境に
なくてはならないものである。なぜなら、3次元グラフ
ィックス作成用の各ハードウェアは、画面にポリゴンを
描画する機能が限られているからである。一軒の家を非
常に詳しく現実感を出して描くために何百万個というポ
リゴンを必要とする場合、テクスチャを使用してその家
の側面全体を、その細部を再現したような画像の写った
一枚の方形のポリゴンに置き換えることができる。つま
り、毎秒10,000個のポリゴンしか描けない3次元
グラフィックス作成ハードウェアでも10または15フ
レーム/秒というかなりの速度で各フレームに数軒の家
を描画できるうえ、描画されたこれらの家は家として認
識できる。
【0078】3次元グラフィックスを表示するにあた
り、すべての3次元グラフィック作成用ハードウェアが
テクスチャ・マップを使用できるわけではないが、テク
スチャ・マップを使用して画面をより詳細に描写するこ
とが重要視されるために、そのような状況はますます稀
有になりつつある。
【0079】ただし、今日、ほとんどの3次元グラフィ
ックス表示用ハードウェアがテクスチャ・マップをサポ
ートしているとはいえ、それらのハードウェアがすべて
同じようにテクスチャを処理するわけではない。あるハ
ードウェアは、ガラスやプラスチックなどの透明なテク
スチャをサポートする。また、あるハードウェアは、テ
キスト画像を方形あるいは128×128ピクセルのよ
うな特定のサイズにする必要がある。1メガバイトのテ
クスチャ画像しか処理できないものもあれば、64メガ
バイトのテクスチャ画像をサポートし、非常に優れた質
感の3次元環境を描けるものもある。
【0080】限られたテクスチャ・メモリしか使用でき
ない場合、4メガバイトのテクスチャを使用する大型仮
想環境は、各テクスチャがそれより小さくても表示でき
る。つまり、すべてのテクスチャを各方向2分の1に縮
小することにより、それらのテクスチャに要する総メモ
リをたった1メガバイトに減らすことができ、1メガバ
イト・テクスチャのマシンでそれを表示できる。
【0081】テクスチャ・マップは、図5(A)の広告
掲示板522に見られ、家504の側面で家の窓を表す
ためにも使用されている。他に道路510の交通車線の
表示にも見られる。
【0082】草514、516、518および520
は、一連のポリゴンを組み合わせて草の葉の形に表示す
ることができるが、一般に、葉は部分的に透明な部分を
もつ1つの方形である。画像の透明でない部分は生えて
いる葉の形にグリーンで彩色する。
【0083】次に、図5(B)を参照すると、広告掲示
板522’は、やはりテクスチャ・マップを使用してい
ることが分かるが、画像は英字以外の文字を含んでい
る。この場合、仮想環境の景色である画像500’は、
英語を話さない人のために、元の英語版広告掲示板のテ
クスチャの代わりに、視聴者の母国語で描かれたテクス
チャで描かれている。本人に直に尋ねるなど、視聴者の
話す言語を確かめる方法はいろいろあることが了解され
るであろう。使用言語を確認した後、その言語によるテ
クスチャが作成されたとして、広告掲示板のテクスチャ
・マップに対応する適切な画像に置換できる。
【0084】また、これと同じ置換技術を使用して、仮
想環境の視聴者の個性と特定の関心対象に応じて的を絞
った広告メッセージを広告掲示板に載せることができる
ことも了解されるであろう。
【0085】現在使用可能なシステムではこの種の置換
を行う便利な方法は存在しない。前述のように、ほとん
どのシステムは、仮想環境を単一の大型ファイルに格納
してそれを描写する。そのファイルを変更するには、フ
ァイル全体を読み出し、大小の変更を加え、再びそのフ
ァイルをファイル・システムに保存する必要がある。こ
のファイルが大きいと、読出し、編集および保存作業に
何分もかかる恐れがあり、実用的ではない。
【0086】さらに、上記の例すべてに関して仮想環境
の構造が変わらない場合でも、その環境内の詳細な設定
はそのシーンをレンダリングするために使用するハード
ウェアやシーンの視聴者により変更される可能性がある
ことが分かる。再び図5(A)および図5(B)につい
て説明する。恐らく、画像500’をレンダリングする
ハードウェアに部分的に透明なテクスチャを表示する機
能が備わっていないためであろう、草514、516、
518および520が画像中500’で表示されないこ
とが了解されるであろう。家504’は、たぶん画像5
00’をレンダリングするハードウェアが画像500を
レンダリングしたハードウェアと毎秒同じ数のポリゴン
を描画する機能がないため細かく描画されていない。
【0087】また、広告掲示板522’の表示画像が広
告掲示板522と異なるだけでなく、解像度もまったく
異なり、広告掲示板522に使用する画像と異なるフォ
ーマットで格納されるものと思われる。
【0088】次に、図6(A)、(B)、(C)を参照
する。これらの図は、仮想環境でレンガ模様を描くする
ために使用するようなテクスチャ・マップを使用してい
る。
【0089】図6(A)は、1024×1024ピクセ
ルの解像度で格納された高解像度レンガ画像である。ま
た、画像の色情報を示すために24ビット/ピクセルを
使用して格納される。24ビット/ピクセルにすること
により、画像の個々のピクセルについて、160万色以
上の表現が可能となり、ほとんど例外なく、それ以下の
ビット/ピクセルのものより優れた絵が描かれる。ピク
セルの色は、固有の方法でハードディスクのような非揮
発性記憶装置に格納し、プログラムがそれらを使用でき
るようにする必要がある。一般の記憶形式は、ポータブ
ル・ネットワーク・グラフィックスはPNG、タグ付き
画像ファイル形式はTIFF、画像圧縮形式はJPEG
とそれぞれ言う。その他、TARGA、GIF、PIC
などの形式もあるが、これらはそれぞれ後の使用のため
の画素情報を格納する固有の方法をいう。
【0090】上記の各形式はそれぞれ異なる機能をも
つ。たとえば、GIF形式の場合は、画像データを損失
なく圧縮できるが、8ビット/ピクセルで最高256色
しか格納できない。GIF形式で格納された写真は、明
らかに画質が劣る。ただし、使用ディスク・スペースは
24ビット画像よりはるかに少なくて済む。
【0091】図6(A)は、24ビット/ピクセルでT
IFF形式で格納された1024×1024ピクセル、
すなわち1,048,576ピクセルの画像である。こ
のような画像は、画像情報と画像を記述する補足データ
を格納するために1,720キロバイトのディスク・ス
ペースを消費する。ほとんどの画像が圧縮でき、PN
G、TIFF、JPEG、GIF等のファイル形式は損
失の大小の差はあるが圧縮できる。
【0092】図6(B)は、8ビット/ピクセルすなわ
ち256色でGIF形式を用いて格納された128×1
28ピクセル画像、すなわち16,384ピクセル画像
を示す。この画像は、画像およびカラー・マップに関す
る補足データを含み、約8キロバイトのディスク・スペ
ースを消費する。
【0093】図6(C)は、GIF形式による32×3
2ピクセルのさらに解像度の低い画像を示す。この画像
は、約2キロバイトしかディスク・スペースを消費しな
いが、他の画像に比べて明らかに質が劣る。
【0094】これらの画像はみな、仮想環境シーンをレ
ンダリングするソフトウェアおよびハードウェアがこれ
らの画像フォーマットを読み出して解釈できるなら、仮
想環境でテクスチャ・マップとして使用できる。残念な
がら、特定のレンダリング用ソフトウェアは使用できる
ファイル形式と解像度が限定されていて、あらゆるレン
ダリング用ソフトウェアで共通に使用できる業界の標準
はない。たとえば、ハイエンドのSGI社製ソフトウェ
アは、XとYの解像度が2の累乗であるテクスチャ・マ
ップを使用する。パーソナル・コンピュータを使用する
レンダリング・マシンは、解像度128×128ピクセ
ルの2乗のテクスチャしか使用できない。あるレンダリ
ング・マシンは、GIF、PNGおよびJPEGファイ
ルを読み込むが、他はRGBという特殊なSGI形式も
読む。PNGとJPEGしか使用しないものもあれば、
GIF形式だけを使用するものもある。これらの違いに
より、どのプラットフォームでも実行できる単一の仮想
環境を作成することは難しい。
【0095】さらに、ネットワーク接続で仮想環境をリ
モートで見る場合、数メガバイトのテクスチャ・マップ
を含むシーンはダウンロードに長時間かかる状況も考え
る必要がある。たとえば、図6(A)の非圧縮画像は現
行の業界標準である28.8キロバイト/秒のモデムで
送信するのに10分近くかかる。図6(B)の画像の場
合はたった約3秒で済む。仮想環境に30個だけ画像が
含まれるとして、それらを28.8キロバイト/秒でダ
ウンロードする場合、中解像度画像は1分半ほどですべ
てをダウンロードできるが、高解像度画像の場合は約5
時間もかかる。
【0096】ウェブの代わりにCD−ROMを使用する
コンピュータ用にこの仮想現実環境を開発し、ハードウ
ェアに301.7メガバイトのテクスチャを示す機能が
あるとすると、そのCD−ROMを使用する仮想環境
は、モデムを使用するパーソナル・コンピュータの表示
する仮想環境より明らかに優れたものになるだろう。
【0097】さまざまな解像度およびファイル形式の画
像を、その仮想環境の構造全体が変わらなくても、種々
の状況で配布できると有利であることは明らかであろ
う。
【0098】図7(A)を参照すると、この図は、風景
702、家704、木706および雲708を含む仮想
環境のシーンを示す。図7Bは、風景、家、木および雲
を表すモデルおよびテクスチャを含むファイル・システ
ムのリストを示す。
【0099】図7(A)に示されたような一般的な仮想
環境では、風景702、家704、木706および雲7
08を含む仮想環境のコンテンツは、図7Cに示した一
つの大型ファイルか、図7Bに示した数個の大型ファイ
ルに格納される。LANDSCAPE.PLY710の
ようなファイルは、仮想環境のレンダリングされたビュ
ーに示される面を描くための辺と頂点で構成されるポリ
ゴンの一覧表を含む。また、ハードウェアによりレンダ
リングするときに彩色する各ポリゴンまたは頂点の色の
一覧表も含む。その他、このファイルはそれらのポリゴ
ンに使用するテクスチャのリストを含むが、テクスチャ
自体をそのポリゴンの一覧表と共にファイルに格納する
ことはめったにない。
【0100】図7(B)は、図7(A)に示されたビュ
ーを作成またはレンダリングする際に使用されるすべて
のファイルを示すディレクトリを含む。“Textures”7
12と題するディレクトリは、実際は図7(A)のシー
ンのレンダリングに用いるすべてのテクスチャ・マップ
用ファイルを含むサブディレクトリであり、少なくとも
草、屋根の素材、森、雲、木立および舗装道路の画像を
含む。前に示したように、これらの各テクスチャ・ファ
イルの容量は、解像度とビット・デプスにより16キロ
バイトから3メガバイトの間である。
【0101】代わって、図7(C)は、ポリゴンとその
テクスチャ・マップを除く関連情報のすべてをALL.
PLY714という1つの大型ファイルに格納する別の
方法を示す。1つの大型ファイルを使用することは、仮
想環境の設計者またはオーサが図7Bに示した場合のよ
うにたくさんのファイルを処理する必要がないため、仮
想環境のレンダリングに使用するデータを送信するのに
便利な場合がある。ただし、仮想環境のどのような小さ
な部分を変更をするときでも、ALL.PLY714を
読み出し、たとえば木を少し左にずらすなど所定の変更
を加え、さらにALL.PLYファイル全体を保存しな
おす必要がある。この場合、変更されたのは4メガバイ
ト以上もあるファイルのうちのせいぜい12バイト程度
であり、このように些細な変更を加えるときでさえ、フ
ァイル全体を読み出し、書込みを行わなければならなく
て面倒である。すべてのポリゴンをまとめて1つのファ
イルに格納した場合のほうが明らかに処理が楽である。
【0102】さらに、仮想環境の先行バージョンを保存
して変更を追跡する必要がある場合、ファイル全体の第
二コピーを保存する必要があり、1回12バイトの変更
をするために4メガバイト以上のディスク・スペースを
余計に費やすことになる。
【0103】この極端な例を挙げて説明する。仮想環境
のすべての要素を図7(B)に示した状況と類似した、
1ファイル1オブジェクトのそれぞれより小さいファイ
ルに保存するが、その仮想環境がはるかに一般的および
複雑なものであると仮定する。ファイル数が増えると、
適当なファイル名を付けて、どのオブジェクトがどのフ
ァイルに格納されたか追跡することがかなり難しくな
る。小さな変更を加える場合、オブジェクトごとにファ
イルを変えて格納すると時間が節約できて便利ではある
が、多数の細かいファイルを管理しなければならず、ど
うしようもなく厄介である。また、ファイル・システム
の中で仮想環境のクリエータが利用できる補足情報のフ
ァイルだけは、作成時と同じ大きさである。ファイルに
格納されたモデルの空間範囲のような有用な情報は一般
にモデルの境界枠と呼ばれるが、それらは直接利用する
ことはできず、1つのファイルに関してその情報を得る
には、そのファイルをメモリに読み込み、分析する必要
がある。
【0104】再び図6を参照すると、たとえばハイエン
ドのレンダリング用ハードウェアで扱うポリゴン数の多
いモデルやローエンドのパーソナル・コンピュータで扱
うポリゴン数の少ないモデルなど、さまざまな状況に対
応できる2つのバージョンのモデルを保持する必要があ
る場合は、仮想環境関連フィールドをすべて含むディレ
クトリ内でやや自由な命名方式を考案するか、またはデ
ィレクトリの構造全体を複製し、ポリゴン数の多い各フ
ァイルをポリゴン数の少ないコンパニオン・ファイルに
置き換えることが必要となる。ポリゴン数の多いモデル
とポリゴン数の少ない対応モデルをもつモデルがほんの
少ししかない場合、このような方法で余分に使用される
ディスク・スペースは驚異的かつ法外となる可能性があ
る。
【0105】また、これらのファイルとディレクトリの
管理は、手作業またはプログラムを使用して行う必要が
あることが了解されるであろう。手作業によるファイル
の管理は時間がかかり、間違いの生じる可能性がある。
一方、プログラムでファイルを管理するには、プログラ
マの専門技術を必要とする。魅力的で美しい仮想環境を
構築できる専門技術を持つ1人の人が、仮想環境を格納
するファイルやディレクトリの管理用スクリプトを書き
込むプログラミング技術を兼ね備えていることは非常に
稀である。
【0106】繰り返し説明する。仮想環境のオブジェク
トに対し個人または集団でアクセスできるようにするこ
とは有益なことである。たとえば、仮想環境を表示また
は伝送する際など、一度に仮想環境全体にアクセスでき
ると便利な場合があり、また、たとえば仮想環境を変更
する場合など、一回に仮想環境の1つのオブジェクトを
選択してアクセスできると便利な場合がある。したがっ
て、仮想環境オブジェクトを管理するためにファイル・
システムを使用することが不便で面倒であることは明ら
かであろう。
【0107】次に、図8を参照すると、テーブル800
の上にティーポット802、円錐体804、立方体80
6が載っている。テーブルには四本の脚808、81
0、812、814があり、テーブルに密着している。
この画像を示した目的は、仮想環境の一般の格納方法お
よび要件を示すことにある。この特別の仮想環境は、規
模は非常に小さいが適例である。テーブル800は、木
目のように描かれたテクスチャ・マップで「質感」が描
出されているため、木でできているような外見をしてい
る。このテクスチャ・マップを格納するファイルはJP
EG形式であり、96キロバイトのディスク・スペース
を使用する。画面の判読可能な記述であるVRML形式
の記述を含むファイルの大きさは約32キロバイトであ
る。VRMLはバーチャル・リアリティ・モデリング・
ランゲージを意味し、仮想環境を記述するためのプラッ
トフォーム間の共通使用言語として開発されたものであ
る。
【0108】図9は、図8に示した仮想環境シーンのV
RML形式による簡略リスト出力である。このリストを
短くするために、頂点、色、法線を記述するデータが
“−−−−−DATA GOES HERE−−−−−”という語に
置き換えられている。テーブル800、ティーポット8
02、円錐体804、立方体806および4本の脚80
8、810、812ならびに814がすべてそのファイ
ルに記述されていることに注目する。また、シーンをレ
ンダリングするために使用されるカメラの位置などの属
性の記述をはじめ、シーンに関する総合的な情報もファ
イルに入れる。
【0109】次に、テーブル800を定義するデータの
リスト出力である図10を参照すると、数字の複数の一
覧表がポリゴンに使用する頂点の位置を示す。また、法
線、テクスチャの座標および各ポリゴンで使用する頂点
を示すインデックスも示すが、この補足情報はテーブル
の完全なレンダリングを作成する際に使用する。各数字
のまとまりが何を意味するかをここで詳しく説明するこ
とは必ずしも必要ではない。なぜなら、3次元グラフィ
ックスの技術およびレンダリングに精通している人は、
用語や各数字または数字の集合の意味を熟知していると
思われるからである。さらに、VRML2.0の参考資
料を読めば、このファイルの各エントリの意味を明確に
知ることができる。VRML2.0の参考資料は、イン
ターネットを通じてVRMLコンソーシアムから入手で
きる。
【0110】次は、図11を参照すると、この図は1つ
の大型仮想環境の完全な画像を構築するために必要な種
々の情報を格納する位置を示す。たとえば、ファイル名
が拡張子.PLYで終わるモデル用ファイルを示す欄1
102がある。欄1104のファイルは、画像の格納フ
ォーマットに正確に応じて拡張子が例に示したように変
わる一例の画像ファイルである。欄1106のファイル
は、この例ではファイル名拡張子を.ANIとする、動
画情報を含むファイルである。これらの情報はすべて何
らかの方法で仮想環境で使用される。しかし、その情報
の組成、すなわち構築方法、表示方法および使用法は、
一般に、雲1108の場合のような実行プログラムに格
納される。このプログラムは、普通、CまたはC++で
書かれ、個々のマシンの型に合わせて実行可能プログラ
ムにコンパイルされる。
【0111】ここで例を示す。アドレス帳作成プログラ
ムを開発するものと仮定する。1つの方法として考えら
れるのは、プログラマがCコードに当アドレス帳プログ
ラムに載せる各人の名前と住所をその上に書き込む方法
である。名前を追加または削除する必要がでてきた場
合、プログラマは、ソース・ファイルを再びオープン
し、その名前と住所を入力または削除した後、そのプロ
グラムを再コンパイルする必要がある。これは非常に手
間のかかるアドレス帳作成プログラムの開発方法である
が、現在仮想環境で行っていることと非常によく通じる
ものがある。便利なアドレス帳作成プログラムは、フィ
ールドまたは部分の個々の集合に複数の行または集合の
情報を格納するデータベースを使用して構築できる。デ
ータベースを使用すると、名前の追加および削除はほと
んど取るに足りない作業となり、変更がたいへん楽にな
る。
【0112】この発明は、これに類似した仮想環境の構
築方法を説明する。仮想環境の構造とコンテンツを定義
するための場所を確保したデータベースの構造を開発し
た。データベースの各行または各部分に情報を入力する
ことにより、仮想環境を完全に定義することができるほ
か、モデル1102、テクスチャ・マップ1104、動
画情報1106および構造1108をどれも一ヶ所に格
納できる。データを変更すると、再コンパイルしなくて
もコンピュータの画面への仮想環境の表示方法を変更で
きる。
【0113】以下に記述するように、仮想環境はもはや
単一ファイルや複数の大型ファイル、すなわち管理能力
を上回るような多数の小さいファイルに格納する必要が
ない。ファイル・システムは仮想環境の情報を格納する
最善の場所ではないがこれまで使用されてきた。それ
は、そのシステムがどのコンピュータでも自由に使え、
曲がりなりにも簡単とはいかないまでも仮想環境情報の
格納および検索というジョブの一部を実行できるよう適
応可能であったためである。
【0114】図12は、仮想環境のデータと構造を共に
1つのデータベースに格納できるデータベース設計また
は「スキーマ」の例を示す。データをすべて一ヶ所に格
納する場合でも、データベースを使用すると、情報の細
分化された各部分を編集または表示するために同時に照
会または取り出しが可能になる。さらに、図12に示す
スキーマを使用すると、データベースを走査し、ファイ
ルを構築するだけで、VRMLフォーマットを使用し
て、1つのファイルに格納されたテクスチャ・マップ以
外の仮想環境全体を取り出すことができる。テクスチャ
・マップは、さらに、VRMLを使用して別に検索する
必要がある。
【0115】Rocale Info テーブル1200は、個別に
見ることができるが通常はすべての隣接ローカルと同時
に見ることのできる仮想環境の一部分として定義される
“ローカル”に関する情報を含む。ローカルは、199
6年11月発行のJohn Barrus・Richard Waters 共著に
よる『IEEEコンピュータグラフィックスおよびアプ
リケーション』の中の「ローカル:大型マルチユーザ仮
想環境のサポート」という題名の論文に詳しく定義およ
び解説されている。
【0116】Locale Neighborsテーブル1202は仮想
環境の設計者が大型の継ぎ目のない仮想環境を作成でき
るローカル間の関係を定義するものである。上記2つの
テーブルは、通常、実行可能プログラム1108に直接
格納される仮想環境の構造に関係する。
【0117】Composition Listテーブル1204は、所
定のローカルのすべての構成要素の一覧表を含む。構成
要素は、1つのオブジェクトまたはパーツもしくはパー
ツの階層で構成される。Composition Listテーブル12
04、Node List テーブル1206およびParts Listテ
ーブル1208の組み合わせは、1つのローカルのシー
ンにあるオブジェクトまたはパーツの階層を定義する。
【0118】Parts テーブル1210は、1つのオブジ
ェクトまたはパーツに関する情報を含む。各パーツは、
Primitivesテーブル1214に格納された1つ以上のプ
リミティブで構成される。プリミティブは、ポリゴンの
オーディオ・ファイルまたは一覧表である。Texture テ
ーブル1216は、テクスチャ・マップに関する情報を
含む。画像そのものを含む可能性もあるが、画像は使用
データベースにより外部の位置に格納することもある。
【0119】テーブル1218は、各パーツのクリエー
タについて、オーサ名、Parts ListとAuthor Info を結
び付けるためのID番号、オーサの所属集団およびその
オーサがスーパバイザであるかどうかなどの情報を含
む。
【0120】このデータベース構造を使用すると、一ヶ
所に大型仮想環境に関するすべての情報を格納すること
が可能になり、現行の技術状況に次のような改善がもた
らされる。すなわち、必要に応じて仮想環境の一部また
は全体を要求する機能、他のオブジェクトに影響を与え
ず1つのオブジェクトを編集するためのロック機能、プ
ログラミングまたはプログラムのコンパイルをしないで
仮想環境の構造を変更できる機能および視聴者や表示環
境などの状況に応じて仮想環境で使用される実際のデー
タを変更する機能などが実現される。このスキーマでは
明確に示していないが、特定のオーサおよび視聴者だけ
に仮想環境との対話を制限または許可するセキュリティ
機能を提供することもできる。
【0121】図13から図25は、仮想環境をデータベ
ースに導入する方法の1つの例を説明したものであるこ
とが了解されるであろう。この例は、Microsoft Corp.
(本社 Seattle,Washington DC)のMicrosoft Access
という一般的なデータベースを使用する。Microsoft Ac
cessはリレーショナル・データベースであり、リンクテ
ーブルに情報を格納する。これは情報を格納する1つの
方法ではあるが、オブジェクト指向型やオブジェクト・
リレーショナル型など、他にもいろいろな種類のデータ
ベースが使用可能で、仮想環境の格納基盤として状況に
より効率がまったく同じであったり、優れていたりす
る。以下、各テーブルとその使用法を説明する。
【0122】次に、図13を参照すると、この図は、Lo
cale Info というテーブル1300を示す。テーブル1
300は、各ローカルについて、判読可能な名前130
4、ID番号1306、ローカル内の地形の高さを表す
数字1308、当ローカルについての注釈1310など
の簡単な記述を含む。ローカルには任意の名前を付ける
ことができる上、それらは一意である必要はない。ただ
し、ローカルIDは、1つのデータベース内では一意と
する。高さ情報1308は、オブジェクトが当ローカル
の地面を表すどのポリゴンよりも、この例では、3メー
トル以上高い場合、そのオブジェクトをそのローカル外
のものとみなすことを示すために使用する。これによ
り、均一なポリゴンを使用して、各ポリゴンに高さを加
えるだけで3次元のボリュームを表すことができる。ロ
ーカルという概念に精通している人は皆、隣接ローカル
間のずれを確定するために、ローカルの内側を表す3次
元ボリュームを定義する必要のあることを知っているで
あろう。
【0123】一般のデータベースは多数のローカルを格
納することに注意する。前述のローカルに関する論文で
紹介されたアプリケーションであるダイヤモンド・パー
クには、5つの大ローカルとそれらの接点または接続経
路の働きをする多数の小ローカルを含め、60個以上の
ローカルがある。つまり、一般的なLocale Info表は一
意のIDの付くローカルを100個以上含む。
【0124】図13の二番めのテーブル1302は、デ
ータベースの全ローカル内の構成要素の一覧表である。
もちろん、この場合はローカルが1つのため、そのロー
カルID1312は、あらゆる構成要素に共通である。
このComposition Listテーブルは、構成要素の一番上の
階層だけを示す。ローカルに子をもつ構成要素がある場
合は、当階層のルートだけをこのテーブルで示し、子は
別のテーブルに示す。
【0125】図8において、テーブル800、ティーポ
ット802、立方体806および円錐体804が示され
る。テーブルの脚808、810、812および814
は、すべてテーブル面800の子であり、よってCompos
ition Listテーブル1302には示さない。Compositio
n Listテーブル1302は、大バージョン番号1316
と小バージョン番号1314も含む。
【0126】現在、ある特定の期間にわたり、コンピュ
ータのプログラマは累積的に作業して、RCS修正制御
システム、またはSCCSソース・コード制御システム
などのプログラムを使用して現在および過去の制作品を
どちらも保存することが可能である。これらの各システ
ムにより、プログラマはコードの断片を「チェックアウ
ト」し、修正した後、同一コードを「チェックイン」す
ることができる。チェックインする時、新しいソース・
コードをチェックアウト・コピーと比較し、差異を検出
する。これらの差異にはバージョン番号を付け、現在の
ソース・コードと共に格納する。このシステムの利点
は、ある人が変更をしたが、うまくいかず、使用中のソ
フトウェアの動作を停止させた場合、持ち込まれた問題
点を見つけるまで先行バージョンのソフトウェアに戻る
ことができる点である。
【0127】類似した機能が、コンテンツのクリエータ
と3次元のオーサにとって非常に役立つ。たとえば、濃
く明るい色で仮想環境を作成し、それを淡くやわらかな
色調の環境に変更する場合、変換にかなりの時間がかか
り、元の色調に戻すのも容易ではない。所定のバージョ
ン制御機能であれば元の明るい色の環境に戻すことがで
きる。同じ例を色の編集だけでなくモデルとテクスチャ
の変更にも簡単に適用できる。
【0128】Composition Listテーブル1302の大バ
ージョン番号1314と小バージョン番号1316があ
ることにより、コンテンツのクリエータは初歩的なバー
ジョン制御方式を使用できる。普通、データベースから
環境を取り出して表示するとき、各構成要素、パーツお
よびプリミティブのすべての最新バージョンを取り出
す。ただし、ユーザの要求に応じて先行バージョンも取
り出して表示できる。事実、パーツの全バージョンを取
り出して、それらを並べて表示することにより、パーツ
の変更を順を追って概観できる。表(1302)の他の
欄については改めて説明するまでもないであろう。
【0129】図14を参照すると、この図は、わかりや
すくするために前図のCompositionListテーブル140
0を含む。Node List テーブル1402は、ルート・ノ
ードがComposition Listテーブル1400に示されてい
る階層の内部構造を含む。構成要素ID01406およ
び1408は、図8のテーブルの天板800を表すが、
これだけは子をもつため、その構成要素IDはNode Lis
t テーブル1402全体の中で一貫している。テーブル
の天板800は、Node List テーブル1402に示した
4つの子をもつ。子ID1410も、Parts Listテーブ
ル1404で使用する構成要素IDであり、そのためテ
ーブル1400またはテーブル1404の別の構成要素
IDとの重複は許されない。
【0130】Pos X1412、Pos Y1414、Pos Z1
416という欄があることに注意する。これらの欄は、
それらの親構成要素に関するローカルでの各パーツの位
置を記述する。Pos Zの後に続くq1、q2、q3、q
4、Scale X、Scale YおよびScale Z1418を含む欄
は、すべてこのテーブル1402の記述する階層で使用
するときのパーツの方向と相対的なスケールを記述す
る。
【0131】Jim Foley 他の共著による「コンピュータ
グラフィックス:原理と実際」という題名の書物の21
3ページから226ページにかけて、3次元形状の変換
とそれらを使用した画面上でのオブジェクトの移動およ
び拡大・縮小方法についての解説がある。多くの3次元
オブジェクトは、それらが最初に構築された時に、ロー
カル座標系の中心を軸に設計される。たとえば、球は中
心点と半径を定めることにより最も簡単に定義される。
普通は、その中心点をローカル座標系の原点(0、0、
0)とみなす。その球を仮想環境で使用するとき、仮想
環境の原点から数メートル離れた所を中心とする円周に
10個の球のコピーを置くことが望ましい。その場合、
Foley らの説明にあるように、仮想環境のそれぞれ適正
な位置にこれらの球を移動させる一連の変換、すなわち
置換、方向転換およびスケーリングを表す4×4マトリ
ックスを定義できる。
【0132】変換はマトリックスで格納されることもあ
る。また、それらの構成要素であるパーツごとにx、
y、z位置の置換、回転およびx、y、z方向のスケー
リングなどの変換を格納すると便利なこともある。この
例では、後者を含むデータベースを示すが、このデータ
ベースに構成要素の代わりにマトリックスを格納するの
は造作ないことだろう。もちろん、使用対象を示すフラ
グと共に構成要素とマトリックスの両方を格納すること
は可能であるし、望ましい場合もある。この例では、位
置の変更が見やすいように構成要素のパーツを示した。
【0133】テーブル1404は変換情報を示す。これ
らの変換情報は、仮想環境およびお互いを基準にパーツ
を移動するために使用する。動画は、シーンが何度も描
き換えられて、変換情報を変更できる。X座標の値の増
減を繰り返して描画された球は、仮想環境のX軸を上下
するように見える。ただし、球の静止位置はデータベー
スに格納し、誰かがその仮想環境を自身のコンピュータ
にロードしてそれを表示したときに、元の位置でその球
を見ることができるようにする必要がある。
【0134】変換は、現行の座標系を基準に指定する。
たとえば、オブジェクトがローカルの座標系にあり、変
換を適用するとき、当オブジェクトはそのローカルの座
標系の新しい位置に移動する。オブジェクトが恒等変
換、つまり変位ゼロ、スケーリング1、回転ゼロに等し
い変換でローカルの座標系にある場合、そのオブジェク
トの座標系の原点はローカルの座標系の原点と完全に一
致する。オブジェクトが親オブジェクトの子である場合
に恒等変換すると、そのオブジェクトの座標系は親オブ
ジェクトがローカルの座標系を基準にどのように変換さ
れたとしても、親オブジェクトの座標系に合わせて位置
づけされる。この方法で行われる変換は、グラフィック
ス業界では周知のものであり、コンピュータによる3次
元モデルの設計およびレンダリング技術に熟練した人た
ちが広く利用している。
【0135】図15は、図8の簡単な仮想環境例の階層
を示す。この階層も、図14に示されたようなデータベ
ースの中のデータ、テーブル1400、1402および
1404に対応する。たとえば、テーブル1400は、
Locale O 1500に含まれる構成要素が行1424で
示された円錐体1502であり、行で示された1426
の立方体1504であり、行1422で示されたティー
ポット1506であり、行1420で示されたテーブル
の天板1508であることを示す。テーブルの脚はシー
ンの階層の最上位にないためテーブル1400に入って
いないことに注意する。次に、図14のテーブル140
2を見ると、行1428で示された、図15でもオブジ
ェクト1510、1512、1514および1516と
して示された脚1から4は、行1420で示されたテー
ブルの天板構造要素1508の子オブジェクトである。
【0136】構成要素の各パーツに関する変換は、それ
らの構成要素のノードを個々のパーツと関連付けるPart
s Listテーブル1404に格納する。残りの図で分かる
ように、各脚は実際にはテーブルの天板1420および
1508の座標系の原点を基準にして異なる位置に描か
れる。変位は、列1412、1414および1416に
示す。
【0137】次に図16を参照すると、Parts Listテー
ブル1600は、構成要素のノードと個々のパーツ間の
関係を含む。Parts テーブル1602にあるように、パ
ーツごとにバージョン情報、欄1606とオーサ情報、
欄1608、欄1610の最初の作成日および最終の修
正日を記録する。さらに、各パーツは、Primitive テー
ブル1604のプリミティブとも関連している。この関
連付けは欄1612に記録する。各表の関係を記述する
この方法は、リレーショナル・データベースにおける基
本概念の1つであり、データベースの開発および普及技
術に熟練した人は皆、そのようなものとして認識するで
あろう。
【0138】前に戻り、図12を参照すると、この図で
は、すべてのテーブルの関係を含め、データベースの全
体構造を見ることができる。
【0139】Primitivesテーブル1604は、例示した
仮想環境で使用されるオブジェクトまたはプリミティブ
の一覧表を含む。Partsテーブル1602にはテーブル
の脚を示す4つの異なるパート、つまり、行1614
が、それらの脚はすべて、Primitivesテーブル1604
に格納した同じ3次元情報1616を使用して描かれ
る。行1616を見ると、Partsテーブル1602との
つながりを示すプリミティブID欄1618があり、3
次元オブジェクトの種類を示すプリミティブの種類欄1
620があることが分かる。データを2進表現の大型オ
ブジェクト、すなわちBLOBとして直接データベース
に格納しないときにデータファイル名を保持する欄16
22がある。データがデータベースの欄1624にある
場合、欄1622にあるファイル名は余分なものにな
る。フォーマット欄1626は、ファイルまたはデータ
欄1624に格納されたデータの解釈を示す。
【0140】言語欄1628は、さらに細かい記述を必
要とする。一般に、図5(A)と(B)に示したよう
な、仮想環境で広告掲示板または宣伝文句を表すために
使用するテクスチャ・マップは、固有の言語で書かれた
テキストを含む。3次元バージョンの記号を構築して言
語記号の形状を作成することもできる。たとえば、大文
字の「T」を、英字の形状に含まれるポリゴンを使用し
て作成し、さらにデプスをつけるために押出しができ
る。この環境の日本語または中国語バージョンでは、ロ
ーマ字「I]の代わりに自分を意味する漢字記号を作成
して使用する場合がある。オブジェクトまたはテクスチ
ャ・マップにより表わされる言語を指定することによ
り、データベース全体を置き換えなくても別の国の言語
記号を作成して補足できる。
【0141】たとえば、日本で仮想環境を表示する際、
データベース・エンジンはそのデータベースから情報を
取り出す際、Primitive テーブル1604まで関係をた
どっていく。プリミティブID欄1618で適正なプリ
ミティブIDをもつプリミティブを見つけると、言語欄
1628が「日本語」かどうかをチェックする。「日本
語」でない場合は、IDが同じで言語が「日本語」のプ
リミティブを検索しつづける。言語欄1628のアスタ
リスクは、そのプリミティブがどの言語でも使えること
を示し、言語欄でアスタリスクの付いた適正なプリミテ
ィブを見つけると、データベースエンジンはそのプリミ
ティブを要求者に配布する。
【0142】複数の国に配備される仮想環境を開発した
人には、言語でプリミティブを特徴づけ、必要なプリミ
ティブだけを修正できると便利であることは明らかであ
ろう。現行の方法は、ファイル・システムの別のディレ
クトリでデータベース全体を作成し直してから系統的に
言語固有ファイル、たとえばテクスチャ・マップ、オー
ディオまたはモデルなどを検索し、それらのファイルを
修正する。この方法は、ディスク・スペースを消耗する
だけでなく、それぞれの格納情報にわずかしか違いが認
められない2つの別々のディレクトリ間の整合性をオー
サが保とうとして、管理がとても面倒である。
【0143】Primitivesテーブル1604に格納された
その他の情報は、データ・ファイルまたはデータBLOB1
624から取り出すことができるが、便宜上、表の欄と
して格納される。一連の欄1634および1636は、
各モデルの大きさを示すためのもので、これらを使用し
て、魅力ある便利な方法でプリミティブの一覧表を照会
することができる。これら2つの欄の情報を使用する
と、ローカル内の特定のオブジェクトの半径5メートル
以内に位置するすべてのパーツを探すことができる。現
行の方法では、上記のような照会に対する回答を求める
前に、すべてのファイルをオープンするか、すべてのデ
ータBLOSをくまなく分析するかしなければならない。一
連の欄1634および1636の情報を使用すれば、フ
ァイルまたはBLOB全体を検索しなくてもパーツの一覧表
やデータを返すことができる。
【0144】次に、図17を参照すると、欄1704
は、テーブル1702の含むオーサに関係する。この場
合も、リレーショナル・データベース業界で標準とされ
ているように、テーブル1700の各行のオーサ情報す
べてを反復検索したり、間違った情報が紛れ込んで混乱
が生じる危険を侵したりする代わりに、オーサ情報をPa
rts テーブル1700に格納する。便利なように、オー
サIDを実際にテーブル1700に格納する場合でも、
欄1704にはオーサの名字が示される。
【0145】一般に、テーブル1702は、各オーサに
関するさらに多数の情報を含むが、この種のデータベー
スは、それを使用する企業ごとに要件が異なり、それに
応じてテーブル1702が編集されるものと予想される
ため、ここでこれ以上の情報を示す必要はない。
【0146】最後に、図18に示すように、各プリミテ
ィブは、ゼロ以上のテクスチャと関連付けることができ
る。あるプリミティブは他のプリミティブの使用するテ
クスチャ・マップを使用し、あるプリミティブは1つ以
上のテクスチャ・マップを使用する。プリミティブとテ
クスチャ・マップのこの関係は、Texture Listテーブル
1802に格納する。この場合は、ID0のプリミティ
ブ1808とID0のテクスチャ・マップ1810だけ
が関係をもつ。テクスチャ・マップ1810はID0の
プリミティブに使用され、テーブルの天板が木材ででき
ているような質感を出す。
【0147】最初の黒く塗られた列にアスタリスクのつ
いた1806ような行は、すべて、新しい情報を追加す
るために確保された空の行である。行1806がプリミ
ティブID0とテクスチャID0間の関係を示すとして
も、これはデータベースの有効な行ではなく、データベ
ースにコミットされる前に編集する必要がある。
【0148】Texture テーブル1804には言語欄18
12があることに注意する。この欄は、Primitivesテー
ブル1814の言語欄と同じ方法で使用する。この発明
の精神に反することなく、ソートまたはフィルタリング
を目的とするプリミティブまたはテクスチャ・マップの
固有の属性を記述するその他の列を追加しても構わな
い。フォーマット欄1816も同様に使用する。
【0149】Texture テーブル1804に含まれるファ
イル1822およびデータ1820欄は、Primitivesテ
ーブル1800のこれらに相当する欄1824および1
826とまったく同じであり、図17のそれらの欄につ
いての説明がこの場合もあてはまる。
【0150】図19は、図18のプリミティブID3と
して使用する立方体のVRMLフォーマットの例であ
る。ファイル1900には色および形状情報と頂点19
02および面1904のリストを示す。これらの情報も
表を補足し、記入することにより同一データベースで検
索および格納できるが、このように情報の細分化が進む
と良いことはあまり期待できそうになく、データベース
から情報を取り出す速度が確実に低下する。
【0151】上述し、図12から図18で例示したデー
タベース・フォーマットおよびスキーマは唯一の例であ
り、現在の最良の実現モードであることが了解されるで
あろう。仮想環境用データベースを改善するとき、デー
タベースに格納するフィールドの変更や一部のフィール
ドの追加または削除、あるいはそれらを必要に応じて他
の表に移動したりすることが可能であり、実際に行われ
ることが予想される。この種の情報を格納するためによ
り適していると思われるデータベースが他にもあること
も了解されるであろう。特に、Poet Software(本社:
カリフォルニア州San Mateo)のPoet、Versant Object
Technology,Inc(本社:カリフォルニア州Menlo Par
k)のVersant、Computer Associates(本社:カリフォ
ルニア州Alameda)のJasmineなどのオブジェクト指向デ
ータベースがそれである。オブジェクト指向データベー
スでは、格納方式が多少異なるほか、キャッシュへの格
納方式が非常に異なり、情報のアクセスおよび伝送方法
も異なる。それでも、オブジェクト指向データベースへ
の移行は、この発明の性質と目的に反しない。よって、
このこの発明の範囲に含まれるものである。
【0152】次に、図20を参照すると、ブラウザとサ
ーバ間の情報の交換方法を示す流れ図を示す。ブラウザ
は、Silicon Graphics,Inc(本社:カリフォルニア州Mo
untain View)のCosmo Player というプラグインVRM
Lブラウザをはじめとする3次元情報要求プログラムで
ある。サーバは、通信プログラムとデータベースとを組
み合わせたものである。いろいろな2次元情報用サーバ
がある。たとえば、Netscape Communications(本社:
カリフォルニア州Mountain View)社製サーバなどであ
る。これらのサーバは、ワールド・ワイド・ウェブ(W
WW)で普及したHTTPプロトコルを使用して応答
し、データ・ストリームの形で情報を送信し、通常はフ
ァイルを使用するが、それらはHTMLコードおよびテ
キスト、GIFまたはJPEG形式のグラフィック情報
を含むファイルまたは前述のような3次元情報を含むV
RMLファイルである。
【0153】2002の枠で参照するサーバは、自身の
情報を図12から図18に示したデータベースから取り
出し、その情報を要求されたモデル・フォーマットの特
定のデータ・ストリームに変換し、2000の枠で述べ
られるブラウザに返送する。
【0154】1つの実施例で、ブラウザは、サーバのデ
ータベースで記述された特定のローカルの3次元情報を
要求するサーバにメッセージを送信する。この要求は、
通常、インターネット・アドレス形式で要求元マシンの
アドレスとマシンの特性を含むが、それらは一般に「ク
ッキー」としてブラウザから送信される。「クッキー」
は、ブラウジング・コンピュータが格納し、データの要
求を受けてサーバに渡す小さいパケット情報である。2
000の枠内で参照するブラウザが送信するクッキー
は、好ましいテクスチャ・マップのファイル形式の仕
様、マシンのグラフィック・ハードウェアの種類、3次
元環境の所望のフレーム転送速度などの関連情報を含
む。
【0155】サーバは、情報の要求を受信すると、デー
タベースで一連の検索またはデータ抽出を開始する(2
002)。同じく2002、サーバは、Locale Info テ
ーブル1200を調べてローカルID番号を見つける。
このID番号を使用して、Composiotion List テーブル
1204からルート構成要素ノードの一覧表を取り出す
(2004)。さらにサーバはテーブル1206および
1208を調べて仮想環境情報の取り出しを続け、仮想
環境の構造を構築するために階層とパーツIDを見つけ
る(2006)。次に、Parts テーブル1210からプ
リミティブの一覧表を検索し、当ローカルで使用する形
状を探し出す。サーバはPrimitivesテーブル1214を
検索し、要求されたローカルのすべての3次元情報を表
す最終的なバッファまたはデータ・ストリームを構築す
るために必要な情報を取り出す(2008)。そして、
その情報バッファが作成される(2010)。
【0156】サーバは、テクスチャ・マップ画像を除く
当ローカルに関する完全な情報を示すその情報バッファ
を取り出し、それをネットワークでブラウザに送信する
2012。それと並行して、ブラウザの次ステップとし
てHTTPやその他広く普及しているプロトコルを使用
するテクスチャ・マップの要求のあることを見越し、ロ
ーカルで使用するテクスチャ・マップの変換および検索
を開始する(2018)。
【0157】次に、図21を参照すると、ブラウザから
テクスチャ・マップの要求が行われる間に考えられる1
つの情報の流れを表す流れ図を示す。1つの実施例で、
ブラウザはHTTPプロトコルを使用して特定のテクス
チャ・マップを要求する2100。再び、ブラウザから
サーバにグラフィック・ハードウェアとその他の関連情
報を示すためにクッキーが送られる。この情報を使用し
て、サーバは、Texture テーブル1216全体の検索を
開始し、ブラウザから送信されたクッキーに含まれる
か、またはクッキーから派生するすべての属性に一致す
る適正なテクスチャIDの付いたテクスチャ・マップを
見つける(2102)。たとえば、ブラウザのユーザが
英語を話し、ソフトウェアが低解像度のJPEG形式に
よる画像を必要とし、画像を二乗アスペクト比にするよ
うにブラウザが指定したとする。ブラウザは、他の属性
も指定できる。また、一部の属性を数種のフォーマット
の1つまたは任意の有効フォーマットで使用可能なもの
として指定することもできる。たとえば、個々のブラウ
ザでJPEG、GIF、TIF、RGBや他のさまざま
な画像ファイル形式の1つを受信することができ、他の
属性に一致する最初のテクスチャ・マップが応答時に送
信されるとする。
【0158】正確に一致するテクスチャ・マップが見つ
かると、サーバは、直ちに2108のステップを実行し
てそのテクスチャ・マップのデータをブラウザに送信す
る(2108)。正確に一致するものを提供できない場
合はTexture テーブル1216を調べ、それに近いもの
を探す。テクスチャIDが同じだが、他の属性の一部が
ブラウザの要求する属性と完全に一致しないテクスチャ
・マップが類似テクスチャ・マップとして定義される。
ある特定の規則を使用して最も良く一致したものを求め
る方法はあるが、1つの実施例では、類似テクスチャ・
マップはすべて有効とみなすことができる。類似テクス
チャ・マップが見つかると、サーバは、テクスチャ・マ
ップの特定の属性を要求された属性に変換するコマンド
を含む幾つかのフォーマット変換表の1つを調べる(2
106)。たとえば、Handmade Software(本社:カリ
フォルニア州Fremont)のImage Alchemy というプログ
ラムは、異なるフォーマット、解像度、アスペクト比、
ビット・デプスやその他のさまざまな属性相互の変換が
できる。そのプログラムを使用してサーバは変換ステッ
プを実行できる2106。もちろん、変換の後、サーバ
は最終画像データをHTTPなどのプロトコルを使用し
てブラウザに送信する2108。
【0159】Syndesis Corp(本社:ウィスコンシン州J
efferson)のInter Changeなどのプログラムを使用し
て、モデルに対してフォーマット変換など同じような種
類の属性変換ができる。図22は、Primitives テーブ
ル1210またはPartsテーブル1214に格納できる
モデル属性を示す。例として、言語、面数、頂点数など
の属性のみを示す。
【0160】テーブル1214のプリミティブがオーデ
ィオ・ファイルの場合、そのオーディオ・ファイルのサ
ンプル転送レート、ビット・デプス、長さなどいろいろ
な属性を格納する。これらは、どれもモデルのプリミテ
ィブに適用されない。データベースに格納する属性情報
の種類は、プリミティブの種類により異なる。
【0161】図23(A)、(B)および(C)は、3
つの異なる解像度で構成されたティーポットを示す。同
一のポットをで表しているが、低解像度のティーポット
2304は、高解像度バージョン2300より描写が非
常におおまかである。しかし、どちらもティーポットと
認められ、そのようなものとして仮想環境に使用でき
る。技術者は、一般に、オブジェクトが仮想環境におい
て視聴者からはるか遠くにある場合、描くポリゴンの数
を減らすために、これらの図に示すように同じモデルに
ついて複数のバージョンを作成する。しかし、この発明
では、10〜15フレーム/秒の対話フレーム速度を維
持するために、解像度の異なる複数のモデルを各種グラ
フィックス・ハードウェア用に使用する。
【0162】図24は、3種類の異なる現行のハードウ
ェア・プラットフォームを、1秒間に描画可能なポリゴ
ン数と当プラットフォームで使用可能なテクスチャ・マ
ップ用メモリ容量などのおよその性能数値と共に示す。
これらの各プラットフォームは、ここで説明する3次元
データベースにアクセスするために使用する。
【0163】図25(A)は、図24に示したような複
数のハードウェア・プラットフォームに対して今日どの
ようにコンテンツの開発が行われているかを示す。一般
に、コンテンツのクリエータは、ここでマシンAとして
示すハードウェア・プラットフォームを選択し、その1
つのプラットフォーム用にコンテンツを開発する。次
に、自身の開発用プラットフォームのファイル・システ
ムの別のディレクトリにそのコンテンツをすべて複写
し、ここでマシンBと定義した2番目のハードウェア・
プラットフォーム用にそのコンテンツを編集し始める。
編集では、モデルのポリゴン数の増減、テクスチャ・マ
ップおよびオーディオ・ファイルの解像度またはフォー
マットなどの変更を行う。
【0164】ここで説明するシステムと図25(B)に
示す開発手順を使用することにより、最初のコンテンツ
を開発した後、他のハードウェア・プラットフォームで
その仮想環境を表示できるようにするために、要求に応
じて幾つかのコンテンツを動的に変換し、ごくわずかな
コンテンツだけを手操作で修正するだけで済むようにな
る。
【0165】次に、図26を参照すると、当仮想環境の
コンテンツまたは資産の管理を助けるという意味で、コ
ンテンツ・マネージャともいわれるサーバ2600と交
信するブラウザ2602の場合にはHTTP ウェブプ
ロトコルだけが有用であることが明らかであろう。監視
ツール2606および管理ツール2608は、他の状況
でデータベースを管理するために通常使用可能なツール
と理解されているが、HTTPプロトコルを使用しな
い。その他、オーサリング・ツールは、ファイル・シス
テムかデータベースかに関係なく大容量の(extensiv
e)双方向データ通信が可能である。
【0166】以上、発明の幾つかの実施例とそれに対す
る幾つかの変更と変形例について説明したが、上記は単
なる例示的なものであり、限定的なものではないことが
当事者には明白に理解できるであろう。多数の変形例や
その他の実施例は通常の技術の1つの範囲内に存在し、
添付特許請求とそれに相当するものによってのみ限定さ
れるこの発明の範囲に含まれるものである。
【0167】
【発明の効果】以上のように、この発明によれば、複数
のオーサが共通の3次元環境の個々の部分を並行して作
業できるほか、各人に3次元環境の異なる部分へのアク
セス権を選択して与えることが可能となり、バージョン
制御が実現し、永続性などの変更を保存する機能が実現
し、スケーラビリティ、セキュリティおよびフォーマッ
ト制御機能が実現し、すべて他の部分に影響を与えず仮
想現実環境のさまざまな部分について作業ができる独立
性がもたらされる。また、データベースを使用すること
により、インデックスにより環境のさまざまな部分に速
やかにアクセスできるようになる。すなわち、仮想現実
環境を構築する情報をデータベースに格納し、他の部分
を変えずに必要な部分だけを作成、編集または配布する
ことができる。たとえば、ワイド・エリア・ネットワー
クなどの通信網で当該データベースにアクセスし、他の
レコードに関係なく必要なレコードだけを個別に更新す
ることができる。このように、仮想現実環境を変更する
ために関連ファイル全体を読み出し、格納する必要がな
い。さらに、配布先マシンの特性として、データベース
が読み出すバージョンを口述して、配布先マシンと互換
性のあるバージョンを提供できる。
【図面の簡単な説明】
【図1】 仮想環境の変更対象部分の選択を示す図であ
る。
【図2】 仮想環境の格納に使用するデータベースの使
用法を示すブロック図である。
【図3】 別々のローカルで別々に処理されるさまざま
なグラフィカル・オブジェクトを示す仮想現実画面の図
である。
【図4】 リレーショナル・プレイス・データベースの
種々の場所のローカルに含まれるグラフィカル・オブジ
ェクトの記憶域を示し、個々のローカルにアクセスする
ための対応するVRMLファイルを示す図である。
【図5】 風景、2つのビル、1軒の家および広告掲示
板の描かれた大型仮想環境の一部を示す仮想現実画面の
図である。
【図6】 同一画像を、高解像度および高ビット・デプ
スフォーマット、中解像度および中ビット・デプスフォ
ーマット、低解像度および低ビット・デプスフォーマッ
トでそれぞれ示す2つの異なる画像ファイルを示す図で
ある。
【図7】 風景、雲、木、道路、小道、家の描かれた仮
想環境画面、仮想環境の情報をファイルに格納すること
が可能なある方法を示すコンピュータ・ファイル・シス
テムのリスト、すべての情報が1つのファイルに含まれ
る仮想環境情報を格納できる別の方法を示すコンピュー
タ・ファイル・システムのリストをそれぞれ示す図であ
る。
【図8】 テーブルの上にティーポット、円錐体および
立方体が載っているテーブルを示す仮想現実画面の図で
ある。
【図9】 図8の画面をバーチャル・リアリティ・モデ
リング・ランゲージ(VRML)ファイル形式を使用し
て示すことが可能なある方法を示すコンピュータによる
簡略出力リストを示す図である。
【図10】 図8のテーブルの上にそこに示されていな
かった他の要素を載せた場合のデータを示すコンピュー
タによる簡略出力リストの図である。
【図11】 仮想現実画面をコンピュータで表示するた
めに必要な各種の情報を、一般の先行技術の状況でそれ
らが格納される場所と共に示す図である。
【図12】 仮想現実画面の構成とデータの両方を1つ
のデータベースに完全に格納する方法を示す図である。
【図13】 図12のデータベースに格納されたデータ
例を図8の画面に対応するデータで示した一連のテーブ
ルを示す図である。
【図14】 図12のデータベースに格納されたデータ
例を図8の画面に対応するデータで示した一連のテーブ
ルを示す図である。
【図15】 図14に示したデータベース例で格納され
ているオブジェクトの階層例の図である。
【図16】 図12のデータベースに格納されたデータ
例を図8の画面に対応するデータで示す一連のテーブル
を示す図である。
【図17】 図12のデータベースに格納されたデータ
例を図8の画面に対応するデータで示す一連のテーブル
を示す図である。
【図18】 図12のデータベースに格納されたデータ
例を図8の画面に対応するデータで示す一連のテーブル
を示す図である。
【図19】 データベースにおける1つのプリミティブ
のデータ・ファイル例を図15と図17に示したプリミ
ティブのテーブルと共に示す図である。
【図20】 データベースから情報を取り出す方法を示
す流れ図である。
【図21】 ブラウザからテクスチャ・マップの要求を
受けたときにサーバが送信すべきテクスチャ・マップを
決定する方法を示す流れ図である。
【図22】 3次元データベースに格納されたモデルに
適用する属性を示す図である。
【図23】 同一ティーポットを3種類の異なる解像度
で示した図である。
【図24】 3次元情報を表示できる各種ハードウェア
・プラットフォームの重要な特性の一部を示す図であ
る。
【図25】 複数のプラットフォームで使用できるよう
にコンテンツを開発する2つの方法を並べて示した図で
ある。
【図26】 本明細書で説明した発明の使用する要素の
一部とそれら相互の関連を示す図である。
【符号の説明】
10 端末装置、12 仮想現実シーン、14 ディス
プレイ、16 グラフィカルオブジェクト、18 枠、
20 3次元環境作成、22 テクスチャとサウンド、
24 プリミティブ、26 構成要素の集合とパーツの
階層、28 ローカル、30 データベース、32 複
数のオーサ、34 アクセス、36 バージョン制御、
38 ハードウェア(要件)、42 変更の永続性、4
4 スケーラビリティ、46 セキュリティ(許可)、
フォーマット、48 ハードウェアに合わせて異なるフ
ォーマットに変換して出力を調整、50 単一プリミテ
ィブを編集、310 ローカルA、312 ローカル
B、710 LANDSCAPE.PLY、712 T
EXTURES、714 ALL.PLY ディレクト
リのリスト、2600 コンテンツ・マネージャ・サー
バ、2602 ブラウザ、2604 プラットフォーム
・シミュレータ、2606 オーサリング・ツール、2
608 監視ツール、2610 管理ツール。
───────────────────────────────────────────────────── フロントページの続き (73)特許権者 597067574 201 BROADWAY, CAMBR IDGE, MASSACHUSETT S 02139, U.S.A. (72)発明者 ジョン・バラス アメリカ合衆国、カリフォルニア州、メ ンロ・パーク、レキシントン・ドライブ 328 (72)発明者 ステファン・マッケオン アメリカ合衆国、カリフォルニア州、ロ ス・オルトス、チェスター・サークル 17 (72)発明者 イレーネ・ビー・スターンズ アメリカ合衆国、カリフォルニア州、ロ ス・オルトス、チェスター・サークル 17 (56)参考文献 特開 平10−40295(JP,A) 特開 平6−195439(JP,A) 特開 平10−301946(JP,A) 特開 平9−282249(JP,A) IEEE Computer Gra phics and Applicat ions、16[6](November 1996)、(米)、John W.Ba rrus,Richard C.Wat ers,and David B.An derson、“Locales:Su pporting Large Mul tiuser Virtual Env ironments”p.50−57 (58)調査した分野(Int.Cl.7,DB名) G06T 1/00 - 17/50 G06F 17/30

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 データベースと、仮想現実環境を作成す
    る手段と、上記作成された仮想現実環境を上記データベ
    ースに格納する手段と、上記データベースにアクセス
    し、アクセスされたデータを配布する手段とを備え、 上記データベースはレコードを含み、上記仮想現実環境
    は異なるパーツに分割され、パーツ毎に個々のレコード
    に分けて格納され、それにより上記仮想現実環境は他の
    部分に影響を与えることなく作成、編集または配布でき
    るものとすると共に、上記パーツをローカルとし、 さらに、上記データベースに上記仮想現実環境の各種バ
    ージョンが格納されるものとし、 ネットワークと、 上記ネットワークに接続され、予め決められた構成をも
    つ配布先マシンとをさらに備え、 上記データベースにアクセスし、アクセスされたデータ
    を配布する手段は、上記予め決められた構成に互換性の
    ある上記データベースに格納された上記仮想現実環境の
    特定のバージョンだけを上記配布先マシンに伝送する
    次元仮想現実環境作成、編集および配布システム。
  2. 【請求項2】 上記データベースをリレーショナル・デ
    ータベースとする請求項1記載の3次元仮想現実環境作
    成、編集および配布システム。
  3. 【請求項3】 上記データベースの予め決めたられた部
    分だけにアクセスを許可する手段をさらに含む請求項1
    記載の3次元仮想現実環境作成、編集および配布システ
    ム。
JP10211194A 1998-07-27 1998-07-27 3次元仮想現実環境作成、編集及び配布システム Expired - Fee Related JP3059138B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10211194A JP3059138B2 (ja) 1998-07-27 1998-07-27 3次元仮想現実環境作成、編集及び配布システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10211194A JP3059138B2 (ja) 1998-07-27 1998-07-27 3次元仮想現実環境作成、編集及び配布システム

Publications (2)

Publication Number Publication Date
JP2000057373A JP2000057373A (ja) 2000-02-25
JP3059138B2 true JP3059138B2 (ja) 2000-07-04

Family

ID=16601946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10211194A Expired - Fee Related JP3059138B2 (ja) 1998-07-27 1998-07-27 3次元仮想現実環境作成、編集及び配布システム

Country Status (1)

Country Link
JP (1) JP3059138B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020068878A1 (en) * 2018-09-24 2020-04-02 Magic Leap, Inc. Methods and systems for three-dimensional model sharing

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6910186B2 (en) 2000-12-08 2005-06-21 Kyunam Kim Graphic chatting with organizational avatars
US6407680B1 (en) * 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US7862428B2 (en) 2003-07-02 2011-01-04 Ganz Interactive action figures for gaming systems
JP4347017B2 (ja) * 2003-10-17 2009-10-21 キヤノン株式会社 情報処理方法及び画像処理方法
US7834890B2 (en) 2003-10-17 2010-11-16 Canon Kabushiki Kaisha Information processing method and image processing method
JP4372528B2 (ja) * 2003-12-15 2009-11-25 大日本印刷株式会社 実世界仮想化システム、実世界仮想化方法、サーバ、プログラム及び記録媒体
US7534157B2 (en) 2003-12-31 2009-05-19 Ganz System and method for toy adoption and marketing
EP1704517A4 (en) 2003-12-31 2008-04-23 Ganz An Ontario Partnership Co SYSTEM AND METHOD FOR THE TAKEOVER ACQUISITION AND MARKETING
JP4856370B2 (ja) 2004-10-15 2012-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション ウェブサイトの編集方法、編集システム、編集プログラム
EP2330561A1 (en) * 2009-12-04 2011-06-08 Alcatel Lucent Method for browsing a 3 dimensional virtual environment
EP3092622A4 (en) * 2014-01-09 2017-08-30 Square Enix Holdings Co., Ltd. Methods and systems for efficient rendering of game screens for multi-player video game
US9521176B2 (en) 2014-05-21 2016-12-13 Sony Corporation System, method, and computer program product for media publishing request processing
CN115019015A (zh) * 2017-12-22 2022-09-06 奇跃公司 密集3d重建数据的缓存和更新
US11389735B2 (en) 2019-10-23 2022-07-19 Ganz Virtual pet system
US11358059B2 (en) 2020-05-27 2022-06-14 Ganz Live toy system
JP7348943B2 (ja) * 2021-12-22 2023-09-21 凸版印刷株式会社 コンテンツ管理システム、コンテンツ管理方法、及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9222767D0 (en) * 1992-10-30 1992-12-09 Canon Res Ct Europe Ltd Processing image data
JP3685877B2 (ja) * 1996-07-19 2005-08-24 富士通株式会社 通信装置
JP4418036B2 (ja) * 1997-04-24 2010-02-17 富士通株式会社 情報提供装置および情報提供方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE Computer Graphics and Applications、16[6](November 1996)、(米)、John W.Barrus,Richard C.Waters,and David B.Anderson、"Locales:Supporting Large Multiuser Virtual Environments"p.50−57

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020068878A1 (en) * 2018-09-24 2020-04-02 Magic Leap, Inc. Methods and systems for three-dimensional model sharing
US11450065B2 (en) 2018-09-24 2022-09-20 Magic Leap, Inc. Methods and systems for three-dimensional model sharing

Also Published As

Publication number Publication date
JP2000057373A (ja) 2000-02-25

Similar Documents

Publication Publication Date Title
US6058397A (en) 3D virtual environment creation management and delivery system
JP3059138B2 (ja) 3次元仮想現実環境作成、編集及び配布システム
US6348927B1 (en) Composing a description of a virtual 3D world from values stored in a database and generated by decomposing another description of a virtual 3D world
US8495066B2 (en) Photo-based virtual world creation system for non-professional volunteers
US5381526A (en) Method and apparatus for storing and retrieving generalized image data
US6985929B1 (en) Distributed object-oriented geospatial information distribution system and method thereof
US20080094394A1 (en) Automated derivative view rendering system
US20160224551A1 (en) System and method for storing a dataset of image tiles
US10013474B2 (en) System and method for hierarchical synchronization of a dataset of image tiles
Coelho et al. Expeditious Modelling of Virtual Urban Environments with Geospatial L‐systems
CN115114356A (zh) 一种基于矢量数据前端展示的实时脱密化方法
KR20060095444A (ko) 실체 검색 시스템
Tsirliganis et al. Archiving cultural objects in the 21st century
WO2008026003A2 (en) 3 d pdf document generator and method for generating 3d pdf documents
WO2001080098A2 (en) Web browser plug-in providing 3d visualization
Szabo et al. A virtual reality based system environment for intuitive walk-throughs and exploration of large-scale tourist information
WO2002005216A2 (en) System and method for three dimensional data representation
Rizvić et al. Virtual reconstruction and digitalization of cultural heritage sites in Bosnia and Herzegovina
Flintham Painting the town red: configuring location-based games by colouring maps
Koski Automated map generation process for tiled raster maps
Escobar-Molano Management of resources to support continuous display of structured video objects
Muller et al. Towards the virtual internet gallery
Maver Virtual heritage: Reconstructing the past, reconfiguring the future
Zara Preparation and presentation of cultural content in virtual environment
Comair et al. 28 Collaborative Design System with Network Technologies in Design Projects

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080421

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090421

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110421

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120421

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140421

Year of fee payment: 14

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees