(57)【特許請求の範囲】
【請求項１】
シミュレーション環境とのインタラクションを促進するよう構成されたシステムにおける、シミュレーション環境のためのアセットを生成するためのコンピュータ実装された方法であって、
（ａ）自動的にデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、前記オブジェクトを包含する２次元ポリゴンを表すデータを生成するステップと、
（ｂ）前記２次元ポリゴンによって囲まれたイメージの部分を前記デジタルイメージの残りから切り離すステップと、
（ｃ）前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づけるステップとを含み、
前記デジタルイメージは、２以上のオブジェクトを含み、
ステップ（ａ）は、前記デジタルイメージ内の２以上のオブジェクトの各々の輪郭をデジタル的にトレースすることにより、前記２以上のオブジェクトを包含する２以上の２次元ポリゴンを表すデータを生成するステップを含み、
ステップ（ｂ）は、前記２以上の２次元ポリゴンによって囲まれたイメージの第１部分および第２部分を前記デジタルイメージの残りから切り離すステップを含み、
ステップ（ｃ）は、前記イメージの前記第１部分を対話型エンターテインメントプログラムにおけるアバターとして用い、前記第２部分を対話型環境における地形特徴として用いるステップを含むことを特徴とする方法。
【請求項２】
前記シミュレーション環境はビデオゲームである請求項１の方法。
【請求項３】
前記シミュレーション環境は仮想世界である請求項１の方法。
【請求項４】
前記アセットはアバターである請求項１の方法。
【請求項５】
前記アセットはシミュレーション環境の地形特徴である請求項１の方法。
【請求項６】
背景のデジタルイメージをキャプチャするステップをさらに含み、
ステップ（ｂ）は、デジタルイメージの前記部分を以前は含んでいたポリゴン内部を前記背景の対応する部分で埋めるステップを含む請求項１の方法。
【請求項７】
ステップ（ａ）は、
オブジェクトのエッジにおいて第１、第２および第３の点を位置決めするステップと、  第１の点および第２の点の間をつなぐラインセグメントと、第１の点と第２の点の中間にあるオブジェクトのエッジ上の第３の点との間の垂直距離を決定するステップと、
もし、垂直距離が閾値よりも大きいなら、第１の点および第２の点をポリゴンの頂点と関連づけるステップとを含む請求項１の方法。
【請求項８】
第１の点と第２の点の間の距離と、前記ラインセグメントと第３の点の間の垂直距離の比を決定するステップと、
もし前記比が閾値よりも大きいなら、前記第３の点を前記ポリゴンの頂点と関連づけるステップとをさらに含み、
第１の点と第３の点をつなぐラインセグメントは、前記ポリゴンの第１の辺を構成し、第３の点と第２の点をつなぐラインセグメントは、前記第１の辺に隣接する前記ポリゴンの第２の辺を構成する請求項７の方法。
【請求項９】
ステップ（ｂ）は前記ポリゴンを所定の投射法で投射することによって３次元形状を形成するステップを含む請求項１の方法。
【請求項１０】
ステップ（ｃ）は前記３次元形状をシミュレーション環境における地形特徴として用いるステップを含む請求項９の方法。
【請求項１１】
ステップ（ａ）の前に、写真を撮影し、前記写真をデジタル化して前記デジタルイメージを形成する請求項１の方法。
【請求項１２】
ステップ（ａ）の前に、ユーザからの入力コマンドに応じてデジタル写真の一部を前記デジタルイメージとして選択するステップをさらに含む請求項１の方法。
【請求項１３】
ステップ（ｃ）は、第１部分および第２部分のどちらがより大きな２次元領域をもつかを決めるステップと、より大きな２次元領域をもつ方の部分を地形特徴として用いるステップとを含む請求項１の方法。
【請求項１４】
ステップ（ｃ）は、第１部分および第２部分のどちらがより小さな２次元領域をもつかを決めるステップと、より小さな２次元領域をもつ方の部分をアバターとして用いるステップとを含む請求項１の方法。
【請求項１５】
ステップ（ｃ）は、第１部分および第２部分のどちらが、前記デジタルイメージの上部に近いかを決定するステップと、前記デジタルイメージの上部に近い方の部分をアバターとして用いるステップとを含む請求項１の方法。
【請求項１６】
ステップ（ｃ）は、第１部分および第２部分のどちらが、前記デジタルイメージの底部に近いかを決定するステップと、前記デジタルイメージの底部に近い方の部分を地形特徴として用いるステップとを含む請求項１の方法。
【請求項１７】
デジタルイメージキャプチャを用いてシミュレーション環境のためのアセットを生成するための装置であって、
プロセッサと、
プロセッサに接続されたメモリと、
プロセッサによって実行されるためにメモリに具現化されたインストラクションとを含み、
当該インストラクションは、デジタルイメージキャプチャを用いて対話型エンターテインメントのためのアセットを生成するための方法を実装するように構成されており、当該インストラクションは、
（ａ）一旦オブジェクトのデジタルイメージがキャプチャされると、自動的に前記メモリに記憶されたデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、前記オブジェクトを包含する２次元ポリゴンを表すデータを生成するインストラクションと、
（ｂ）前記プロセッサに、前記２次元ポリゴンによって囲まれたイメージの部分を前記デジタルイメージの残りから切り離させるインストラクションと、
（ｃ）前記プロセッサに、前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づけさせるインストラクションとを含み、
前記デジタルイメージは、２以上のオブジェクトを含み、
インストラクション（ａ）は、前記デジタルイメージ内の２以上のオブジェクトの各々の輪郭をデジタル的にトレースすることにより、前記２以上のオブジェクトを包含する２以上の２次元ポリゴンを表すデータを生成するインストラクションを含み、
インストラクション（ｂ）は、前記２以上の２次元ポリゴンによって囲まれたイメージの第１部分および第２部分を前記デジタルイメージの残りから切り離すインストラクションを含み、
インストラクション（ｃ）は、前記イメージの前記第１部分を対話型エンターテインメントプログラムにおけるアバターとして用い、前記第２部分を対話型環境における地形特徴として用いるインストラクションを含むことを特徴とする装置。
【請求項１８】
前記プロセッサに接続されたデジタルイメージキャプチャデバイスをさらに含む請求項１７の装置。
【請求項１９】
前記デジタルイメージキャプチャデバイスはデジタルカメラである請求項１８の装置。
【請求項２０】
前記オブジェクトの前記デジタルイメージを前記デジタルイメージキャプチャデバイスでキャプチャし、前記デジタルイメージを表すデータを前記メモリに格納するインストラクションをさらに含む請求項１８の装置。
【請求項２１】
コンピュータ読み取り可能なインストラクションが格納されたコンピュータ読み取り可能な媒体であって、当該インストラクションが実行されると、プロセッサとプロセッサに接続されたメモリを有するシステムにおいてデジタルイメージキャプチャを用いてシミュレーション環境のためのアセットを生成するための方法が実装されるものであり、当該インストラクションは、
（ａ）自動的にデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、前記オブジェクトを包含する２次元ポリゴンを表すデータを生成するインストラクションと、
（ｂ）前記プロセッサに、前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットとして使用させるインストラクションと、
（ｃ）前記プロセッサに、前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づけさせるインストラクションとを含み、
前記デジタルイメージは、２以上のオブジェクトを含み、
インストラクション（ａ）は、前記デジタルイメージ内の２以上のオブジェクトの各々の輪郭をデジタル的にトレースすることにより、前記２以上のオブジェクトを包含する２以上の２次元ポリゴンを表すデータを生成するインストラクションを含み、
インストラクション（ｂ）は、前記２以上の２次元ポリゴンによって囲まれたイメージの第１部分および第２部分を前記デジタルイメージの残りから切り離すインストラクションを含み、
インストラクション（ｃ）は、前記イメージの前記第１部分を対話型エンターテインメントプログラムにおけるアバターとして用い、前記第２部分を対話型環境における地形特徴として用いるインストラクションを含むことを特徴とするコンピュータ読み取り可能な媒体。
【請求項２２】
前記オブジェクトの前記デジタルイメージを前記プロセッサに接続された前記デジタルイメージキャプチャデバイスでキャプチャし、前記デジタルイメージを表すデータを前記メモリに格納するインストラクションをさらに含む請求項２１のコンピュータ読み取り可能な媒体。
【請求項２３】
デジタルイメージキャプチャを用いてシミュレーション環境のためのアセットを生成するための装置であって、
（ａ）一旦オブジェクトのデジタルイメージがキャプチャされると、自動的にデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、前記オブジェクトを包含する２次元ポリゴンを表すデータを生成する手段と、
（ｂ）前記２次元ポリゴンによって囲まれたイメージの部分を前記デジタルイメージの残りから切り離す手段と、
（ｃ）前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づける手段とを含み、
前記デジタルイメージは、２以上のオブジェクトを含み、
手段（ａ）は、前記デジタルイメージ内の２以上のオブジェクトの各々の輪郭をデジタル的にトレースすることにより、前記２以上のオブジェクトを包含する２以上の２次元ポリゴンを表すデータを生成する手段を含み、
手段（ｂ）は、前記２以上の２次元ポリゴンによって囲まれたイメージの第１部分および第２部分を前記デジタルイメージの残りから切り離す手段を含み、
手段（ｃ）は、前記イメージの前記第１部分を対話型エンターテインメントプログラムにおけるアバターとして用い、前記第２部分を対話型環境における地形特徴として用いる手段を含むことを特徴とする装置。
【請求項２４】
前記デジタルイメージをキャプチャする手段をさらに含む請求項２３の装置。
【請求項２５】
前記デジタルイメージをキャプチャする手段はデジタルカメラを含む請求項２４の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対話型エンタテインメントに関し、特にデジタル・イメージ・キャプチャを使って対話型エンタテインメントのためにアセットを生成することに関する。
【背景技術】
【０００２】
インターネットが成長し、ビデオゲームのような対話型エンタテインメントが人気を博するようになったため、対話型エンタテインメントに対して、ビデオ・ゲームプログラムと他のプログラムのコンテキスト内でアセットをカスタマイズする機会が増えるに至っている。ビデオゲームでは、ユーザはシミュレーションされた地形やコンピュータにより生成された他のオブジェクトと相互作用することが可能である。多くの場合、ユーザのインタラクションは、アバターとして知られている、コンピュータによって生成されたシンボルまたはキャラクタを用いてなされる。アバターとシミュレーションされた地形は、大抵は、ソフトウェア開発者が生成する。アバターと地形のカスタマイズにおいていくつかの試みがなされてきた。これらの試みは、ゲームとともに使われるインタフェース・コントローラの能力によって、たいていは制限される。多くの場合、インターフェースは２、３のボタンとジョイスティックを備えている。これらのコントロールは、ゲーム・キャラクターや地形を描くようなタスクのためには使いにくいものである。
【０００３】
最近、マイクロソフトはデジタルカメラ周辺に構築されるインターフェースを開発した。カメラがシーンのデジタル・イメージをキャプチャし、専用ソフトウェアがそのデジタル・イメージを分析して高さフィールドを生成する。あるインプリメンテーションでは、デジタル・イメージから深さ情報をとらえるために深さを検知するカメラを使う。
【０００４】
その後、高さフィールドは、ビデオゲームのために地形を生成するために用いられる。残念なことに、この技術は単一の高さフィールドを生成するため、異なるオブジェクトをイメージから切り離すことはできない。
【０００５】
もう一つの先行技術のインターフェースは、普通のカメラを使って、イメージのシェーディングに基づいて深さを推論する。そのようなアプローチは、イメージの明るさと何らかの相関がある高さフィールドを構築することになる。たとえば、明るい領域が高く、影は低い。別の開発者は、シーンからオブジェクトを区分けし、合成オブジェクトを現実のシーンに挿入するために深さカメラを使っている。このインターフェースは、ｈｔｔｐ：／／ｗｗｗ．ｅｅ．ｉｃ．ａｃ．ｕｋ／ｇｅｌｅｎｂｅ／ｉｎｄｅｘ＿ｆｉｌｅｓ／Ｇａｍｅｓ．ｐｄｆに詳述されている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
残念ながら、深さ情報を検知するカメラは高価であり、また、そのような先行技術を用いて深さ情報をシミュレーション環境に取り込むことは複雑である。
【０００７】
こういった事情のもと、本発明の実施の形態が考えられた。
【課題を解決するための手段】
【０００８】
本発明のある態様は、シミュレーション環境とのインタラクションを促進するよう構成されたシステムにおける、シミュレーション環境のためのアセットを生成するためのコンピュータ実装された方法である。この方法は、自動的にデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、前記オブジェクトを包含する２次元ポリゴンを表すデータを生成するステップと、前記２次元ポリゴンによって囲まれたイメージの部分を前記デジタルイメージの残りから切り離すステップと、前記２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づけるステップとを含む。
【発明を実施するための最良の形態】
【０００９】
これから述べる詳細な説明には、例示のために特定の詳細な内容が多く含まれるが、当業者であれば、これらの詳細な内容にいろいろなバリエーションや変更を加えても、本発明の範囲を超えないことは理解できよう。したがって、以下で説明する本発明の例示的な実施の形態は、権利請求された発明に対して、一般性を失わせることなく、また、何ら限定をすることもなく、述べられたものである。
【００１０】
「シミュレーション環境」という用語は、ここでは、その環境内の異なるオブジェクト間の相互作用を制御するシミュレートされた物理法則を含む、コンピュータ読み取り可能なデータとインストラクションで表現される環境を指す。環境内のオブジェクトには、アバター、地形特徴、その他のオブジェクトが含まれる。シミュレーション環境とのユーザのインタラクションは、アバターと呼ばれる、コンピュータによって生成されたキャラクタあるいはオブジェクトの形でビデオスクリーンに表される。アバターとシミュレーション環境の間のインタラクションの度合いは、シミュレーション物理やユーザ間の情報交換といったようなインタラクションを管理するコンピュータアプリケーションによって実装される。シミュレーション環境の例は、ビデオゲームと仮想世界を含む。ビデオゲームはユーザのインタラクション（相互作用）が競争的であるようなシミュレーション環境である。ビデオゲームでは、ユーザは、他のユーザまたはコンピュータが生成した敵と競争したり、あるタスクを完了する時間を競ったりする。それとは対照的に、仮想世界ではユーザは主に非競争的なやり方で、社会的、教育的、あるいは娯楽の目的でシミュレーション環境と相互作用する。仮想世界の例は、米国特許出願第１１／６８２，２８１号、第１１／６８２，２８４号、第１１／６８２，２８７号、第１１／６８２，２９２号、第１１／６８２，２９８号、および第１１／６８２，２９９号に記述されており、その内容を参照によりここに組み入れる。ビデオゲームと仮想世界の間には重複もあることに留意する。具体的には、あるビデオゲームには、競争する側面に加えて、教育的、社会的、あるいは娯楽的な側面も含まれる。
【００１１】
「シミュレーション環境のためのアセット」という用語は、ここでは、シミュレーション環境のコンテキスト内で使われる、デジタル的に生成されたアバター、地形特徴、オブジェクトを含む。そのようなアセットは、コンピュータインストラクションによって生成され、シミュレーション環境と関連づけられたデータとして記憶される。具体的には、アバターはデジタル的に生成されたキャラクタ、車、あるいは他のオブジェクトをいう。ユーザはアバターを通してシミュレーション環境と相互作用し、アバターを直接的にコントロールする。地形特徴はユーザが直接コントロールしないアセットのことである。地形特徴とシミュレーション環境の他のアセットの間の相互作用は主に、シミュレートされた物理法則によって決定される。地形特徴は、固体、液体、気体のオブジェクトのシミュレーションを支配する法則に従ってもよい。ユーザがシミュレーション環境内で相互作用する他のオブジェクトは、シミュレーション環境のアセットとみなされてもよい。そのようなオブジェクトの例は、アバターと関連づけられた、武器、ツール、コミュニケーションデバイス、通貨や財宝のようなシミュレートされた経済的なアセット、ユーザがコントロールすることのないコンピュータが生成したキャラクタ、およびシミュレーション環境の異なる場所間を移動するのを助ける輸送手段のアセットなどを含むが、これに限るものではない。
【００１２】
「対話型（インタラクティブ）エンターテインメント」という用語は、ここでは、主にユーザの娯楽のために使われるコンピュータ実装されたアプリケーションをいう。
【００１３】
図１は、本発明の実施の形態によるシミュレーション環境とのインタラクションを促進するよう構成されたシステム１００の例を示す。システム１００は、一般にプロセッサ１１０とメモリ１２０を備えるコントローラ１０２を含む。プロセッサ１１０とメモリ１２０は、例えば、適当なデータバスによって、互いに機能的に接続される。システムは、コントローラ１０２に接続されたビデオ表示装置１０４と、プロセッサ１１０に接続されたイメージ・キャプチャ・デバイス１０６をオプションとして含む。イメージ・キャプチャ・デバイスは、オブジェクトのデジタル・イメージをキャプチャすることのできる任意のデバイスである。イメージ・キャプチャ・デバイスの例には、これに限らないが、デジタルカメラやイメージスキャナが含まれる。イメージ・キャプチャ・デバイス１０６は、例えば、直接のデータバス接続によって直接的にプロセッサ１１０に接続される。あるいは、イメージ・キャプチャ・デバイス１０６は、例えば、メモリ１２０とのデータの交換によって、プロセッサ１１０に間接的に接続されてもよい。ビデオ表示装置１０４は、コントローラ１０２から信号に応じてビジュアル情報を表示することができる任意のデバイスであり、ＣＲＴ、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、および発光ダイオード（ＬＥＤ）ディスプレイが含まれる。
【００１４】
システム１００は、一つ以上の現実のオブジェクト１０５、１０７または描かれたオブジェクト１０７のイメージ１０１からシミュレーション環境のためのアセット（有用物）を生成するために構成される。イメージ１０１はイメージ・キャプチャ・デバイス１０６で得られるか、メモリ１２０にイメージデータ１２２として格納されていてもよい。イメージデータ１２２は、イメージ１０１を構成する画素と関連づけられた明るさ、色、コントラスト、その他の情報を特定する。ビデオ表示装置１０４はイメージ１０１を表示する。システム１００は、デジタル・イメージ１０１において自動的にオブジェクト１０３、１０５、１０７の輪郭をたどることにより動作し、オブジェクト１０３、１０５、１０７を包含する二次元のポリゴン１１３、１１５、１１７を表すデータを生成する。一旦デジタル・イメージ１０１がキャプチャされると、輪郭はユーザからの更なる入力に頼ることなくたどられる。二次元のポリゴン１１３、１１５、１１７によって囲まれているデジタル・イメージ１０１の部分は、デジタル・イメージ１０１の残りから切り離される。システム１００は、その後、二次元のポリゴンによって囲まれたイメージの一部をシミュレーション環境のアセットに関連づける。
【００１５】
プロセッサ１１０は、そのようなオペレーションを容易にするインストラクションを用いてプログラムされる。特に、プロセッサ１１０は、イメージ・キャプチャ・デバイス１０６からイメージ１０１を得て、イメージ１０１を表しているデータ１２２を格納し、または、格納されたイメージデータ１２２を他のデバイスから取り出すといったイメージ・キャプチャ・インストラクション１１２を用いてプログラムされてもよい。プロセッサ１１０は、イメージ１０１においてオブジェクト１０３、１０５、１０７のエッジを見つけるためにイメージデータ１２２を分析して、対応しているポリゴン１１３、１１５、１１７を表すデータ１２４を生成するといった、輪郭を描くためのインストラクション１１４を用いてさらにプログラムされてもよい。ポリゴン・データ１２４は、とりわけ、各々のポリゴンの各辺を構成する複数のライン・セグメントの端点の位置を特定する。イメージ１０１内の端点の位置は、ある座標系に関して定められる。座標系の原点は任意に定められ、各位置は、端点と原点の間でいくつかの画素に関して水平方向および垂直方向に特定される。
【００１６】
プロセッサ１１０は、ポリゴンによって囲まれるイメージ１０１の部分をイメージの残りから切り離して、それらの部分をシミュレーション環境の対応するアセットと関連づけるといったアセット生成インストラクション１１６を用いて、さらにプログラムされてもよい。
【００１７】
図１に示されたシステムのオペレーションは、図２と図３Ａ−３Ｃのフローチャートを参照することによって理解される。図２に示されるフローチャートは、図１に示されるタイプのシステムを使用してシミュレーション環境に対してアセットを生成する方法２００を例示する。ステップ２０２で示されるように、この方法２００はイメージデータ１２２を受けることで始まる。イメージデータ１２２は、プロセッサ１１０によって読み取り可能なデジタル・データフォーマットでイメージ１０１を表す。イメージデータ１２２のフォーマットは、ビットマップ、ＭＰＥＧ、ＪＰＥＧ、ＴＩＦＦ（Tagged Image File Format）、ＰＤＦ（Portable Document Format）などの何らかの適切な画像フォーマットである。イメージデータ１２２は、独立したイメージ・キャプチャ・プロセス２０３の間、イメージ・キャプチャ・デバイス１０６から得られる。あるいは、イメージデータ１２２は、イメージ・キャプチャ・デバイス１０６を使用することなく、あるリモート・ソースから受け取られたデータファイルから読み出されてもよい。
【００１８】
イメージ１０１を生成するためにイメージ・キャプチャ・デバイス１０６を使用することの長所は、ユーザにとって、イメージ１０１に置くことのできるオブジェクトについてほとんど無制限の可能性があることである。具体的には、図３Ａを参照して、イメージ・キャプチャ・デバイスは、現実のオブジェクト（例えば立方体１０３とシリンダー１０５）を使ってイメージ１０１を生成することができる。それに加えて、イメージ１０１は、稲妻１０７のような手で描いたオブジェクトを使用して生成してもよい。稲妻１０７のようなオブジェクトは、フリーハンドで、普通のペン、鉛筆またはマーカーを使って普通の紙に描いてもよい。これらのオブジェクトは、図３Ｂに示すようにビデオ表示装置に提示されるイメージ１０１の中に現れる。ステップ２０４に示されるように、一旦イメージ１０１がキャプチャされて、イメージデータ１２２としてメモリに格納されるならば、イメージ内の個々のオブジェクトの位置を特定する。イメージ１０１において個々のオブジェクト１０３、１０５、１０７の位置を決めるために利用される従来の画像解析技術がいくつかある。たとえば、オブジェクトの境界は、オブジェクトのエッジまたは境界の特徴であるコントラストの変化を求めてイメージデータ１２２を分析することによって決定される。コントラストは、イメージの近隣の画素の間のグレースケールの明るさの違いとして定義される。より複雑な形は、エッジ検出によって特定される。コントラスト分析またはエッジ検出を通してデジタル・イメージ内のオブジェクトの位置を特定することができる市販の画像解析ソフトウェアプログラムがいくつかある。たとえば、オブジェクトの位置決めのためのフィルタリングツールは、アドビフォトショップに組み込まれている。アドビフォトショップにもエッジ検出のためのフィルタがあり、それはオブジェクトの位置決めのためのアルゴリズムで使われている。アドビフォトショップには「魔法の杖」ツールもあり、オブジェクトの位置決めのために使うことができる。「魔法の杖」ツールは、ここに記述されるものに類似した効果を得るために、エッジ検出と閾値フィルタリングといっしょに使ってもよい。実施の形態において、ポリゴニゼーションを実行する前に、イメージ１０１がこのように処理される。本質的には、オブジェクト位置選定とエッジ検出は「第１のパス」と考えられる。
【００１９】
一旦オブジェクト１０３、１０５、１０７の位置がイメージ１０１内に決められると、ステップ２０６に示されるように、そして、図３Ｃで例示されるように、ポリゴン１１３、１１５、１１７が各オブジェクトのまわりにトレースされる。ポリゴン・データ１２４は、メモリ１２０に格納される。ポリゴンをトレースするための異なる技術がいくつかある。図４Ａ−４Ｄは、そのような技術の例を示す。図４Ａに示すように、複数の境界点４０２がオブジェクト４０１と関連づけられている。各境界点はオブジェクト４０１のエッジまたは境界上の画素であり、イメージデータ１２２上で実行されるコントラスト分析またはエッジ検出によって特定される。境界点は、オブジェクト４０１のエッジに沿って、通常の距離間隔を空けて配置される。境界点の数は、部分的にはオブジェクト４０１のサイズに依存し、部分的にはオブジェクトの境界の複雑さに依存する点に注意する。仮に各境界点４０２が端点として使われるとすると、結果として生じるポリゴンは多数のエッジを持つことになる。多数のエッジがあると、処理時間とリソースが余分に必要となる。長いまっすぐなエッジに対しては比較的少ないライン・セグメントを用い、鋭角に対してはより多くのライン・セグメントを用いることが望ましい。
【００２０】
オブジェクト４０１を囲んでいるポリゴンにおいてライン・セグメントの数を最適化するために、輪郭インストラクション１１４が以下の手続きを実装するように構成される。第１、第２、および第３の境界隣接点は、イメージデータ内で位置決定される。第１の境界点と第２の境界点をつなぐ第１のライン・セグメントと、第１の境界点と第３の境界点をつなぐ第２のライン・セグメントの間の角度が決定される。その角度が閾値未満であるならば、第３のライン・セグメントがポリゴンの辺と関連づけられる。その角度が閾値より大きいならば、第１のライン・セグメントはポリゴンの第１の辺と関連づけられ、第２のライン・セグメントが第１の辺に隣接したポリゴンの第２の辺と関連づけられる。
【００２１】
図４Ａ−４Ｃに示すように、図２のステップ２０６で用いられるポリゴニゼーション・アルゴリズムがオブジェクト４０１の境界に沿って境界画素４０２のいくつかを取り除きながら進み、残った境界画素をライン・セグメントでつなぐ。図４Ａにおいて、交互に画素をシェーディングしたのは、隣接した画素をより容易に識別するためである。実際は、境界画素４０２のすべては、１色の値である。一例として、ポリゴニゼーションは画素毎に進行してもよい。オブジェクト４０１の境界の曲折は、角度に関して言えば、（左から右にオブジェクト４０１の境界を進む）先端４０３に入るときもそこから出るときも非常に鋭い。実際には、画素毎に進行するとき、４５度または９０度の角度で動くことは可能である。それでも、先端の少数の画素、例えば、３ピクセルの先端は無視してもよい。このように、境界画素の除去は距離基準にしたがって決定されるが、先端を除くためには、ローカルな尺度で動作することが望ましい。それで、本当に必要なことは、境界画素４０２のある部分にローカルに線形に適合することである。
【００２２】
一例として、アルゴリズムは、頂点の境界画素から始めて、その頂点画素をライン・セグメントによって一つずつ他の境界画素とつないでいく。各ライン・セグメントに対して、垂直距離ｄが、ライン・セグメントと、以前に別のライン・セグメントによって頂点画素に接続されていた各境界画素の間で計算される。以前に接続されていた各画素からの垂直距離ｄがある閾値距離より小さいならば、その画素は、潜在的な頂点として無視される。以前にライン・セグメントによって画素Ａに接続していた画素に対して、垂直距離ｄが閾値距離以上であるなら、現在の線形適合状態からはほど遠い。図４Ｂ−４Ｃは、ポリゴニゼーションでセグメントを得ることの背後にある原理の具体例を提供する。図４Ｂにおいて、左にある画素Ａ以前のあらゆる境界画素は、既にポリゴニゼーション・アルゴリズムによって取り扱われた。たとえば、図４Ｂに示すように、画素Ａ’と、画素Ａと画素Ｏを結ぶライン・セグメントＡＯとの間の垂直距離は、ある閾値距離ｄより小さい。したがって、画素Ａ’は、潜在的頂点として無視される。垂直距離は、ライン・セグメントＡＯと、画素Ａと画素Ｏの間の各中間画素との間で計算される。これらの垂直距離のどれも閾値より大きくないならば、これらの画素は潜在的頂点として捨てられる。
【００２３】
この処理は画素Ｏに達した後も進み、画素Ａと画素Ｏの間のどんな画素もライン・セグメントＡＯからの垂直距離ｄが閾値より大きくないため、画素Ｏをその時点で頂点として特定しない点に留意する。しかし、一旦プロセスが画素Ｃに達するならば、画素Ｏは、現在のポリゴニゼーションの末端（画素Ａの先端に位置する頂点）と「問題としている点」（潜在的頂点と解釈される画素Ｃ）から形成されたライン・セグメントＡＣから距離‘ｄ’離れている。この時点で、頂点は画素Ｃにおいて追加され、ＡとＣの間の他の画素は潜在的頂点としてクリアされる。オブジェクトがポリゴンで完全に輪郭を描かれるまで、プロセスは再び繰り返す。
【００２４】
ある実施の形態において、ポリゴニゼーションアルゴリズムは、隣接したセグメント間の角度を考慮に入れてもよい。例えば、図４Ｄに示されるような鋭い直角の隅があるオブジェクト４０１を考える。このシナリオでは、直交する辺４０４，４０６を持っているオブジェクト４０１の直角の隅を追跡するポリゴンでオブジェクト４０１の輪郭を描くことが望ましい。好ましくは、ポリゴニゼーション・アルゴリズムは、画素Ａ、画素Ｏ、下の辺４０６に沿った他の画素（例えば画素Ｃ）に頂点を置くことを含む。画素Ｃが追加されることに留意する。しかし、辺４０６は画素Ｏの後、直線になるため、この例では技術的には必要ではない。したがって、頂点として画素Ｃを加えることは、冗長である。
【００２５】
しかし、仮に図４Ｂに関して上述の提案されたアルゴリズムが、図４Ｃに示されるオブジェクト４０１に適用されるならば、画素Ａと画素Ｃだけが頂点として特定されるだろう。隅に位置する画素Ｏが（以前の例のように）不必要とみなされるためである。しかし、頂点として画素Ｏを含むことは、美学的には望ましい。ほとんどの場合、これは、人々は、スムーズな形に角度がつけられることには問題を感じない（私たちが技術的にどちらのケースでも精度を失ってるため）が、斜めになった箱を見るのは不愉快であることによる。
【００２６】
要約すると、角度検出は、均一で行儀が良い形を拾うことにはたけている。人がポリゴンを描くならば、たとえば、角度検出が大いに作用するだろう。なぜなら、アルゴリズムはまっすぐなセグメントを予想し、曲がることに敏感であるからである。しかし、角度検出は、図４Ａに示されるようなジャギーな特徴を取り除くことについては劣っている。ジャギーはユーザが生成したコンテンツには存在することがある。たとえば、人々はたいていは完全にまっすぐには描かないためである。
【００２７】
したがって、図４Ｂと角度検出に関して先に述べたように、ポリゴニゼーションは距離検出のハイブリッドを伴ってもよい。具体的には、問題となる点Ｏが距離に基づいてポリゴンにおけるブレーク（新しい頂点）をトリガーしたあと、形成された三角形において長さＡＣ／ＯＢの比率についてチェックが実行される。この比率がある予め定められた閾値未満であるならば、問題となる点Ｏは頂点としてポリゴニゼーションに加えられる。一例として、およそ２の閾値は、経験的なテストからうまく作用することがわかった。
【００２８】
場合によっては、ポリゴニゼーションから画素Ｃ上の頂点を（もしそれが必要でないならば）取り除くことが望ましい。これは必要でないかもしれない。まれで損害を与えないケースである傾向があるためである。しかし、ポリゴニゼーションにおいて頂点の数を減らすためには、全体の完成したポリゴニゼーションの第２パスを実行し、同じ比率テストを用いるが、ずっと厳しい比率の尺度（例えば７または１０の指数）で、点を取り除く。さもなければ、ポリゴン４０１の全体が「まっすぐ」になり、特徴が失われてしまう。
【００２９】
ポリゴンがイメージ１０１の各オブジェクトのまわりでトレースされた後、図２のステップ２０８に示されるように、ポリゴン１１３、１１５、１１７に包含されるイメージの部分がイメージから切り離される。一例として、ポリゴン１１３、１１５、１１７に包含されるイメージ１０１の部分は、アセット・データ１２６としてメモリ１２０に格納される。
【００３０】
イメージ・キャプチャを使用することにより、イメージ１０１の残りの部分からポリゴン１１３、１１５、１１７によって囲まれた部分を切り離すとき、面白い視覚的効果を手にすることができる。たとえば、図５Ａ−５Ｄは、背景がアセットの生成に含まれる方法の例を例示する。具体的には、図５Ａに示すように、模様のついた背景５０２のデジタル・イメージが、イメージ・キャプチャ・デバイス１０６によってキャプチャされ、イメージデータ１２２の一部として格納される。オブジェクト５０３、５０５、５０７は、一枚の紙のような平坦な背景５０４の上に置かれるか、オブジェクトを含むイメージ５０１がキャプチャされ、図５Ｂに示すようなイメージデータ１２２の一部として格納される。その後、オブジェクト５０３、５０５、５０７をそれぞれ囲んでいるポリゴン５１３、５１５、５１７を表すデータが、上述のように生成され、図５Ｃに示すようなポリゴン・データ１２４として格納される。その後、オブジェクト５０３、５０５、５０７を含むポリゴン５１３、５１５、５１７は、平坦な背景５０４から切り離され、オブジェクトによって以前占有されていた空間は、図５Ｄに示すように模様のついた背景５０２の対応する部分で補充される。
【００３１】
ステップ２１０に示されるように、その切り離された部分は、シミュレーション環境に対するアセットと関連づけられる。アセット・データ１２６をアセットと関連づけるいくつかの異なる方法がある。切り離された部分をアセットと結びつけることには、シミュレーションされた物理学特性を切り離された部分と関連づけることが含まれる。シミュレーションされた物理学特性には、サイズ、重さ、その他の物理的性質の他、可動性（例えば、アセットは固定されているか、移動可能か）、境界衝突特性（例えば、アセットは他のアセットの中を貫通することができるかどうか）が含まれる。さらに、回転中心がオブジェクトと関連づけられてもよい。たとえば、重心（例えば質量中心またはそれと等価なもの）がオブジェクトに対して計算され、オブジェクトを回転させるための回転中心として使われてもよい。
【００３２】
本発明の実施の形態によれば、コントローラ１０２によって、一つのイメージから自動的に異なるタイプのゲーム・アセットを生成することもできる。たとえば、図６Ａ−６Ｂで例示されるように、あるビデオゲームアプリケーションにおいて、アバターと地形の両方を生成することが望ましい。図６Ａに示すように、ユーザは平坦な背景６０２（例えば一枚の紙）の上に２つ以上のオブジェクト６０３、６０５を描く。デジタル・イメージ・キャプチャ・デバイス１０６は、これらのオブジェクトのデジタル・イメージ６０１をキャプチャする。イメージ６０１は、イメージデータ１２２の一部としてメモリ１２０で格納される。上述の技術を使用して、図６Ｂで示すように、オブジェクト６０３、６０５を囲むポリゴン６１３、６１５を表すデータ１２４が生成される。ポリゴン６１３、６１５によって囲まれているデジタル・イメージ６０１の部分は、デジタル・イメージ６０１の残りから切り離される。これらの部分は、アセット・データ１２６として格納される。一つの部分は対話型エンターテインメントプログラムの中のアバターとして使われ、もう一つの部分は対話型環境の地形として使われる。
【００３３】
どの部分がアバターとして使われるか、地形機能としてどの部分を使うべきかを決定するためのいくつかの異なる方法がある。一例として、一般性を損なうことなく、この決定は、イメージにおいて２つのオブジェクトの相対的なサイズに基づいてもよい。具体的には、第１のオブジェクト６０３は、第２のオブジェクト６０５よりも小さい。相対的なサイズは、対応しているポリゴン６１３、６１５の領域から決定される。一例として、より大きなポリゴン６１５は地形と関連づけられ、より小さなポリゴン６１３はアバターと関連づけられる。あるいは、この決定はポリゴン６１３、６１５の相対的な位置関係に基づいてもよい。たとえば、イメージ６０１の上側６１９に最も近いポリゴン６１３は、アバターと関連づけられる。他のポリゴン６１５はいずれも地形と関連づけられる。
【００３４】
先の例では二次元のアセットの生成を例示したが、本発明の実施の形態はそのようなアセットの生成に限られない。本発明の実施の形態は、二次元のイメージから三次元のアセットを生成するためにも利用される。図７Ａ−７Ｃは、そのような三次元アセットの生成の一例を示す。具体的には、図７Ａに示すように、二次元のパターン７０２は、平坦な背景７０１（例えば一枚の紙）の上に描かれる。イメージは、イメージデータ１２２として格納される。その後、上述の技術を使用して、二次元のパターン７０２のいろいろな部分を囲むポリゴン７１２を表すデータ１２４が図７Ｂに示すように生成される。ポリゴン７１２は、その後、図７Ｃで示すように三次元形状７２２に投射される。ポリゴン７１２の三次元形状７２２への投射は、三次元アセット・データ１２６を作るために、ポリゴン・データ１２４を適切に操作することによって実現される。図７Ｃに示された例では、ポリゴンの面に対して垂直な軸に沿って二次元のポリゴン７１２を単純な円筒図法で投射する。
【００３５】
図７Ａ−７Ｃに示されるような技術を用いて、ユーザは迷路のパターンを普通の紙に描いて、イメージ・キャプチャ・デバイス１０６でその迷路パターンをキャプチャする。コントローラ１０２は、その後、ビデオゲームまたはシミュレーション環境において使用する三次元迷路を生成する。
【００３６】
一例として、本発明の実施の形態によれば、上述のシステム１００は、図８に示すような装置８００を用いて実装される。一例として、一般性を損なうことなく、装置８００は、本発明の実施の形態を実行するのにふさわしいコンピューターシステム（例えばパーソナルコンピュータ、テレビゲーム機、パーソナル携帯情報機器または他のデジタル装置）として実装される。装置８００は、ソフトウェアアプリケーションと任意であるがオペレーティングシステムを走らせるように構成された中央演算処理装置（ＣＰＵ）８０５を含む。ＣＰＵ８０５は、一つ以上のプロセッシングコアを含む。一例として、これに限定するものではないが、ＣＰＵ８０５はセルプロセッサのような並列プロセッサモジュールであってもよい。セルプロセッサアーキテクチャの例は、「セルブロードバンドエンジンアーキテクチャ」に詳細が記述されている。これは、ＩＢＭ、ソニー・コンピュータエンタテインメント、東芝の２００５年８月８日付けの著作権で保護されており、コピーはｈｔｔｐ：／／ｃｅｌｌ．ｓｃｅｉ．ｃｏ．ｊｐ／からダウンロード可能であり、その内容全体を参照によってここに組み入れる。
【００３７】
メモリ８０６はＣＰＵ８０５に接続される。メモリ８０６は、ＣＰＵ８０５が使用するためのアプリケーションとデータを格納する。メモリ８０６は、集積回路（例えばＲＡＭ、ＤＲＡＭ、ＲＯＭ、など）の形態をとる。コンピュータプログラム８０１は、プロセッサ８０５上で実行することができるインストラクションの形で、メモリ８０６に格納される。プログラム８０１のインストラクションは、例えば、図１〜図７Ｃを参照して上述したように、シミュレーション環境のためのアセットを生成する方法の特定のステップを実装するために構成される。一例として、アセット生成プログラム８０１は、ａ）自動的にデジタルイメージ内のオブジェクトの輪郭をデジタル的にトレースすることにより、輪郭をトレースするためにユーザからのさらなる入力に頼ることなく、オブジェクトを包含する２次元のポリゴンを表すデータを生成し、ｂ）２次元ポリゴンによって囲まれたイメージの部分をデジタルイメージの残りから切り離し、ｃ）２次元ポリゴンによって囲まれたイメージの部分をシミュレーション環境におけるアセットと関連づけるためのインストラクションを含む。
【００３８】
プログラム８０１は、対話型環境を実装するために構成されたインストラクションとともに動作する。一例として、そのようなインストラクションは、メインプログラム８０３（例えばビデオ・ゲームプログラム）の一部である。あるいは、メインプログラム８０３は仮想世界とインターフェイスするためのプログラムである。シミュレーション環境に対してユーザがインタラクションする間、カメラ経路に沿ったカメラＰＯＶの動きに応じて、カメラＰＯＶが変わるとき、メインプログラム８０３は、ビデオディスプレイ上にカメラＰＯＶからのシミュレーション環境の一部のシーンを表示し、そのシーンを変えるように構成される。メインプログラム８０３は、物理シミュレーション８０４およびカメラ管理８０７のためのインストラクションを含む。メモリ８０６は、いろいろなアセット、たとえば、アバター、地形特徴、およびシミュレーション環境で使われるその他のオブジェクトを表すアセットデータ８０９を含む。メインプログラム８０３は、アセット生成プログラム８０１、物理シミュレーション・インストラクション８０４、カメラ管理インストラクション８０７、およびアセットに関するインストラクションおよび／またはデータ８０９を呼び出す。
【００３９】
装置８００は、周知の支援機能８１０として、例えば、入出力（Ｉ／Ｏ）エレメント８１１、電源（Ｐ／Ｓ）８１２、クロック（ＣＬＫ）８１３およびキャッシュ８１４が含まれる。装置８００は、さらに、アプリケーションとデータを格納するための不揮発性のストレージを提供するストレージ・デバイス８１５を含む。ストレージ・デバイス８１５は、リモート・コンテンツ・サーバ（図示せず）からダウンロードされた、広告のような補助コンテンツ・アセット８１６を一時的または長期的に保管するために使われる。一例として、ストレージ・デバイス８１５は固定ディスク装置、取り外し可能なディスクドライブ、フラッシュメモリ・デバイス、テープ装置、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ブルーレイ（商標または登録商標）、ＨＤ−ＤＶＤ、ＵＭＤまたは他の光ストレージ・デバイスである。
【００４０】
ユーザ入力デバイス８２０は、ユーザから装置８００に対するユーザー入力を伝えるために用いられる。一例として、ユーザ入力デバイス８２０は、Ｉ／Ｏエレメント８１１を通して装置８００に接続される。適当な入力装置８２０の例は、キーボード、マウス、ジョイスティック、タッチパッド、タッチスクリーン、ライトペン、静止画またはビデオのカメラ、および／またはマイクを含む。装置８００は、電子通信ネットワーク８２７を介したコミュニケーションを容易にするためのネットワークインターフェース８２５を含む。ネットワークインターフェース８２５は、ローカルエリアネットワークとインターネットのようなワイドエリアネットワーク上で有線または無線のコミュニケーションを実装するために構成される。装置８００は、ネットワーク８２７を介してメッセージパケット８２６によってデータやファイルの要求を送受信する。
【００４１】
装置８００は、グラフィックプロセッシングユニット（ＧＰＵ）８３５とグラフィックスメモリ８４０とを有するグラフィックス・サブシステム８３０を更に含む。グラフィックスメモリ８４０は、出力イメージの各画素に対する画素データを格納するために使われるディスプレイメモリ（例えばフレーム・バッファ）を含む。グラフィックスメモリ８４０は、ＧＰＵ８３５と同じデバイス内に統合されてもよく、別のデバイスとしてＧＰＵ８３５に結合されてもよく、メモリ８０６内に実装されてもよい。画素データは、ＣＰＵ８０５から直接グラフィックスメモリ８４０に提供される。あるいは、ＣＰＵ８０５は、所望の出力イメージを定めるデータやインストラクションをＧＰＵ８３５に提供する。ＧＰＵ８３５はそれを用いて出力イメージの画素データを生成する。所望出力イメージを定めるデータやインストラクションは、メモリ８０６やグラフィックスメモリ８４０に格納される。ある実施の形態では、ＧＰＵ８３５は、例えば、適当なプログラミングまたはハードウェア・コンフィギュレーションによって構成され、シーンのためにジオメトリ、ライティング（照明）、シェーディング、テクスチャリング、モーション、および／またはカメラパラメータを定めるインストラクションとデータから出力イメージに対する画素データを生成するための３Ｄレンダリング機能をもつ。ＧＰＵ８３５は、シェーダプログラムを実行することができるプログラム可能な実行ユニットを更に含む。
【００４２】
グラフィックス・サブシステム８３０は、ビデオ表示装置８５０で表示されるべきグラフィックスメモリ８４０からのイメージに対する画素データを周期的に出力する。ビデオ表示装置８５０は、装置８００からの信号に応じてビジュアル情報を表示することができる任意のデバイスであり、ＣＲＴ、ＬＣＤ、プラズマ、およびＯＬＥＤディスプレイを含む。装置８００は、表示装置８５０にアナログまたはデジタル信号を提供する。一例として、ディスプレイ８５０はテキスト、数字、グラフィカルシンボルまたはイメージを表示するＣＲＴまたはフラットパネルのスクリーンを含む。さらに、ディスプレイ８５０は、可聴もしくは検知可能な音を出すオーディオスピーカーを含む。そのような音の生成を容易にするために、装置８００は、ＣＰＵ８０５、メモリ８０６、および／またはストレージ８１５によって提供されたインストラクションおよび／またはデータからアナログまたはデジタル音声出力を生成するために適したオーディオプロセッサ８５５を更に含む。イメージ・キャプチャ・デバイス８６０は、Ｉ／Ｏ機能８１１を介して装置８００に接続されている。上述のように、イメージ・キャプチャ・デバイス８６０はデジタルカメラであってもよい。
【００４３】
ＣＰＵ８０５、メモリ８０６、支援機能８１０、データストレージ８１５、ユーザ入力デバイス８２０、ネットワークインターフェース８２５、およびオーディオプロセッサ８５５を含む装置８００の構成要素は、データバス８７０を介して互いに機能的に接続されている。これらの構成要素は、ハードウェア、ソフトウェアまたはファームウェア、あるいはこれらのうちの２つ以上の組合せで実装される。
【００４４】
デジタルカメラのようなデバイスを使用して容易にイメージをキャプチャすることにより、例えばペン、鉛筆、消しゴム、カップ、おもちゃのような、シミュレーション環境のアセットの基礎となる、実質的に無制限の種類の日常的なオブジェクトを使うことができるようになる。ほとんどコンピュータ・グラフィックスの知識がなく、芸術的な能力もほとんどないか、皆無であるユーザであっても、本発明の実施の形態を使ってカスタマイズされたアセットを迅速かつ容易に生成することができる。さらに、イメージ・キャプチャのおかげで、手で描いたオブジェクトをアセットの基礎として使うことが可能になる。このように、カスタマイズされたアセットは、普通の紙、黒板、ホワイトボードまたは他の描画面上に手で描かれた図面から手早く生成することができる。さらに、複数の現実の、あるいは描かれたオブジェクトを写真に撮って、その結果生じるイメージ内の各オブジェクトを切り離して、シミュレーション環境内の異なるアセットに関連づけてもよい。
【００４５】
本発明の好ましい実施の形態を完全な形で説明してきたが、いろいろな代替物、変形、等価物を用いることができる。したがって、本発明の範囲は、上記の説明を参照して決められるものではなく、請求項により決められるべきであり、均等物の全範囲も含まれる。ここで述べた特徴はいずれも、好ましいかどうかを問わず、他の特徴と組み合わせてもよい。請求項において、明示的に断らない限り、各項目は１またはそれ以上の数量である。請求項において「〜のための手段」のような語句を用いて明示的に記載する場合を除いて、請求項がミーンズ・プラス・ファンクションの限定を含むものと解してはならない。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施の形態による、シミュレーション環境に対するインタラクションを促進するように構成されたシステムの一例を示す３次元ダイアグラムである。
【図２】本発明の実施の形態による、シミュレーション環境のためにアセットを生成する例を示すフローチャートである。
【図３Ａ】本発明の実施の形態による、シミュレーション環境システムのためにアセットを生成することの例を示す３次元ダイアグラムである。
【図３Ｂ】本発明の実施の形態による、シミュレーション環境システムのためにアセットを生成することの例を示す３次元ダイアグラムである。
【図３Ｃ】本発明の実施の形態による、シミュレーション環境システムのためにアセットを生成することの例を示す３次元ダイアグラムである。
【図４】デジタル・イメージにおいてオブジェクトの輪郭をたどるための技術の例を示すダイアグラムである。
【図５Ａ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。
【図５Ｂ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。
【図５Ｃ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。
【図５Ｄ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。
【図６Ａ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。
【図６Ｂ】本発明の別の実施の形態による、シミュレーション環境システムのためにアセットを生成する例を示す３次元ダイアグラムである。にアセットを生成する例を示す３次元ダイアグラムである。
【図７Ａ】本発明の別の実施の形態による、シミュレーション環境システムのために３次元のアセットを生成する例を示す３次元ダイアグラムである。
【図７Ｂ】本発明の別の実施の形態による、シミュレーション環境システムのために３次元のアセットを生成する例を示す３次元ダイアグラムである。
【図７Ｃ】本発明の別の実施の形態による、シミュレーション環境システムのために３次元のアセットを生成する例を示す３次元ダイアグラムである。
【図８】本発明の実施の形態による、クライアント・デバイスの例を示すブロックダイヤグラムである。
【図２】
0004851504.tif 000002
【図４】
0004851504.tif 000003
【図８】
0004851504.tif 000004
【図１】
0004851504.tif 000005
【図３Ａ】
0004851504.tif 000006
【図３Ｂ】
0004851504.tif 000007
【図３Ｃ】
0004851504.tif 000008
【図５Ａ】
0004851504.tif 000009
【図５Ｂ】
0004851504.tif 000010
【図５Ｃ】
0004851504.tif 000011
【図５Ｄ】
0004851504.tif 000012
【図６Ａ】
0004851504.tif 000013
【図６Ｂ】
0004851504.tif 000014
【図７Ａ】
0004851504.tif 000015
【図７Ｂ】
0004851504.tif 000016
【図７Ｃ】
0004851504.tif 000017