(57)【特許請求の範囲】
【請求項１】
少なくとも２つのオブジェクトを備える仮想環境を表す画像を生成する方法であって、前記仮想環境がビューポイントから観察され、
第２のオブジェクトの第２の断片が前記ビューポイントから観察方向に従って離れている距離を表す、第２の情報項目を計算するステップと、
前記第２の情報項目と、第１のオブジェクトの第１の断片が前記ビューポイントから前記観察方向に従って離れている距離を表す第１の情報項目であって、第１のバッファメモリに記憶された前記第１の情報項目とを比較するステップであって、
前記第２の情報項目が前記第１の情報項目より小さい場合に限って、前記第２の断片に関連付けられた属性を表す、第３の情報項目を計算し、前記第２の情報項目を第２のバッファメモリに記憶し、前記第３の情報項目を第３のバッファメモリに記憶し、
前記第２の情報項目が前記第１の情報項目より大きい場合、前記第１の情報項目を前記第２のバッファメモリに記憶する、前記比較するステップと、を含み、
前記第１のバッファメモリと前記第２のバッファメモリは、前記第１のバッファメモリと前記第２のバッファメモリのうちの一方が読取りアクセス可能になり、他方が書込みアクセス可能になるように交互に用いられる、
前記方法。
【請求項２】
前記第１、第２、および第３のバッファメモリは、グラフィカルプロセッサユニットのレンダバッファタイプのメモリである、請求項１に記載の方法。
【請求項３】
前記第１の情報項目および前記第２の情報項目のうち最小値を有する情報項目が、第４のバッファメモリに記憶される、請求項１または２に記載の方法。
【請求項４】
前記第３の情報項目は、前記第３のバッファメモリにコピーされる前に前記第２のバッファメモリに一時的に記憶される、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記第２の情報項目が前記第１の情報項目より大きい場合、前記第１の断片に関連付けられた属性を表す、第４の情報項目が、前記第３のバッファメモリに記憶される、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記第４の情報項目は、前記第３のバッファメモリにコピーされる前に前記第１のバッファメモリに一時的に記憶される、請求項５に記載の方法。
【請求項７】
前記計算するステップと、前記比較するステップと、前記記憶することとが、前記第２のオブジェクトの各第２の断片に対して繰り返される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記仮想環境の前記少なくとも２つのオブジェクトを、前記ビューポイントに対して最も近いものから最も遠いビューポイントまでの前記ビューポイントに対するそれぞれの距離に従って分類するステップであって、前記第１のオブジェクトが、前記第２のオブジェクトより前記ビューポイントに近い、ステップを含む、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記第１のオブジェクトの各断片が前記ビューポイントから離れている距離を表す情報を用いて前記第１のバッファメモリを初期化するステップを含む、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
少なくとも２つのオブジェクトを備える仮想環境を表す画像を生成するように構成される装置であって、前記仮想環境がビューポイントから観察され、前記装置は、
第２のオブジェクトの第２の断片が前記ビューポイントから観察方向に従って離れている距離を表す、第２の情報項目を計算し、
前記第２の情報項目と、第１のオブジェクトの第１の断片が前記ビューポイントから前記観察方向に従って離れている距離を表す第１の情報項目であって、第１のバッファメモリに記憶された前記第１の情報項目とを比較し、
前記第２の情報項目が前記第１の情報項目より小さい場合に限って、前記第２の断片に関連付けられた属性を表す第３の情報項目が計算され、前記第２の情報項目が第２のバッファメモリに記憶され、前記第３の情報項目が第３のバッファメモリに記憶され、
前記第２の情報項目が前記第１の情報項目より大きい場合、前記第１の情報項目が前記第２のバッファメモリに記憶される、
ように構成される少なくとも１つのプロセッサを備え、
前記第１のバッファメモリと前記第２のバッファメモリは、前記第１のバッファメモリと前記第２のバッファメモリのうちの一方が読取りアクセス可能になり、他方が書込みアクセス可能になるように交互に用いられる、前記装置。
【請求項１１】
前記第１、第２、および前記第３のバッファメモリは、グラフィカルプロセッサユニットのレンダバッファタイプのメモリである、請求項１０に記載の装置。
【請求項１２】
前記第１の情報項目および前記第２の情報項目のうち最小値を有する情報を記憶するための第４のバッファメモリを備える、請求項１０または１１に記載の装置。
【請求項１３】
前記少なくとも１つのプロセッサは、グラフィカルプロセッサユニット（ＧＰＵ）である、請求項１０から１２のいずれか一項に記載の装置。
【請求項１４】
コンピュータープログラムであって、前記コンピュータープログラムがコンピューターで実行されると請求項１から９のいずれか一項に従う方法のステップを実行するためのプログラムコードの命令を含む、前記コンピュータープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、合成画像の構成の分野に関し、より具体的には、仮想環境における隠蔽の推定の分野に関する。本発明は、ライブ構成のための特殊効果のコンテキストにおいても理解される。
【背景技術】
【０００２】
先行技術によれば、仮想環境または３Ｄシーン（すなわち３次元のシーン）における可視性の問題に対処するために、ｚバッファ（ｚ−ｂｕｆｆｅｒ）アルゴリズムとして知られている方法を用いることが知られている。仮想環境の可視性に対処することは、環境のどのオブジェクトまたはオブジェクト部分がビューポイントから可視であるか、また、どのオブジェクトまたはオブジェクト部分が可視でないかを判断し、可視のオブジェクトまたはオブジェクト部分のみを表示することにある。この技法によれば、ｚバッファは、例えば仮想環境のそれぞれのピクセルの最大深度を用いて初期化される。次いで、仮想環境の各オブジェクトが表示される、すなわち、オブジェクトを形成する表面の断片（ｆｒａｇｍｅｎｔ）に関連付けられた属性（例えば色）が計算されて、検討しているオブジェクトの各断片に関連付けられた深度が推定され、次いでｚバッファの中の対応するピクセルの深度値と比較される。オブジェクトの断片に関連付けられた深度が、関連付けられたピクセルについてｚバッファに記憶された深度未満であると、次いで、この断片に関連付けられた深度が、ｚバッファの中の初期深度の代わりに記憶され、ｚバッファの各ピクセルについて同様に処理される。この処理は、仮想環境の各オブジェクトに対して繰り返され、処理が終了すると、ｚバッファには、仮想環境のオブジェクトの、ビューポイントに最も近い断片、すなわちビューポイントから可視の断片に関連付けられた深度が含まれる。これらの可視の断片の属性は、次いで、ビューポイントからの仮想環境の画像の最終的な表示を描画するために、画像の各ピクセルに関連付けられる。この技法の問題の１つは、ビューポイントからはこれらの断片の一部分しか可視でしかないにもかかわらず、各オブジェクトの表面の断片のすべての属性を計算する必要があることである。したがって、ビューポイントからの仮想環境を表す画像の最終表示で実際に役立つのは、計算された属性のうちの一部でしかない。
【０００３】
仮想環境における可視性の解決のため、いくつかの先進の技法があり、これらの技法は、仮想環境の別のゾーンから可視のゾーンを決定しようとするものであって、ビューポイントを含んでいるゾーンにおいて可視のオブジェクトまたはオブジェクト部分だけが表示される。これらの技法は、計算を低減することができるが、仮想環境の前処理が必要となり、可視性問題の生の解決が必要とされる動的環境には不適当である。
【０００４】
特に３次元（３Ｄ）での相互通信型シミュレーションゲームおよびアプリケーションの出現に伴って、可視性の推定、すなわち高品質かつ現実的で迅速な隠蔽推定を提供するライブシミュレーション方法の必要性が感じられている。
【発明の概要】
【０００５】
本発明の目的は、従来技術のこれらの欠点の少なくとも１つを克服することである。
【０００６】
より具体的には、本発明の目的は、特に、仮想環境の隠蔽をライブで推定するのに必要な計算時間および／または計算力を最適化して、現実的な表示を生成することである。
【０００７】
本発明は、少なくとも２つのオブジェクトを備える仮想環境の隠蔽を推定する方法に関し、仮想環境は、あるビューポイントから観察されたものであり、この方法は、
−  観察方向に従って、第２のオブジェクトの第２の断片がビューポイントから離れている距離を表す、第２の情報項目を推定するステップと、
−  第２の情報項目と、前記観察方向に従って第１のオブジェクトの第１の断片がビューポイントから離れている距離を表し、第１のバッファメモリに記憶されている、第１の情報項目とを比較するステップであって、
・第２の情報項目が第１の情報項目より小さい場合に限って、第２の断片に関連付けられた属性を表す第３の情報項目を推定し、第２の情報項目を第２のバッファメモリに記憶し、第３の情報項目を第３のバッファメモリに記憶し、
・第２の情報項目が第１の情報項目より大きい場合、第１の情報項目を第２のバッファメモリに記憶し、
第１のバッファメモリ（２１、６１）と第２のバッファメモリ（２２、６２）は、一方が読取りアクセス可能になり、他方が書込みアクセス可能であるように、交互に使用される、
前記比較するステップとを含む。
【０００８】
特定の特徴によれば、第１のバッファメモリ、第２のバッファメモリおよび第３のバッファメモリは、グラフィックプロセッサの表示バッファメモリのタイプのメモリである。
【０００９】
有利には、第１の情報項目および第２の情報項目のうち最小値を有する情報項目のが、第４のバッファメモリに記憶される。
【００１０】
特定の特徴によれば、第３の情報項目は、第３のバッファメモリにコピーされる前に第２のバッファメモリに一時的に記憶される。
【００１１】
有利には、第３の情報項目は、第３のバッファメモリにコピーされる前に第２のバッファメモリに一時的に記憶される。
【００１２】
特定の特徴によれば、第２の情報項目が第１の情報項目より大きいとき、第１の断片に関連付けられた属性を表す、第４の情報項目が、第３のバッファメモリに記憶される。
【００１３】
別の特徴によれば、第４の情報項目は、第３のバッファメモリにコピーされる前に第１のバッファメモリに一時的に記憶される。
【００１４】
有利には、推定するステップと、比較するステップと、記憶することとが、第２のオブジェクトのそれぞれの第２の断片に対して繰り返される。
【００１５】
特定の特徴によれば、この方法は、仮想環境の少なくとも２つのオブジェクトを、ビューポイントに最も近いビューポイントから最も遠いビューポイントまでのそれぞれの距離に従って分類するステップを含み、第１のオブジェクトは第２のオブジェクトよりビューポイントに近い。
【００１６】
別の特徴によれば、この方法は、第１のオブジェクトのそれぞれの断片がビューポイントから離れている距離を表す情報を用いて第１のバッファメモリを初期化するステップを含む。
【００１７】
本発明は、少なくとも２つのオブジェクトを備える仮想環境を表す画像を生成するためのモジュールにも関し、仮想環境は、あるビューポイントから観察されたものであり、このモジュールは、
−  観察方向に従って、第２のオブジェクトの第２の断片がビューポイントから離れている距離を表す、第２の情報項目を推定するための推定手段と、
−  第２の情報項目と、前記観察方向に従って、第１のオブジェクトの第１の断片がビューポイントから離れている距離を表す、第１のバッファメモリに記憶された第１の情報項目とを比較するための比較手段であって、
・第２の情報項目が第１の情報項目より小さい場合に限って、第２の断片に関連付けられた属性を表す、第３の情報項目が推定され、第２の情報項目が第２のバッファメモリに記憶され、また、第３の情報項目が第３のバッファメモリに記憶され、
・第２の情報項目が第１の情報項目より大きい場合、第１の情報項目が第２のバッファメモリに記憶され、
第１のバッファメモリと第２のバッファメモリは、一方が読取りアクセス可能であり、他方が書込みアクセス可能であるように、交互に用いられる、前記比較手段とを備える。
【００１８】
有利には、第２のバッファメモリおよび第３のバッファメモリは、グラフィックプロセッサの表示バッファメモリのタイプのメモリである。
【００１９】
特定の特徴によれば、このモジュールは、第１の情報項目および第２の情報項目のうち最小値を有する情報項目を記憶するための第４のバッファメモリを備える。
【００２０】
本発明は、このようなモジュールを備えるグラフィックプロセッサにも関する。
【００２１】
以下の添付図面を参照する説明を読めば、本発明がよりよく理解されるはずであり、他の特定の特徴および利点が明らかになるであろう。
【図面の簡単な説明】
【００２２】
【図１】本発明の特定の実施形態にしたがってビューポイントから見た仮想環境を概略的に示す図である。
【図２】本発明の特定の実施形態にしたがって図１の仮想環境を表示するためのバッファメモリの配置を示す図である。
【図３】本発明の特定の実施形態にしたがって図１の仮想環境のオブジェクトを表示するための図２のバッファメモリの管理を概略的に示す図である。
【図４】本発明の特定の実施形態にしたがって図１の仮想環境のオブジェクトを表示するための図２のバッファメモリの管理を概略的に示す図である。
【図５】本発明の特定の実施形態にしたがって図１の仮想環境のオブジェクトを表示するための図２のバッファメモリの管理を概略的に示す図である。
【図６】本発明の別の特定の実施形態にしたがって図１の仮想環境を表示するためのバッファメモリの配置を示す図である。
【図７】本発明の特定の実装形態にしたがって図１の仮想環境の隠蔽を推定する方法を実装する装置を示す図である。
【図８】本発明の２つの特定の実装形態にしたがって図１の仮想環境の隠蔽を推定する方法を示す図である。
【図９】本発明の２つの特定の実装形態にしたがって図１の仮想環境の隠蔽を推定する方法を示す図である。
【発明を実施するための形態】
【００２３】
図１は、例えば仮想環境１の観客など、ビューポイント１０から見た仮想環境または仮想シーン（３Ｄシーンとも称される）１を示す。仮想環境１は、当業者に公知の任意の方法にしたがってモデル化された、いくつかの仮想オブジェクト１１、１２、１３および１４を備え、上記モデル化の方法には、例えば、モデルが、多角形を構成する頂点および辺のリストによってそれぞれ定義された１組の多角形に同化される多角形のモデル化と、モデルが、制御頂点によって生成された１組の曲線によって定義される、ＮＵＲＢＳ（Ｎｏｎ  ｕｎｉｆｏｒｍ  ｒａｔｉｏｎａｌ  ｂａｓｉｃ  ｓｐｌｉｎｅ：不均一な合理的基本スプライン）タイプの曲線のモデル化と、表面の細分化によるモデル化とがある。仮想オブジェクトは、実環境（例えば、地面、家または家の前面、自動車、木、すなわち、家の一部分、街路、町、地方などの環境を構成する任意の要素）または想像上の要素を構成する（実在の、または架空の）オブジェクトの（モデル化によって得られる）任意の仮想表現と理解される。仮想環境の各オブジェクト１１、１２、１３および１４は、それを覆う表面によって特徴付けられ、それぞれのオブジェクトの表面は、それに特有の（表面により１つまたはいくつかの方向に反射される入射光の割合に対応する）反射率特性を有する。有利には、オブジェクトの表面の反射率は、光を反射するオブジェクトのゾーン（表面のゾーンは、表面の１つまたはいくつかのポイントを含む）に応じて変化する、すなわち、オブジェクトの表面の反射率は一定ではない。変形形態によれば、オブジェクトの表面の反射率は、オブジェクトの表面のいかなるポイントでも一定である。図１の例によると、観客１０は、観察方向１００により、オブジェクト１１の表面のポイントＰ１  １１０を見ているが、ここで、ポイントＰ１  １１０は、観察方向１００と、起点としてビューポイント１０を有するこの観察方向を通して遭遇した仮想環境１の第１のオブジェクト、すなわちオブジェクト１１との間の交点に相当する。ビューポイント１０から見た仮想環境１の部分は、視覚円錐（ｖｉｅｗｉｎｇ  ｃｏｎｅ）１０１によって表され、この視覚円錐は、視覚方向１００および視覚方向１０２を含む非常に多くの視覚方向から成る。オブジェクト１２の表面に属するポイントＰ３  １２１は、視覚方向１０２と、この方向１０２で遭遇する仮想環境１の第１のオブジェクト、すなわちオブジェクト１２との間の第１の交点に相当する。観察方向１００を拡張することにより、この視覚方向と、第２の仮想オブジェクト１２との間の交点が得られ、この交点はポイントＰ２  １２０で表される。ビューポイント１０がポイントＰ１  １１０から離れている距離は、ビューポイント１０に対するポイントＰ１の深度と称され、これは、ビューポイントに対するポイントＰ２の深度と称される、ビューポイント１０がポイントＰ２  １２０から離れている距離よりも短い。Ｐ１の深度がＰ２の深度未満であるため、ビューポイントを介して可視であるのはポイントＰ１であり、ポイントＰ２はＰ１によって隠されている。したがって、ポイントＰ１に関連付けられたオブジェクト１１の表面の断片の属性を使用して、観察方向１００を介してビュー��イント１０から見える仮想環境１を表す画像のピクセルを定義することができる。ポイントＰ３  １２１はオブジェクト１１のポイントによって隠されておらず、ポイントＰ３  １２１は、ビューポイントから可視であり、ポイントＰ３に関連付けられたオブジェクト１２の表面の断片の属性を使用して、観察方向１０２を介してビューポイント１０から見える仮想環境１を表す画像のピクセルを定義することができる。断片がビューポイントから可視である場合、その断片はピクセルになる。断片は、有利には、ディスプレイスクリーン上に仮想環境を表すのに表示されることとなる、画像のピクセルのサイズの仮想環境１のポイントに関連付けられた表面要素に相当する。有利には、この断片は、以下のデータ項目の１つまたはいくつかを一緒にグループ化する１組のデータによって定義される。
−  断片のラスタ化の位置、
−  ビューポイントにおける断片の深度、
−  属性（例えば色、テクスチャ座標）、
−  断片の透過特性を表すアルファチャネル。
仮想環境１は、有利には、１つまたはいくつかの光源（図示せず）を備える照明環境によって照明される。
【００２４】
図２は、本発明の特定の非限定的な実施形態にしたがって、仮想環境１を表示するためのバッファメモリ２１、２２、２３および２４の配置を示す。バッファメモリ２１、２２および２３は、有利にはレンダ（Ｒｅｎｄｅｒ）バッファタイプであり、バッファメモリ２４は、有利にはｚバッファタイプである。レンダバッファとｚバッファは、同一の構造を有し、該バッファ内に含むことができるデータが互いに異なる。ｚバッファは、有利には、深度を表す情報、すなわちｚバッファの各ピクセルに関連付けられた深度情報の項目を含む。レンダバッファは、有利には、ピクセルに関連付けられた属性を表す情報、すなわちレンダバッファの各ピクセルに関連付けられた属性情報の項目を含む。ピクセルの属性は、例えば構成要素の色（例えば「赤、緑、青」のＲＧＢ）、または構成要素の色＋透過性（すなわちＲＧＢα）に相当する。４つのバッファ２１〜２４から、２つのレンダターゲットＲＴ１  ２０１およびＲＴ２  ２０１が定義される。第１のレンダターゲットＲＴ１  ２０１は、第１のバッファメモリと称されるレンダバッファ２１、第３のバッファメモリと称されるレンダバッファ２３、および第４のバッファメモリと称されるｚバッファ２４を備える。第２のレンダターゲットＲＴ２  ２０２は、第２のバッファメモリと称されるレンダバッファ２２、第３のバッファメモリと称されるレンダバッファ２３、および第４のバッファメモリと称されるｚバッファ２４を備える。第１のレンダターゲットＲＴ１と第２のレンダターゲットＲＴ２は、仮想環境のオブジェクトを表示するために交互に使用される。レンダターゲットを使用して、仮想環境を構成するオブジェクトの表示を可能にする方法を、図３から図５に関して詳細に説明する。有利には、第１のバッファメモリ２１および第２のバッファメモリ２２は、仮想環境１を構成する仮想オブジェクト１１から１４の断片と関連付けられた深度情報の項目を、それらを比較するために記憶するのに用いられる。第３のバッファメモリ２３は、仮想環境１を表す画像のピクセルと関連付けられた属性を表す情報項目を記憶するのに用いられる。第４のバッファメモリ２４は、仮想環境１を表す画像のピクセルと関連付けられた深度情報を記憶するのに用いられる。
【００２５】
第１、第２、第３、および第４のバッファメモリ２１から２４は、有利には、グラフィックスカードのＧＰＵ（グラフィック処理装置）と関連付けられたＧＲＡＭ（グラフィックランダムアクセスメモリ）で論理的に定義される。
【００２６】
第１、第２、第３、および第４のバッファメモリ２１から２４は、有利には、同一サイズであり、ｍ列およびｎ行で定義される２次元行列に対応する。各バッファメモリは、例えばｍ×ｎ個のピクセルを備え、ｍおよびｎは２つの整数であり、ｍおよびｎは、有利には、仮想環境を表す画像の定義（例えば１２８０×７２０または１９２０×１０８０）に相当する。バッファの各ピクセルは、列および行のインデックスによって定義され、４つのバッファ２１から２４の同じインデックスのピクセルは、画像の同じピクセルに対応する。
【００２７】
一変形形態によれば、バッファメモリの数は４より大きい。この変形形態によれば、この構成は、単一の第４のｚバッファおよび単一の第３のレンダバッファを備え、深度情報の項目が記憶されているレンダバッファのタイプのバッファ数は、例えば仮想環境が備えるオブジェクトの数である２より大きい。この変形形態によれば、２つより多くのレンダターゲットもあり、レンダターゲットの数は、第１および第２のバッファ２２のタイプのバッファ数と等しい。
【００２８】
図３から図５は、本発明の特定の非限定的な実施形態にしたがって、バッファメモリ２１から２４を使用して、仮想環境１の表示の実現を可能にする異なるステップを示す。
【００２９】
図３は、オブジェクトの表示、例えば仮想環境１のオブジェクト１１、１２および１３の表示を可能にする方法の第１のステップを示す。この第１のステップの間、第１のオブジェクト、例えばオブジェクト１１が表示される。オブジェクト１１は、このシーンの表示された第１のオブジェクトであり、考慮に入れるべき隠蔽は存在せず、ビューポイント１０から見たオブジェクト１１の全体が表示される。これを行なうために、第１のレンダターゲットＲＴ１  ２０１が使用される。第１のオブジェクト１１の表示中に、視覚方向に従ってビューポイント１０から見たオブジェクト１１の断片（例えば、視覚方向１００に従ったポイントＰ１１０に関連付けられた断片）のそれぞれの深度が、第１のバッファ２１に記憶される。これらの深度値（すなわち、第１の深度情報の項目と称される、第１の断片のビューポイント１０が第１のオブジェクトから離れている距離を表す、第１の情報項目）は、第１のバッファ２１のゾーン３１によって表される。このゾーン３１は、ビューポイント１０から見た第１のオブジェクト１１に相当する。第１のオブジェクト１１は球面に相当し、第１のゾーン３１は円に相当する。オブジェクト１１の断片のそれぞれの深度は、第４のバッファ２４にも記憶され、これらの深度値は、ゾーン３１と同等なゾーン３４によって表される。第１のオブジェクト１１の表示中に、ビューポイントから見た第１のオブジェクト１１の断片に関連付けられた属性が、第３のバッファに記憶される。これらの属性値（すなわち、ビューポイント１０から見た第１のオブジェクト１１の第１の断片と関連付けられた属性を表す、第３の情報項目）は、第３のバッファ２３のゾーン３３によって表される。ゾーン３１、３４および３３はそれぞれ、ビューポイント１０から見た第１のオブジェクト１１の表現、すなわち、第１のバッファ２１、第４のバッファ２４および第３のバッファ２３のそれぞれの円に関連する。この第１のステップの間、第２のレンダターゲットＲＴ２  ２０２は使用されず、第１のレンダターゲットＲＴ１  ２０１が現行のレンダターゲットに相当する。
【００３０】
図４は、仮想環境１のオブジェクト１１、１２および１３を表示する方法の第２のステップを示す。この第２のステップは、仮想環境の第２のオブジェクト１２の表示に関連する。第２のレンダターゲットＲＴ２  ２０２が、第１のレンダターゲットＲＴ１の代わりに現行のレンダターゲットになる。視覚円錐１０１のそれぞれの視覚方向に関して、第２のオブジェクト１２と、関係する視覚方向との間に交点が存在するかどうか推定される。交点が存在する場合、ビューポイント１０が第２のオブジェクト１２から離れている距離が推定され、この距離は、第２の断片と称される、第２のオブジェクト１２の検討される断片の深度に相当し、第２の断片に関連付けられた深度は、第２の深度情報の項目と称される。深度が推定される第２のオブジェクトの各断片について、深度値は、対応する断片に対して（すなわち、検討される第２の断片と同じインデックスｍおよびｎを有する、第１のバッファの第１の断片に対して）第１のバッファ２１に記憶された深度値と比較される。したがって、検討される第２の断片に関連付けられた第２の深度情報の項目が、第１の対応するバッファ２１の断片に対して、第１のバッファ２１に記憶された第１の深度情報の項目より大きい場合、第１の深度情報の項目が、第２のバッファ２２に記憶される。これは、同じピクセルに相当するポイントＰ１  １１０とポイントＰ２  １２０の場合（すなわち、両ポイントが同一の視覚方向１００に属する場合）に相当する。この場合、第２のバッファ２２に記憶されるのは、深度Ｐ１に相当する第１の深度情報の項目である。検討される第２の断片に関連付けられた第２の深度情報の項目が、第１の対応するバッファ２１の断片に関して第１のバッファ２１に記憶された第１の深度情報の項目より小さい場合、第２の深度情報の項目が第２のバッファ２２に記憶される。これは、第１のオブジェクト１１によって隠されないポイントＰ３  １２１の場合に相当する。Ｐ３に関連付けられた断片に関する深度情報の項目が、対応する断片に関して第１のバッファ２１に記憶された深度情報の項目と比較される。視覚方向１０２で遭遇する第１のオブジェクトの断片は存在せず、第１のバッファ２１に記憶された深度情報の項目は、例えば、仮想環境１の最大深度または表すことができる最大の数などの所定の値に相当する、デフォルト値である。Ｐ３の深度がこのデフォルト値と比較されると、次いで、Ｐ３と関連付けられた深度情報の項目が第２のバッファに記憶される。一旦、第２のオブジェクトの第２の断片に関連付けられた深度情報項目のすべてが、第１のバッファ２１の対応するピクセル／断片と比較されると、オブジェクト１２の形（この場合は長方形）を表す形状が、第２のバッファにおいて得られ、第１の部分４２には、第２の断片（すなわち、ビューポイント１０から可視の第２のオブジェクト１２の断片）の深度値が含まれ、第２の部分４１には、第１の断片（すなわち、第２のオブジェクト１２の断片を隠す第１のオブジェクト１１の断片）の深度値が含まれる。第１の部分４２の第２の深度情報の項目が、仮想環境１の概観を与える第４のバッファ２４に搬入される、すなわち、第４のバッファ２４は、第１のオブジェクトおよ���第２のオブジェクトの、ビューポイントに最も近い断片の深度情報の全体が含まれる。ビューポイント１０から可視の断片（すなわち、深度情報が第２のバッファ２２の第１の部分４２に記憶されている、第２の断片）の属性のみが推定されて、ゾーン４３の第３のバッファ２３に記憶される。第２の断片の属性を、これらの第２の断片の深度を第１のバッファ２１に記憶された深度と比較した後にのみ計算することの利点は、可視な第２の断片についてのみ第２の断片の属性を計算すればよく、仮想環境のオブジェクトを表示するのに必要な計算の数を低減することができることである。
【００３１】
図５は、仮想環境１のオブジェクト１１、１２および１３を表示する方法の第３のステップを示す。この第３のステップは、仮想環境の第３のオブジェクト１３の表示に関する。第１のレンダターゲットＲＴ１  ２０１は、第２のレンダターゲットＲＴ２の代わりに現行のレンダターゲットになる。第２のステップと同じように、第３のオブジェクト１３と、視覚円錐１０１に含まれる１組の視覚方向１００、１０２との間に交点があるかどうか推定される。交点があれば、深度情報の項目が推定されて３つの断片のそれぞれに関連付けられる。次いで、深度情報のそれぞれの項目が、第２のバッファ２２に記憶された、対応する断片（すなわち、インデックスｍおよびｎが、検討される第３のピクセルのインデックスに対応する第２のバッファ２２のピクセル）に関する深度情報、ならびに検討されている断片に関して第１のバッファに記憶された深度情報の項目と比較される。以前のステップと同様に、これらの深度値の最も小さいものが第１のバッファに記憶される。第３のオブジェクト１３の形を形状として有する第１のバッファにおいてインプレッション（ｉｍｐｒｅｓｓｉｏｎ）が得られ、その一部分は、（第１のオブジェクト１１が第２のオブジェクト１２および第３のオブジェクト１３の双方を隠すとき）第１のオブジェクト１１の断片と関連付けられた深度値３１と、（第２のオブジェクト１２が、第１のオブジェクト１１によって隠されないが、第３のオブジェクト３を隠す）第２のオブジェクトと関連付けられた深度値５２と、最後に、第３のオブジェクト１３の断片（第１のオブジェクト１１または第２のオブジェクト１２によって隠されていない第１のオブジェクトの断片）に関連付けられた深度値５１とを含む。
【００３２】
ビューポイント１０から可視の第３のオブジェクト１３の第３の断片に関連付けられた深度情報５１の項目が、第４のバッファ２４にコピーされる。第４のバッファ２４は、ビューポイント１０から可視の第１のオブジェクト１１の第１の断片に関連付けられた第１の深度情報３４の項目と、ビューポイント１０から可視の第２のオブジェクト１２の第２の断片と関連付けられた第２の深度情報４４の項目と、ビューポイント１０から可視の第３のオブジェクト１３の第３の断片と関連付けられた深度情報の項目とを含む。第４のバッファ２４は、ビューポイント１０から見た仮想環境１の全体に関する深度情報の項目の画像を含んでいるが、第１のバッファ２１および第２のバッファ２２は、オブジェクトおよび関連付けられた隠蔽にリンクする１つのビューしか含んでいない、すなわち、第１および第２のバッファは、関連付けられた隠蔽情報の項目（オブジェクトのどの断片が可視であり、どの断片が隠されるか）を有するオブジェクトのインプレッションを含む。
【００３３】
第３のバッファ２３は、ビューポイント１０から可視の第３のオブジェクト１３の断片、すなわち深度情報５１の項目が第１のバッファに記憶される第３のオブジェクトの断片に関する属性を表す情報を用いて更新される。関連付けられた属性を推定するのに先立って第３のオブジェクトの断片の深度を比較することは、断片のすべてではなく、可視の断片に対する計算のみを行なうことにより、画像を表示するのに必要な計算を制限するという利点がある。第４のバッファ２４の使用は、すべてのオブジェクトについて深度情報項目を記憶することにより、仮想環境１と一致する視覚が得られるという利点があり、また、１つのｚバッファおよび１つのレンダバッファしか使用しない表示方法との互換性を保証することが可能になる。
【００３４】
変形形態によれば、第３のオブジェクトは、第１のバッファ２１または第２のバッファ２２と同じタイプのレンダタイプのバッファであるが、第１のバッファ２１および第２のバッファ２２とは異なるレンダタイプのバッファで表示される。この変形形態によれば、第３のオブジェクトは、第１および第２のバッファと同じタイプの、第３のバッファ２３および第４のバッファ２４の追加のバッファから形成された、第３のレンダターゲット（図示せず）に表示される。この変形形態は、いくつかのオブジェクトの表示が並行して可能になるという利点を有する。実際、データが書き込まれているバッファの中を読み取ることは不可能であるが、この変形形態によると、２つのバッファ（例えば追加のバッファおよび第２のバッファ２２）に同時にデータ（例えば深度情報項目）を書き込むことができ、追加のバッファと書込み中でないバッファ（この実例によれば第１のバッファ２１）の間の深度の比較が行なわれる。この変形形態によれば、レンダターゲットが３つあり、第３のレンダターゲットが、（第１のバッファ２１および第２のバッファ２２と同じタイプの）追加のバッファと、第３のバッファ２１と、第４のバッファ２４を含む。この変形形態によれば、第１のオブジェクトは、例えば第１のレンダターゲットによって表示される。一旦、第１のバッファ２１における書込みが完了すると、すなわち第１のオブジェクト１１が表示されると、第２のオブジェクト１２および第３のオブジェクト１３が、それぞれ第２のレンダターゲットＲＴ２および第３のレンダターゲットを介して同時に表示される。第２のオブジェクト１２の深度情報の項目は、第２のバッファ２２に書き込まれる前に、第１のバッファ２１に含まれる情報と比較され、また、第３のオブジェクト１３の深度情報の項目も、それ自体が、追加のバッファに書き込まれる前に、第１のバッファ２１に含まれる情報項目と比較される。したがって、第３のオブジェクト１３は、追加のバッファに表示される前に第２のオブジェクトと比較されることはない。第３のオブジェクトを表示するために第１のオブジェクトにリンクされる隠蔽になされた評価が、隠蔽（すなわち深度情報項目）を検証することにより、第３のバッファにおける表示中に考慮されることになり、これらの隠蔽は、デフォルトで、各オブジェクトの深度情報項目をすべて記憶するｚバッファに相当し、深度情報が最も小さい項目のみ記憶されている第４のバッファに常に記憶されている。したがって、全体のシーンにわたって、隠蔽のレベルで可干渉性が保証される。この変形形態によって得られた、いくつかのオブジェクトの並行表示は、処理をさらに加速するという利点を有する。別の変形形態によれば、仮想環境に存在するオブジェクトと同数のレンダターゲットがあり、このことは、仮想環境に存在するオブジェクトと同数の、第１のバッファ２１および第２のバッファ２２のタイプのバッファがあることを意味する。この変形形態によれば、仮想環境の表示の干渉性、すなわち仮想環境に存在するすべての隠蔽になされた評価が、仮想環境のすべてのオブジェクトに関する深度情報の干渉性の項目を含む第４のバッファを介して保証される。
【００３５】
図６は、本発明の特定の非限定的な別の実施形態にしたがって仮想環境１を表示するためのバッファメモリ２１、２２、２３および２４の配置を示す図である。バッファメモリ６１、６２、６３および６４は、バッファ６１、６２および６３がレンダバッファタイプであり、バッファ６４がｚバッファタイプであるという意味において、図２に関して説明されたメモリ２１、２２、２３および２４と同様である。第３のバッファ６３は、該第３のバッファ６３が、仮想環境１を表す画像のピクセルの属性を表す情報項目を記憶するのにも使用されるという意味において、図２の第３のバッファ２３と同様である。第４のバッファ６４は、該第４のバッファ６４が、仮想環境１を表す画像のピクセルに関連付けられた深度情報項目を記憶するのにも使用されるという意味において、図２の第４のバッファ２４に同様である。第１のバッファ６１および第２のバッファ６２と、図２の第１のバッファ２１および第２のバッファ２２の間の差異は、第１のバッファ６１および第２のバッファ６２が、例えば、これらの断片に関連付けられた深度情報を記憶するのにチャネルアルファαが使用されるＲＧＢαなど、仮想環境のオブジェクトの属性を表す情報項目を記憶するのに使用されることである。図６のバッファメモリの機構は、２つのレンダターゲット、すなわち第１のレンダターゲットＲＴ１  ６０１および第２のレンダターゲットＲＴ２  ６０２を備える。第１のレンダターゲットＲＴ１は、第１のバッファ６１および第４のバッファ６４を備える。第２のレンダターゲットＲＴ２は、第２のバッファ６２および第４のバッファ６４を備える。第１のステップにおいて、第１のレンダターゲットＲＴ１は、例えば現行のターゲットであり、第１のオブジェクト１１が表示される。ビューポイント１０から視覚方向にしたがって見たオブジェクト１１の断片のそれぞれの深度が、これらの断片に関連付けられた属性とともに第１のバッファ６１に記憶される。第２のステップにおいて、第２のレンダターゲットＲＴ２が、第１のレンダターゲットＲＴ１の代わりに現行のターゲットになる。この第２のステップの間、第２のオブジェクト１２が表示される。このために、第２のオブジェクトの断片のそれぞれの深度を推定して、対応する断片（すなわち同一のインデックスｍおよびｎを有する）の第１のバッファ６１に記憶された情報と比較する。第２の断片に関連付けられた第２の深度情報の項目が、第１のバッファ６１に記憶された第１の情報項目の値より大きい値を有する場合には、第２の断片に関連付けられた属性を推定することなく、第２の深度情報の項目のみが、第２のバッファ６２に、例えばアルファチャネルに記憶される。しかし、第２の断片に関連付けられた第２の深度情報の項目が、第１のバッファ６１に記憶された第１の情報項目の値より小さい値を有する場合には、第２の深度情報の項目が第２のバッファ６２に記憶され、第２の断片に関連付けられた属性が計算されて、第２のバッファに、例えばＲＧＢチャネルに記憶され、深度は、関連するアルファチャネルに記憶される。これらのステップは、現行のターゲットとしてレンダターゲットを交代させて、仮想環境のすべてのオブジェクトに対して繰り返さ���る。次いで、最終ステップにおいて、第１のバッファ６１と第２のバッファ６２のコンテンツが、第３のバッファ６３（画像の表示に役立つレンダバッファ）を更新する前に比較される。第３のバッファ６３を更新するために、第１および第２のバッファのそれぞれに対応するピクセルに含まれる深度情報項目が、２つずつ比較される。最も小さな深度値を有する断片（第１のバッファ６１のピクセルまたは第２のバッファ６２に対応するピクセル）に関連付けられた属性を表す情報が、第３のバッファにコピーされる。この実施形態によれば、第３のバッファに対するアクセスは、所与のピクセルに対して１回だけ行われ、これによって帯域幅の要件を制限することができる。この実施形態によると、（第２のバッファに記憶された）第２の断片に関連付けられた第２の深度情報の項目が、（第１のバッファに記憶された）第１の断片に関連付けられた第１の深度情報の項目より小さいとき、第３のバッファにコピーされるのは、第２の断片に関連付けられた属性を表す第３の情報項目である。そうでなければ、（第２のバッファに記憶された）第２の断片に関連付けられた第２の深度情報の項目が、（第１のバッファに記憶された）第１の断片に関連付けられた第１の深度情報の項目より大きいとき、第３のバッファにコピーされるのは、第１の断片に関連付けられた属性を表す第４の情報項目である。この実施形態によれば、第３の情報項目および／または第４の情報項目は、第３のバッファ６３にコピーされる前に、それぞれ第２のバッファ６２および第１のバッファ６１に一時的に記憶される。
【００３６】
図７は、本発明の特定の非限定的な実施形態にしたがって、仮想環境１における隠蔽の推定、ならびに１つまたはいくつかの画像の表示信号の生成に適合された装置７のハードウェアの実施形態を概略的に示す。装置７は、例えばパーソナルコンピュータＰＣ、ラップトップ、またはゲームコンソールに相当する。
【００３７】
装置７は、クロック信号も転送するアドレスおよびデータのバス７５によって相互に接続された、以下の要素、すなわち、
−  マイクロプロセッサ７１（またはＣＰＵ）と、
−  グラフィックスカード７２であって、
・いくつかのグラフィックプロセッサユニット（すなわちＧＰＵ）７２０と、
・グラフィックランダムアクセスメモリ（ＧＲＡＭ）７２１と
を備えるグラフィックスカード７２と、
−  ＲＯＭ（読み取り専用メモリ）タイプの不揮発性メモリ７６と、
−  ランダムアクセスメモリ、すなわちＲＡＭ７７と、
−  例えばキーボード、マウス、ウェブカメラなど、１つまたはいくつかのＩ／Ｏ（入出力）装置７４と、
−  電源７８と、
を備える。
【００３８】
装置７は、グラフィックスカード７２に直接接続される表示スクリーンタイプの表示装置７３も備え、特に、グラフィックスカードにおいて計算され構成された合成画像の表示を、例えばライブで表示する。表示装置７３をグラフィックスカード７２に接続する専用バスの使用は、非常に大きなデータ伝送ビットレートが得られ、したがってグラフィックスカードによって構成された画像を表示するための待ち時間が短縮されるという利点がある。変形形態によれば、表示装置は、装置６の外部にあり、表示信号を伝送するケーブルによって装置７に接続される。装置７は、例えばグラフィックスカード７２など、表示信号を例えばＬＣＤまたはプラズマスクリーンまたはビデオプロジェクタなどの外部表示手段に伝送するように適合された伝送または接続の手段（図７には示されていない）を備える。
【００３９】
メモリ７２、７６および７７の説明に用いられる用語「レジスタ」は、言及されたメモリのそれぞれにおいて、小容量のメモリゾーン（いくらかの２進データ）、ならびに大容量のメモリゾーン（プログラム全体の記憶、または計算されたデータもしくは表示すべきデータを表すデータの全体もしくは一部分の記憶を可能にする）の双方を意味することに留意されたい。
【００４０】
起動されると、マイクロプロセッサ７１が、ＲＡＭ７７に含まれるプログラムの命令をロードして実行する。
【００４１】
ランダムアクセスメモリ７７は、特に、
−  レジスタ７７０内の、装置７の起動に関与するマイクロプロセッサ７１の動作プログラムと、
−  仮想環境１を表すパラメータ７７１（例えば、仮想環境１のモデル化パラメータ、仮想環境１の照明パラメータ）とを含む。
【００４２】
本発明に特有の以下で説明される方法のステップを実装するアルゴリズムは、これらのステップを実装する装置７と関連付けられたグラフィックスカード７２のメモリＧＲＡＭ７２１に記憶される。起動されて、環境を表すパラメータ７７０がＲＡＭ７７にロードされると、グラフィックスカード７２のグラフィックプロセッサ７２０は、これらのパラメータをＧＲＡＭ７２１にロードして、これらのアルゴリズムの命令を、「シェーダー」タイプのマイクロプログラムの形で、例えばＨＬＳＬ（Ｈｉｇｈ  Ｌｅｖｅｌ  Ｓｈａｄｅｒ  Ｌａｎｇｕａｇｅ）またはＧＬＳＬ（ＯｐｅｎＧＬ  Ｓｈａｄｉｎｇ  Ｌａｎｇｕａｇｅ）を用いて実行する。
【００４３】
ランダムアクセスメモリＧＲＡＭ７２１は、特に、
−  レジスタ７２１０内の、仮想環境１を表すパラメータと、
−  ビューポイント１０から可視の仮想環境１の１つまたはいくつかのオブジェクトから可視の断片の深度を表す第１の情報項目７２１１と、
−  ビューポイント１０から可視の仮想環境１の１つまたはいくつかのオブジェクトから可視の断片の深度を表す第２の情報項目７２１２と、
−  ビューポイント１０から見た仮想環境１を表す画像のピクセルの属性を表す第３の情報項目７２１３と、
−  ビューポイント１０から見た仮想環境１を表す画像のピクセルの深度を表す第４の情報項目７２１４とを含む。
【００４４】
変形形態によると、ＧＲＡＭ７２１内の使用可能なメモリ空間が不十分な場合、ＲＡＭ７７の一部分が、ＣＰＵ７１によって値７２１１から７２１４の記憶用に割り当てられる。しかし、この変形形態では、ＧＰＵに含まれるマイクロプログラムから構成された環境１の表現を備えた画像の構成において、データを、グラフィックスカードからランダムアクセスメモリ７７にバス７５を通して伝送しなければならず、その伝送容量が、グラフィックスカードにおいてＧＰＵとＧＲＡＭの間のデータ伝送に利用可能なものより一般に劣るので、待ち時間が長くなる。
【００４５】
別の変形形態によると、電源７８は装置４の外部にある。
【００４６】
有利には、第１の情報項目７２１１および第２の情報項目７２１２を含むバッファは、別々に論理的に定義される。
【００４７】
バッファメモリ２１から２４によって用いられるＧＲＡＭのメモリ容量の割当ては、ＧＰＵのパイロットを介して、例えばＡＰＩ（アプリケーションプログラムインターフェース）のインターミディアリを介して実装される。
【００４８】
図８は、本発明の第１の非限定的で特に有利な実施形態にしたがって、装置７において実装される仮想環境の隠蔽の推定の方法を示す。
【００４９】
初期化ステップ８０の間に、装置７の異なるパラメータが更新される。具体的には、仮想環境１を表すパラメータが、任意の方法で初期化される。
【００５０】
次いで、ステップ８１の間に、ビューポイント１０から観察方向１００、１０２に従って第２の断片１２０、１２１が第１のオブジェクト１２から離れている距離を表す、第２の情報項目が推定される。ビューポイント１０から第２の断片が離れている距離は、第２の断片の深度に相当し、例えば第２のオブジェクトをカメラ空間へ投影することにより、またはユークリッド距離を推定することによって推定される。
【００５１】
次いで、ステップ８２の間に、ステップ８１において推定された第２の情報項目が、第１のオブジェクト１１に属する第１の断片１１０がビューポイント１０から視覚方向１００に従って離れている距離を表す、第１の情報項目と比較される。この第１の情報項目は、有利には、第１のバッファメモリ２１、６１に記憶される。
【００５２】
最終的に、ステップ８３の間に、第２のバッファメモリ２２が、ステップ８２において実装された比較の結果にしたがって更新される。ステップ８１において推定された第２の情報項目に相当する深度値が、第１の情報項目に相当する深度値より小さい場合、第２の深度情報の項目が推定された第２のオブジェクト１２の第２の断片に関連付けられた属性を表す、第３の情報項目が決定される。第２の情報項目が、第２のバッファメモリ２２に記憶され、第３の情報項目が第３のバッファメモリ２３に記憶され、第３のバッファメモリ２３は、有利には、ビューポイント１０から見た仮想環境１を表す画像のピクセルの属性を含む。ステップ８１において推定された第２の情報項目に相当する深度値が、第１の情報項目に相当する深度値より大きい場合、第２のバッファメモリ２２に記憶されるのは第１の情報項目であり、第２の断片は、第１のオブジェクトの第１の断片によって隠されているのでビューポイント１０から可視でなくため、第２の断片に関連付けられた属性の推定は実装されない。有利な変形形態によると、第１の情報項目および第２の情報項目のうち最小値を有する情報が、有利にはｚバッファタイプの、第４のバッファメモリに記録される。
【００５３】
有利には、第１のバッファメモリ２１、第２のバッファメモリ２２および第３のバッファメモリ２３は、レンダバッファタイプである。
【００５４】
ステップ８１、８２および８３は、有利には、第２のオブジェクト１２のそれぞれの第２の断片に対して、すなわち、いくつかの視覚方向に従って繰り返される。ステップ８１、８２および８３は、有利には、仮想環境１のオブジェクトがすべて考慮されるまで繰り返される。変形形態によれば、ビューポイントが変化すると、ステップ８１、８２および８３が繰り返される。
【００５５】
図９は、本発明の第２の非限定的な実施形態にしたがって、装置７において実装される仮想環境１における隠蔽の推定の方法を示す。
【００５６】
初期化ステップ９０の間に、装置７の別々のパラメータが更新される。具体的には、仮想環境１を表すパラメータが、任意の方法で初期化される。
【００５７】
次いで、ステップ９１の間に、仮想環境のオブジェクト１１から１４が、ビューポイントからのそれぞれの距離に従って、ビューポイントに最も近いものから最も遠いものへと分類される。
【００５８】
次いで、ステップ９２の間に、第１のバッファメモリ２１、６１が、ビューポイントに最も近いオブジェクトとして分類された第１のオブジェクト１１から各第１の断片を分かつ距離を表す、情報項目を用いて初期化される。変形形態によれば、分類するステップは任意選択であり、第１のバッファメモリは、仮想環境を構成するオブジェクトの中からランダムに選択されたオブジェクトの深度情報項目を用いて初期化される。対応する第１のオブジェクトの第１の断片がない第１のバッファメモリの断片、すなわち深度情報のない第１のバッファメモリの断片については、例えば仮想環境１の最大深度または所定値などのデフォルト値が与えられる。
【００５９】
次いで、図８に関して説明されたものと同一のステップ８１の間に、第２のオブジェクト１２の第２の断片の深度を表す、第２の情報項目が推定される。
【００６０】
次いで、図８に関して説明されたものと同一のステップ８２の間に、深度情報の第２の推定された項目が、第１の深度情報の項目に記憶された第１の深度情報の項目に対して、この第１の深度情報の項目が第１の断片の深度またはデフォルト値に相当するかどうか、比較される。
【００６１】
次いで、図８に関して説明されたものと同一のステップ８３の間に、第２のバッファメモリ２２、６２および第３のバッファメモリ２３、６３が、比較結果によって更新される。
【００６２】
もちろん、本発明は、前述の実施形態に限定されない。
【００６３】
具体的には、本発明は、仮想環境の隠蔽の推定の方法に限定されないばかりでなく、この方法を実装する任意の装置、および特に少なくとも１つのＧＰＵを含む任意の装置に及び。隠蔽の推定に必要な計算の実装形態は、シェーダータイプのマイクロプログラムの実装形態に限定されないばかりでなく、例えばＣＰＵタイプのマイクロプロセッサによって実行することができるプログラムなど任意のプログラムタイプの実装形態にも及び。
【００６４】
仮想環境を構成するオブジェクトの数は、２、３または４に限定されず、任意の数のオブジェクトに及び。
【００６５】
本発明の用途は、ライブ利用に限定されず、任意の他の利用、例えば録音スタジオにおける、例えば合成画像を表示するためのポストプロダクション処理として知られている処理のための利用などにも及ぶ。ポストプロダクションにおける本発明の実装は、必要な計算時間を低減する一方で、特にリアリズムに関して優れた画像表示を提供するという利点がある。
【００６６】
本発明は、２次元または３次元においてビデオ画像を構成または生成するための方法にも関し、この方法では、１つまたはいくつかの観察方向に従って隠蔽が計算され、結果として得られる断片の属性を表す情報が、画像のピクセルを表示するのに用いられ、各ピクセルは観察方向に対応する。画像のピクセルのそれぞれによって表示用に決定された隠蔽が、視聴者の別々のビューポイントに適合するように再計算される。
【００６７】
本発明は、例えばＰＣまたは携帯型コンピュータまたは画像をライブで生成して表示する専門のゲーム機で実行することができるプログラムによって、ビデオゲーム用途に用いることができる。図７に関して説明された装置７は、有利には、キーボードおよび／またはジョイスティックなどの対話手段を装備しており、例えば音声認識などの命令を導入するための他のモードも可能である。
［付記１］
少なくとも２つのオブジェクト（１１、１２）を備える仮想環境（１）を表す画像を生成する方法であって、前記仮想環境（１）がビューポイント（１０）から観察され、
第２のオブジェクト（１２）の第２の断片が前記ビューポイント（１０）から観察方向（１００）に従って離れている距離を表す、第２の情報項目を推定するステップ（８１）と、前記第２の情報項目と、第１のオブジェクト（１１）の第１の断片が前記ビューポイント（１０）から前記観察方向（１００）に従って離れている距離を表し、および第１のバッファメモリ（２１、６１）に記憶された第１の情報項目とを比較するステップ（８２）であって、前記第２の情報項目が前記第１の情報項目より小さい場合に限って、前記第２の断片に関連付けられた属性を表す、第３の情報項目を推定し、前記第２の情報項目を第２のバッファメモリ（２２、６２）に記憶し（８３）、前記第３の情報項目を第３のバッファメモリ（２３、６３）に記憶し（８３）、前記第２の情報項目が前記第１の項目より大きい場合、前記第１の情報項目を前記第２のバッファメモリ（２２、６２）に記憶するステップ（８３）し、前記第１のバッファメモリ（２１、６１）と前記第２のバッファメモリ（２２、６２）は交互に用いられ、前記第１のバッファメモリと前記第２のバッファメモリのうちの一方が読取りアクセス可能になり、他方が書込みアクセス可能になる、前記比較するステップと、を含む、前記方法。
［付記２］
前記第１、第２、および第３のバッファメモリ（２１、２２、２３、６１、６２、６３）は、グラフィックプロセッサのレンダバッファのタイプのメモリである、付記１に記載の方法。
［付記３］
前記第１の情報項目および前記第２の情報項目のうち最小値を有する情報項目が、第４のバッファメモリ（２４、６４）に記憶される、付記１または２に記載の方法。
［付記４］
前記第３の情報項目は、前記第３のバッファメモリ（２３、６３）にコピーされる前に前記第２のバッファメモリ（２２、６２）に一時的に記憶される、付記１から３のいずれか一項に記載の方法。
［付記５］
前記第２の情報項目が前記第１の情報項目より大きい場合、前記第１の断片に関連付けられた属性を表す、第４の情報項目が、前記第３のバッファメモリ（２３、６３）に記憶される、付記１から４のいずれか一項に記載の方法。
［付記６］
前記第４の情報項目は、前記第３のバッファメモリ（２３、６３）にコピーされる前に前記第１のバッファメモリ（２１、６１）に一時的に記憶される、付記５に記載の方法。
［付記７］
前記推定するステップ（８１）と、前記比較するステップ（８２）と、前記記憶すること（８３）とが、前記第２のオブジェクト（１２）の各第２の断片に対して繰り返される、付記１から６のいずれか一項に記載の方法。
［付記８］
前記仮想環境（１）の前記少なくとも２つのオブジェクト（１１、１２）を、前記ビューポイントに対して最も近いものから最も遠いビューポイントまでの前記ビューポイント（１０）に対するそれぞれの距離に従って分類するステップ（９１）であって、前記第１のオブジェクト（１１）が、前記第２のオブジェクト（１２）より前記ビューポイント（１０）に近い、ステップ（９１）を含む、付記１から７のいずれか一項に記載の方法。
［付記９］
前記第１のオブジェクト（１１）の断片が前記ビューポイント（１０）から離れている距離を表す情報を用いて前記第１のバッファメモリ（２１、６１）を初期化するステップ（９２）を含む、付記１から８のいずれか一項に記載の方法。
［付記１０］
少なくとも２つのオブジェクト（１１、１２）を備える仮想環境（１）を表す画像を生成するモジュールであって、前記仮想環境（１）がビューポイント（１０）から観察され、第２のオブジェクト（１２）の第２の断片が前記ビューポイント（１０）から観察方向（１００）に従って離れている距離を表す、第２の情報項目を推定するための推定手段と、前記第２の情報項目と、第１のオブジェクト（１１）の第１の断片が前記ビューポイント（１０）から前記観察方向（１００）に従って離れている距離を表し、および第１のバッファメモリ（２１、６１）に記憶された第１の情報項目とを比較するための比較手段であって、前記第２の情報項目が前記第１の情報項目より小さい場合に限って、前記第２の断片に関連付けられた属性を表す第３の情報項目が推定され、前記第２の情報項目が第２のバッファメモリ（２２、６２）に記憶され、前記第３の情報項目が第３のバッファメモリ（２３、６３）に記憶され、前記第２の情報項目が前記第１の情報項目より大きい場合、前記第１の情報項目が前記第２のバッファメモリ（２２、６２）に記憶され、前記第１のバッファメモリ（２１、６１）と前記第２のバッファメモリ（２２、６２）は交互に用いられ、前記第１のバッファメモリと前記第２のバッファメモリのうちの一方が読取りアクセス可能になり、他方が書込みアクセス可能になる、前記比較手段と、を備えた、モジュール。
［付記１１］
前記第１、第２、および前記第３のバッファメモリ（２１、２２、２３、６１、６２、６３）は、グラフィックプロセッサのレンダバッファのタイプのメモリである、付記１０に記載の方法。
［付記１２］
前記第１の情報項目および前記第２の情報項目のうち最小値を有する情報を記憶するための第４のバッファメモリ（２４、６４）を備える、付記１０または１１に記載のモジュール。
［付記１３］
付記１０から１２のいずれか一項に記載のモジュールを含む、グラフィックプロセッサ。
【図２】
0005916764.tif 000002
【図６】
0005916764.tif 000003
【図７】
0005916764.tif 000004
【図８】
0005916764.tif 000005
【図９】
0005916764.tif 000006
【図１】
0005916764.tif 000007
【図３】
0005916764.tif 000008
【図４】
0005916764.tif 000009
【図５】
0005916764.tif 000010