(57)【要約】【課題】変化するビューパラメータ（８０）に従って図形幾何学的モデルの連続する任意のメッシュ表示（７２）を適切に洗練する方法及び装置（１０）を開示する。【解決手段】方法は、ビュー錐台(１８８)、表面方位（１９０）及びスクリーンスペース幾何学的誤差（１９２）に基づくビュー依存パラメータの選択洗練基準を有効に用いて、図形オブジェクト及びイメージを図形形状として発生させる。選択洗練基準に従ってインクリメンタルな洗練及び粗化を行うリアルタイム方法も開示する。リアルタイム方法は、図形ビュー一致を促進し、フレーム速度調整をサポートする。連続的な動作に対して、リアルタイム方法を、連続するフレーム全体に亘って清算することができ、円滑な視覚的な遷移（形状）を、図形オブジェクト又はイメージを表示するのに用いられる２個の適切に洗礼したメッシュ間で構成することができる。【選択図】図４
2007265459.tif 000002
【特許請求の範囲】
【請求項１】
メモリシステムと、オブジェクトのコンピュータグラフィックイメージを生成するために前記オブジェクトの可変解像度表示を適切かつ選択的に細分化する方法を実行する中央処理装置とを有するコンピュータシステムであって、
前記オブジェクトのメッシュデータモデルの順次のメッシュ表示を発生し、そのメッシュデータモデルが、任意の接続性を有する相互接続した多角形の表面を規定し、前記順次のメッシュ表示が、基本メッシュ及び所定の場所に配置したメッシュ細分化変換のシーケンスを具え、その所定の場所に配置したメッシュ細分化変換が、前記ベースメッシュに適用した際に前記メッシュデータモデルを正確に再構成する手段と、
前記所定の場所に配置したメッシュ細分化変換の各々をパラメータのセットとしてパラメータ化し、そのパラメータのセットが、親頂点の指定及びその親頂点に隣接する対になって互いに隣接する多角形面の２対の指定を有し、個別にパラメータ化された所定の位置に配置したメッシュ細分化変換を、指定された親頂点を結果的に得られる子頂点に置換するとともに前記対になって互いに隣接する多角形面の２対の間で隣接する２個の多角形面を付加する頂点分割とする手段と、
現在のメッシュモデル上の複数の位置に亘る複数の横断を繰り返す際に、選択的な細分化基準のセット及び変換制約のセットに応じて、所定の位置に配置したメッシュ細分化変換とそのような個別の位置におけるメッシュ粗化変換のいずれを適用するかを決定し、これによって、前記現在のメッシュモデルを適切かつ選択的に細分化する手段とを具え、
前記所定の位置に配置したメッシュ細分化制約上の前記変換制約によって、前記親頂点及び前記対になって互いに隣接する多角形面の２対が、前記現在のメッシュモデルの現在の横断上に存在し、
適切かつ選択的に細分化した前記現在のメッシュモデルを用いて、ビューイングパラメータに応じたコンピュータグラフィックスイメージを生成する手段を更に具え、
前記手段がそれぞれ、前記メモリシステムにソフトウェアインストラクションを具え、前記ソフトウェアインストラクションが、前記中央処理装置によって実行されることを特徴とするコンピュータシステム。
【請求項２】
前記所定の位置に配置したメッシュ細分化制約のパラメータ化を、親頂点の指定、互いに隣接する頂点の対の指定及び結果的に得られる頂点の指定を有するパラメータの以前のセットから、前記親頂点の指定及び前記親頂点に隣接する対になって互いに隣接する多角形面の２対を有するパラメータのセットに変換する手段を更に具え、
前記変換する手段が、前記中央処理装置によって実行されるソフトウェアインストラクションを具えることを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記メッシュ粗化変換の各々をパラメータのセットとしてパラメータ化し、そのパラメータのセットが、２個の子頂点の指定、親頂点の指定、前記２個の子頂点間のエッジに沿って互いに隣接する２個の消失した多角形面の指定、及びこれら消失した多角形面にそれぞれ隣接する２対の多角形面の指定を有し、パラメータ化された個別に所定の位置に配置した前記メッシュ粗化変換を、指定された前記子頂点を前記親頂点に置換するとともに前記２個の消失した多角形面を除去して多角形面の互いに隣接する対の各々が対となって隣接するようにしたエッジ消失とした手段を更に具え、
前記メッシュ粗化変換上の前記変換制約によって、前記子頂点、前記２個の消失した多角形面及び前記互いに隣接する多角形面の２対が、前記現在のメッシュモデルの現在の横断に存在するようにし、
前記前記メッシュ粗化変換の各々をパラメータのセットとしてパラメータ化する手段が、前記中央処理装置によって実行されるソフトウェアインストラクションを具えることを特徴とする請求項１記載のコンピュータシステム。
【請求項４】
コンピュータシステムのオブジェクトのコンピュータグラフィックイメージを生成するために前記オブジェクトの可変解像度表示を適切かつ選択的に細分化する方法であって、
前記コンピュータシステムのオブジェクトの現在のメッシュモデルを構成し、その現在のメッシュモデルが、相互接続した多角形の表面を規定するステップと、
現在のメッシュモデル上の複数の位置に亘る複数の反復的な横断において、選択的な細分化基準のセット及び変換制約のセットに応じて、所定の位置に配置したメッシュ細分化変換とそのような個別の位置におけるメッシュ粗化変換のいずれを適用するかを決定し、これによって、前記現在のメッシュモデルを適切かつ選択的に細分化するステップと、
適切かつ選択的に細分化した前記現在のメッシュモデルを用いて、ビューイングパラメータに応じたコンピュータグラフィックスイメージを、前記コンピュータシステムに生成するステップと、
生成したコンピュータグラフィックスイメージを出力するステップとを具え、
前記所定の位置に配置したメッシュ細分化変換を、互いに隣接する４個の多角形面のセットを有する頂点を結果的に得られる２個の頂点に置換するとともに前記互いに隣接する４個の多角形面の間で隣接する２個の多角形面を付加する頂点分割とし、前記変換制約によって、前記頂点及び前記互いに隣接する４個の多角形面のセットが前記現在のメッシュモデルに存在するようにしたことを特徴とする方法。
【請求項５】
前記変換制約によって、前記互いに隣接する４個の多角形面が前記現在のメッシュモデルの互いに隣接する対の多角形面の２対となるようにしたことを特徴とする請求項４記載の方法。
【請求項６】
オブジェクトのコンピュータグラフィックイメージを生成するために前記オブジェクトの可変解像度表示を適切かつ選択的に細分化する方法を実行するコンピュータシステムであって、
前記オブジェクトの現在のメッシュモデルを構成し、その現在のメッシュモデルが、相互接続した多角形の表面を規定するソフトウェアインストラクションと、現在のメッシュモデル上の複数の位置に亘る複数の反復的な横断において、選択的な細分化基準のセット及び変換制約のセットに応じて、所定の位置に配置したメッシュ細分化変換とそのような個別の位置におけるメッシュ粗化変換のいずれを適用するかを決定し、これによって、前記現在のメッシュモデルを適切かつ選択的に細分化するソフトウェアと、適切かつ選択的に細分化した前記現在のメッシュモデルを用いて、ビューイングパラメータに応じたコンピュータグラフィックスイメージを生成するソフトウェアとを格納するメモリシステムとを具え、
前記ソフトウェアインストラクションによって、前記所定の位置に配置したメッシュ粗化変換を、互いに隣接する４個の多角形面のセットを有する２個の多角形面間のエッジに沿って互いに隣接する２個の頂点の置換を行うエッジ消失とし、前記所定の位置に配置したメッシュ粗化変換上の前記変換制約によって、２個の頂点、２個の多角形面及び互いに隣接する４個の多角形面のセットが前記現在のメッシュモデルに存在するようにし、
前記メモリシステムに格納されたソフトウェアインストラクションを実行する処理ユニットを更に具えることを特徴とするコンピュータシステム。
【請求項７】
コンピュータメモリにおいて、変化する視点からオブジェクトのコンピュータグラフィックビューを生成するための前記オブジェクトのメッシュデータモデルの選択的かつ適切に細分化可能なデータ構造表示をコンピュータで行う方法であって、
前記メッシュデータモデルの頂点の頂点データ構造表示のセットとして頂点を描写し、
前記メッシュデータモデルの多角形面の面データ構造表示のセットを決定し、
前記頂点データ構造によって表示された前記メッシュデータモデルの頂点に隣接するとともに表示された頂点上の頂点分割変換をパラメータ化する互いに隣接する対となった多角形面の２対の指定を具える前記頂点データ構造表示以外の頂点データ構造を発生し、
発生した前記頂点データ構造に基づいて生成されたオブジェクトのコンピュータグラフィックビューを出力することを特徴とする方法。
【請求項８】
前記頂点データ構造が、前記表示された頂点上の頂点分割変換の適用に起因する前記メッシュデータモデルの２個の頂点及び２個の多角形面の指定を更に具えることを特徴とする請求項７記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
特許権付与
この特許文書の開示の一部は、著作権保護を受ける資料を含む。著作権所有者は、関連する特許オーソリティのファイルまたは記録においてのみ現れるため、本発明文書または特許開示のいずれによっても複製に対する意義を申し立てておらず、他の場合ならすべての著作権を保有する。
【０００２】
発明の分野
本発明はコンピュータグラフィックスに関する。より特に、グラフィカルイメージにおけるグラフィカルオブジェクトに関する複雑な幾何学的モデルのレンダリングに関する。
【背景技術】
【０００３】
発明の背景および要約
インタラクティブレートにおける複雑な幾何学的モデルのレンダリングは、コンピュータグラフィックにおける挑戦的な問題である。レンダリング性能が絶え間なく改善されていく限り、幾何学的モデルの複雑さを、前記モデルが特定のレンダリングされたグラフィカルイメージを形成する際の寄与に適応させることによって、重大な利益を得ることができる。コンピュータグラフィックス技術において知られる伝統的なモデル化システムにおいて、精細化された幾何学的モデルを、多用途のモデル化動作（例えば、押し出し、構造的ソリッドジオメトリおよび自由造形変形）を、グラフィカルオブジェクトまたはイメージを規定するのに使用される幾何原型の巨大なアレイに用いることによって形成する。前記幾何原型は、代表的に、三角形、多角形および他の多辺形形状を含む。能率的な表示のため、結果として生じる幾何学的モデルを、代表的に、「メッシュ」と呼ばれる幾何原型の多角形近似に変換する。
【０００４】
メッシュは、タプル（Ｋ，Ｖ）によって示されるジオメトリを有し、ここでＫを、メッシュ単体の連結度を示す単体複体（すなわち、頂点、稜線および面の）とする。Ｖ＝｛ｖ1,...ｖm｝を、Ｒ3空間におけるメッシュの形状を規定する頂点位置の組とする。すなわち、変数領域｜Ｋ｜⊂Ｒｍを、頂点ＫをＲｍのカノニカル基本ベクトルと関係させることによって構成し、前記メッシュをイメージφｖ（｜Ｋ｜）として規定し、ここでφｖ：Ｒｍ→Ｒ3を線形マップとする。メッシュにおける他の情報に関して、ACM SIGGRAPH'93会報、１９〜２６ページの、Hugues Hoppe、T.Derose、T.Duchamp、J.McDonaldおよびW.Stuetzleによる「メッシュ最適化」を参照されたい。
【０００５】
コンピュータグラフィックスにおける多くの幾何学的モデルは、三角形メッシュを使用して表される。幾何学的に、三角形メッシュは、稜線において連結された多数の三角形面による区分的線形表面である。メッシュを使用してグラフィカルオブジェクトまたはイメージを表示するある一般的な技術は、幾何学的モデルの種々の精細レベル（ＬＯＤ）におけるいくつかの変形を、プログレッシブメッシュを使用して形成することである。これらのようなＬＯＤメッシュを、当該技術分野において既知の種々のメッシュ単純化技術を使用して、自動的に計算することができる。
【０００６】
また、プログレッシブメッシュ（ＰＭ）表現を使用し、ビューに依存しないＬＯＤ制御に対して最適化されたメッシュの連続的な配列を獲得する。プログレッシブメッシュは、実行時における前記メッシュ配列の高速な横断を可能にする。
【０００７】
さらなる情報に関して、ACM SIGGRAPH'96会報、９９〜１０８ページの、Hugues Hoppeによる「プログレッシブメッシュ」を参照されたい。ビューに依存しないプログレッシブＬＯＤメッシュの組すなわち配列は、多くのコンピュータグラフィックス用途に適している。しかしながら、見る人を取り囲んでもよいグラフィカル地形または他のグラフィカル環境のような大規模幾何学的モデルをレンダリングする場合、ビューに依存しないプログレッシブＬＯＤメッシュの使用に関していくつかの問題がある。
【０００８】
ある問題は、前記幾何学的モデルの多数の個別的な多角形または面は、見る人の選択した視野錐台（ビュー平面）の外にあるかもしれず、したがってグラフィカルイメージまたはオブジェクトをレンダリングする際に寄与しないことである。前記視野錐台の外にある面を最終的に選択する（すなわち、破棄する）としても、前記視野錐台内に用いるのと同じレベルの精細度を前記視野錐台の外の面にも用いるため、処理リソースがグラフィカルイメージまたはオブジェクトのレンダリング中に浪費される。
【０００９】
他の問題は、見る人から離れた方を向いた面の不必要なレンダリングである。これらのような面を、代表的に、レンダリング中、「背面」試験を使用して選択する。しかしながら、この背面試験は、再びレンダリング中に多大な処理リソースを浪費する。
【００１０】
更に別の問題は、前記視野錐台内で前記モデルのいくつかの領域が、他の領域よりも見る人に近づきすぎるかもしれないことである。プログレッシブＬＯＤメッシュは、適切な精細度レベルを前記幾何学的モデル全体に与えられず、これらのような領域を処理できない。
【００１１】
これらの問題のいくつかを、グラフィカルシーンをメッシュの階層表示として階層表示的に表すことによって処理することができる。前記シーンの部分を、前記階層表示における各メッシュに対して別々に適応させることができる。しかしながら、これらのような階層表示をグラフィカルオブジェクトまたはイメージの連続的な表面において確立することは、余計な挑戦的な問題を与える。
【００１２】
階層表示の選択の確立に関するある問題は、視覚的「隙間」が前記プログレッシブＬＯＤメッシュにおいて現れるかもしれないことである。例えば、あるグラフィカル地形を表すメッシュをブロックに分割すると、これらのブロックは、異なったレベルの精細度でレンダリングされ、これが表示されると、前記地形に隙間が現れるかもしれない。加えて、これらプログレッシブＬＯＤメッシュブロックの境界線は、前記地形表面における自然の特徴に対応しそうになく、結果として、次善の近似が生じる。同様の問題は、滑らかなパラメトリック表面の適応モザイク化においても生じる。
【００１３】
グラフィカル地形に関する高い領域の場合と、いくつかのパラメトリック表面とに関するメッシュを適応細分する、グラフィカル技術の当業者に既知の限定された方法が開発されている。しかしながら、これらの方法を、任意のメッシュに一般的に適用することはできない。
【００１４】
当該技術分野において既知のように、メッシュを、メッシュ変換の組における拘束の組と、一定の細分基準の組とを使用して、細分することができる。例えば、プログレッシブメッシュ表示を、稜線削除動作と、頂点の組によって拘束される頂点分割処理とを含むメッシュ変換の組によって細分することができる。一定の細分基準の組は、稜線削除に関するすべての候補稜線を優先権待ち行列に置くことを含み、ここで、各変換の優先権を、初期メッシュからの少数の点をプログレッシブメッシュ表示におけるメッシュに適応させるのに使用されるエネルギーコストとする。さらなる情報に関して、上記で引用した論文「プログレッシブメッシュ」を参照されたい。
【００１５】
プログレッシブメッシュ表示を細分基準の一定の組によって細分することは、多数の問題を生じさせる。前記プログレッシブメッシュに使用される拘束の組および一定の細分基準の組は、プログレッシブメッシュ表示を適応細分することに適切でない。適応細分中、プログレッシブメッシュ表示のいくつかの領域（例えば、見る人の方を向いた領域）は細分されるが、同じプログレッシブメッシュ表示の他の領域（例えば、見る人から離れた方を向いた領域）は粗くなる。前記プログレッシブメッシュに使用される拘束されたメッシュ変換の組および一定の細分基準の組は、任意のプログレッシブメッシュ表示を適応細分することにも適していない。
【発明の開示】
【００１６】
本発明の説明的な実施形態によれば、プログレッシブＬＯＤメッシュに関する問題、階層表示を選択することと、プログレッシブメッシュ表示を適応細分することは克服される。任意のプログレッシブメッシュをビュー依存パラメータの変化に応じて適応細分する方法およびシステムを説明する。任意のプログレッシブメッシュを、選択的細分基準の組を使用する拘束されたメッシュ変換の組によって適応細分一般的な方法も示す。
【００１７】
任意のプログレッシブメッシュを変化するビュー依存パラメータに応じて適応細分する方法は、プログレッシブメッシュ表示ＭRを再パラメータ化し、再パラメータ化プログレッシブメッシュ表示ＭREを形成することを含む。前記再パラメータ化は、プログレッシブメッシュＭR表現に関するＮデータ構造記録の配列から新たな頂点、面または稜線を選択することを含む。頂点階層表示を、再パラメータ化プログレッシブメッシュ表示ＭREにおいて構成する。前記頂点階層表示の構成を、再パラメータ化頂点の横断を使用して行う。しかしながら、他の構成技術も使用できる。
【００１８】
前記頂点階層表示は、ツリー構造の「森」を形成し、この森において、「ルート」ノードはプログレッシブメッシュ表示（例えば、ＭR）の頂点であり、「リーフ」ノードは再パラメータ化メッシュ表現（例えば、ＭRE）の頂点である。しかしながら、他の形式の頂点階層表示も使用できる。前記頂点階層表示の確立は、再パラメータ化プログレッシブメッシュ表示ＭREにおける再パラメータ化された頂点に関する細分依存の形成を可能にする。
【００１９】
選択的細分基準の組に関する値を予め計算し、選択的細分基準の組の実行時評価をより速く形成する。本発明の他の実施形態において、選択的細分基準の組を実行時に計算する。
【００２０】
実行時において、一つ以上のビュー依存パラメータが変更したことについての指示を受ける。再パラメータ化プログレッシブメッシュＭREを、前記頂点階層表示と、予め計算された選択的細分基準と、実行時に計算された選択的細分基準とを使用して適応細分し、適応細分化メッシュを形成する。パラメータ化プログレッシブメッシュ表示ＭREを適応細分することは、ＭREのいくつかの領域を拘束された変換の列で細分し、ＭREの他の領域を拘束された変換の組で荒くすることを含む。
【００２１】
本発明の説明的な実施形態に関するシステムは、任意のプログレッシブメッシュ表示を構成するローケータ／コンストラクタモジュールと、前記プログレッシブメッシュ表示をコンピュータシステムのメモリにロードし、前記プログレッシブメッシュ表示を再パラメータ化し、選択的細分基準の組における前処理を行う前処理モジュールと、ビュー依存パラメータにおける変化を受け、選択的細分基準を評価し、再パラメータ化プログレッシブメッシュ表示を適応細分し、アクティブ面をレンダリングするレンダリングモジュールとを含む。しかしながら、本システムは、より多くのまたはより少ないモジュール含むこともでき、前記モジュールの機能をより多くのまたはより少ないモジュールにおいて結合することもできる。
【００２２】
任意のプログレッシブメッシュを選択的細分基準を使用する拘束されたメッシュ変換の組で適応細分する一般的な方法は、任意のプログレッシブメッシュ表示を選択することを含む。メッシュ変換の組と，前記メッシュ変換の組における拘束と、選択的細分基準の組とを選択する。実行時において、前記プログレッシブメッシュ表示の細分を、幾何原型を前記プログレッシブメッシュ表示に、前記メッシュ変換の拘束された組と、選択的細分基準の組とを使用して加えることによって適応細分し、選択的に細分されたメッシュの第１近似を形成する。前記選択的に細分されたメッシュを、前記選択的に細分されたメッシュを通過することによって適応細分する。適応細分は、前記選択的に細分されたメッシュのいくつかの領域をさらに細分し、同じ選択的に細分されたメッシュの他の領域を粗くする。この方法は、任意の幾何学的モデルに関する任意のプログレッシブメッシュ表示を適応細分させる。また、この方法は、開発者が前記選択的細分基準の組を選択できるため、きわめて適応性がある。前記選択的細分基準をビュー依存とすることもでき、または、多数の目的に関するプログレッシブメッシュ表示の適応細分に適応性を与えるいくつかの他の依存性の組を基礎とすることもできる。
【００２３】
本発明の説明的な実施形態の上述したおよび他の特徴および利点は、添付した図面を参照して進める以下の詳細な説明から、より容易に明らかになるであろう。
【００２４】
本発明の出願は、カラーにおいて作成された少なくとも１つの図面を含む。カラーの図面を伴う本発明の複製を、要求及び必要経費の支払いに応じて関連する特許オーソリティによって与える。
【００２５】
カラーにおいて作成されたこれらの図面のいくつかは、ユタ州プロボのビューポイントデータラブズインターナショナル(Viewpoint Datalabs International)によって元々形成され、著作権を取得されているデータセットから形成されたメッシュのイメージである。
【発明を実施するための最良の形態】
【００２６】
実施例の詳細な説明
図１は本発明の実施例を実施するコンピュータシステムのブロック図である。
図１につき説明すると、本発明の好適実施例の動作環鏡は、少なくとも１つの高速処理装置（ＣＰＵ）１４と、関連するメモリシステム１６、入力装置１８及び出力装置２０を具えるコンピュータ１２を有するコンピュータシステム１０である。これらの素子はバス構造２２により相互接続されている。
図示のＣＰＵ１４は普通の設計のものであり、計算を実行するＡＬＵ２４、データ及び命令の一時記憶用のレジスタ群２６、及びシステム１０の動作を制御する制御ユニット２８を含む。種々のプロセッサ(Digital Equipment,Sun,MIPS,IBM,motorola,NEC,Intel,Cyrix,AMD,Nexgen等からのプロセッサを含む)の任意のものもＣＰＵ１４として等しく好適である。１つのＣＰＵ１４を示すが、コンピュータシステム１０は多数の処理装置を含むことのできる。
【００２７】
メモリシステム１６は主メモリ３０及び補助メモリ３２を含む。図示の主メモリ３０は高速ランダムアクセスメモリ（ＲＡＭ）及びリードオンリメモリ（ＲＯＭ）である。主メモリ３０は任意の追加の又は他の高速メモリ装置又はメモリ回路を含むことができる。補助メモリ３２はＲＯＭ、光又は磁気ディスク、有機メモリ又は任意の他の揮発性又は不揮発性大容量メモリシステムのような長期メモリの形のものとする。入力／出力装置１８、２０は他のコンピュータシステム又は装置との通信用のネットワーク接続手段、モデム、又はその他の装置も含む。
【００２８】
当業者によく知られているように、コンピュータシステム１０は更にオペレーティングシステム及び少なくとも１つのアプリケーションプログラムを含む。オペレーティングシステムはコンピュータシステムのオペレーション及びリソースの割当てを制御するソフトウエア命令のセットである。アプリケーションプログラムは、ユーザが所望するタスクをオペレーティングシステムにより使用可能にされたコンピュータリソースを使用して実行するソフトウエア命令のセットである。どちらも図示のメモリシステム１６内に常駐する。
【００２９】
コンピュータプログラミング分野の通常の知識を有する者のプラクティスに従って、本発明を、特にことわらない限り、コンピュータシステム１０により実行されるオペレーションの動作及び記号表現に関連して以下に説明する。このようなアクト及びオペレーションは時々コンピュータ実行されるという。動作及び記号表現オペレーションはデータビットを表わす電気信号のＣＰＵ１４による操作を含む。この操作は電気信号表現の変換又は還元及びメモリシステム１６内のメモリ位置におけるデータビットの維持を行ってコンピュータシステムのオペレーションを再構成又は変更するとともに、信号の他の処理を行う。データビットが維持されるメモリ位置はデータビットに対応する電気的、磁気的、光学的又は有機的特性を有する物理的位置である。
【００３０】
データビットはコンピュータ１２により読み取り得る磁気ディスク及び任意の他の揮発性又は不揮発性大容量メモリシステムを含むコンピュータ読取り可能媒体上に維持することもできる。コンピュータ読取り可能媒体は、コンピュータシステム１０にのみ存在する又は多数の相互接続コンピュータシステム１０（ローカル又はリモートシステムにすることができる）の間で分配される協働又は相互接続コンピュータ読取り可能媒体も含む。
【００３１】
グラフィック物体のレンダリング
グラフィック物体を発生させるために、グラフィック物体を規定するのに使用される幾何プリミティブにモデリングオペレーションを適用することにより詳細グラフィックモデルを生成する。幾何プリミティブは代表的には三角形、多角形（ポリゴン）及びその他の多辺形を含む。グラフィック画像をレンダリングするために、グラフィック物体を処理し、得られたグラフィック画像をフレームバッファ（例えばメモリシステム１６）に蓄積する。フレームバッファは１フレームのグラフィックデータを含む。レンダリングされた画像データを次にディスプレイ（ディスプレイ２０）に転送する。グラフィックデータは所定のサイズのフレーム（例えば３メガバイト）で蓄積される。グラフィック画像は代表的にはフレームごとにレンダリングされる。レンダリングについてのこれ以上の情報については、「Fundamental of Interactive Computer Graphlcs」第２版、J.D.Foley及びA.Van Dam著、Addison-Wesley出版社、を参照されたい。
【００３２】
フレーム単位の効率的表示のために、１以上のグラフィック物体を含むグラフィック画像に対するグラフィックモデルは代表的には「メッシュ」という幾何プリミティブの多角形近似に変換される。メッシュはタプル(k,v)により示されるジオメトリを有し、ここでｋはメッシュ単体の連結度(即ち頂点、稜線及び面の隣接度)を指定する単体複体である。ｖ＝｛v1,..vm｝はＲ3空間内のメッシュの形状を規定する頂点位置のセットである。即ち、Ｒmの標準基ベクトルを有する頂点を識別するとともにメッシュをΦv（|k|）として規定することにより媒介変数領域|k|⊂Ｒmが構成される。ここで、Φv:Ｒm−Ｒ3はリニアマップである。メッシュを用いてグラフィック物体を表示する一つの共通の技術はプログレッシブメッシュを用いて種々のビュー独立詳細レベル（ＬＯＤ）で幾何モデルのいくつかのバージョンを生成するものである。
【００３３】
プログレッシブメッシュ
Ｍを全てのあり得るメッシュのセットとすると、任意のメッシュＭＡのプログレッシブメッシュ表示ＭＰＭ（ここで、ＭＡ⊂Ｍ及びＭＰＭ⊂Ｍ）は増大する精度のメッシュ近似の連続シーケンスＭi（ｉ＝{0,..n-1}、Ｍ0,Ｍ1,..Ｍn-1）を規定し、これから任意所望の複雑さのビュー独立詳細レベル近似を効率的に検索することができる。幾何モデルに対するプログレッシブメッシュ表示ＭＰＭを生成するために、固定の細分化基準セットを用いて任意のメッシュＭＡを一連の稜線削除(ecol)処理により簡単化してもっと簡単な基本メッシュＭ０を生成する。従来既知の稜線削除処理を使用するプログレッシブメッシュ簡単化処理を式(1)に示す。
（ＭＡ＝Ｍｎ）⇒ecoln-1⇒...ecol1⇒Ｍ1⇒ecol0⇒Ｍ0  (1)
【００３４】
図２は稜線削除処理３６及び頂点分割処理３８を示すブロック図である。Ecol（ＶＳ，ＶＬ，ＶR，ＶT，ＦL，ＦR）としてパラメータ化される稜線削除処理３６は細分化された（精）メッシュＭF４８の２つの追加の頂点ＶL４４及びＶR４６間の２つの隣接頂点ＶS４０及びＶT４２を統一して粗メッシュＭC５２上の単一の頂点ＶS'５０にする。粗メッシュＭＣ５２はプログレッシブメッシュ表示における最終基本メッシュＭ0又は別の中間粗メッシュＭＣ（例えば、Ｍ1，Ｍ2,...等）とすることができる。頂点ＶT４０及び頂点ＶT４０と関連する面ＦL５４及びＦR５６は稜線削除処理において消滅する。新しいメッシュ位置は統一頂点ＶS'５０に対し指定される。
【００３５】
稜線削除処理３６は頂点分割(vsplit)処理３８の逆である。頂点分割を用いるプログレッシブメッシュ細分化処理を式(2)に示す。
Ｍ０⇒vsplit0⇒Ｍ1⇒vsplit1⇒...Ｍn-1⇒vsplitn-1⇒(Ｍｎ＝ＭＡ)  (2)
細分化された（精）メッシュＭF48は式(2)に示すプログレッシブメッシュシーケンス(例えばＭn-1,Ｍn-2,...等)において三角形メッシュＭ又は任意のメッシュとすることができる。Vsplit（ＶS，ＶL，ＶR）としてパラメータ化される頂点分割処理は新しい頂点ＶT４２及び２つの新しい面ＦL５４及びＦR５６を導入することにより粗メッシュＭＣ５２を変更する。面ＦL５４は３つの頂点ＦL＝｛ＶS，ＶL，ＶT｝(４２、４４、４０)で規定され、面ＦR５６は３つの頂点ＦR＝｛ＶS，ＶR，ＶT｝(４２、４６、４０)で規定される。得られるメッシュシーケンスＭ0，...Ｍｎ＝ＭＡはビュー独立詳細レベル（ＬＯＤ）制御に有効である。固定の細分化基準を用いるプログレッシブメッシュについてのこれ以上の情報については「Progressive Meshes」，Hugues Hoppe著，ACM SIGGRAPH'96 Proceedings，pp.99-108，を参照されたい。
【００３６】
図３Ａ−３Ｄは地形格子に対するビュー独立プログレッシブメッシュ表示のスクリーンディスプレイを示す一連のカラーブロック図６０である。頂点分割処理３８を基本メッシュＭ0６２に繰り返し適用する。例えば、図３Ａにおいて、粗基本メッシュＭO６２は三角形を規定する３つの頂点と１つの面を有するが、図３Ｄの最も細分化されたメッシュＭn６８は２００×２００の頂点及び７９，２０２の面を有し、複雑な地形のグラフィック画像を規定する。図３Ｂ及び３Ｃはそれぞれ１，０００及び１０，０００の面を有する中間メッシュＭ514及びＭ5066のカラースクリーンディスプレイ（６４、６６）を示す。粗基本メッシュＭ0６２は稜線削除処理３６を細分化メッシュＭn６８に繰り返し適用することにより細分化メッシュＭn６８から復元することができる。
【００３７】
式(1)及び(2)に示す演算で処理されるプログレッシブメッシュはいくつかの大きな問題を残す。例えば、プログレッシブメッシュは、代表的には、レンダリングプロセス時に選択的細分化に対し良好なリアルタイム実行を保証するよう設計されておらず、スクリーン空間の幾何誤差を測定することができず、ビュー依存パラメータ変化につれてメッシュを選択的に細分化するのに使用することはできない。
【００３８】
プログレッシブメッシュのビュー依存細分化
式(1)及び(2)により生成される図２に示すプログレッシブメッシュはビュー独立であり、固定の細分化基準セットを用いて生成される。図４は、任意のプログレッシブメッシュＭAを変化するビュー依存パラメータに従って選択的に細分化する本発明の一実施例の方法７０を示す。方法７０は本発明の図示の実施例のコンピュータシステム１０のメモリ１６内のアプリケーションプログラムとして実現される。しかし、他の実現も使用可能である。方法７０はステップ７２においてプログレッシブメッシュ表示ＭＲを再パラメータ化して再パラメータ化されたプログレッシブメッシュ表示ＭＲＥを生成する。再パラメータ化はプログレッシブメッシュ表示ＭＲと関連するＮ個のデータ構造記録の系列からの新しい頂点、面及び稜線の選択を含む。ステップ７４において、再パラメータ化されたプログレッシブメッシュ表示ＭREから頂点階層表示を構成する。頂点階層表示の構成は再パラメータ化された頂点の横断を用いて行われる。しかし、他の構成技術を使用することもできる。頂点階層表示は「根」ノードがプログレッシブメッシュ表示(例えばＭＲ)の頂点であり且つ「葉」ノードが再パラメータ化されたメッシュ表現(例えばＭＲＥ)の頂点であるツリー構造の「森」を構成する。しかし、他のタイプの頂点階層表示を使用することもできる。頂点階層表示の確立により再パラメータ化されたプログレッシブメッシュ表示ＭRE内の再パラメータ化された頂点に対する細分化依存性の生成が得られる。ステップ７６において選択的細分化基準セットの値を予め計算して選択的細分化基準セットの実行時評価を高速にする。本発明の代替実施例では、ステップ７６を実行時に完了させる。本発明の図示の実施例ではステップ７２-７６を前処理ステップとして完了させる。本発明の代替実施例では、ステップ７２-７６を実行時に完了させる。
【００３９】
実行時に、ステップ７８において１以上のビュー依存パラメータが変更されていることを示す指示を受信する。ステップ８０において、再パラメータ化されたプログレッシブメッシュ表示ＭREを、頂点階層表示、予め計算された選択的細分化基準及び実行時に計算された選択的細分化基準を用いて選択的に細分化して選択的細分化メッシュを生成する。パラメータ化されたプログレッシブメッシュ表示の選択的細分化は一連の拘束頂点分割変換を用いるＭREの細分化エリアと一連の拘束稜線削除変換を用いるＭREの粗大化エリアを含む。拘束頂点分割変換及び稜線削除変換について以下に説明する。
【００４０】
得られた選択的細分化メッシュは所定の詳細近似レベルに対し少数のポリゴン(三角形)を必要とし、選択された幾何モデルに対し少数の頂点依存性を用いて変更されたビュー依存パラメータに基づいて幾何学的に最適化された一連の頂点再パラメータ化である。
【００４１】
頂点分割変換
プログレッシブメッシュ表示ＭRはステップ７２(図４)において、新しい拘束稜線削除及び頂点分割変換を用いて再パラメータ化される。新拘束稜線削除変換及び新拘束頂点分割変換は式(1)及び(2)に示すプログレッシブメッシュ処理を更に改善したものである。新稜線削除変換及び新頂点分割変換は式(1)及び(2)に示す変換には考慮されていない対を成す隣接面を考慮するものである。
図５は拘束頂点分割変換８２及び拘束稜線削除変換８４を示すブロック図である。図５に示すように、任意のプログレッシブメッシュ表示ＭR８６は頂点ＶS８８及び多数の隣接面(９０-１０２)を有する。Vsplit（ＶS，ｆn0，ｆn1，ｆn2，ｆn3）としてパラメータ化される頂点分割変換８２は親頂点ＶS８８と関連する第１組の対を成す隣接面｛ｆn0，ｆn1｝(９６-９８)及び第２組の対を成す隣接面｛ｆn2，ｆn3｝(１００−１０２)を決定する。本発明の図示の実施例では、対を成す隣接面（即ち一対の隣接する面）は共通の境界を有する。しかし、他のタイプの面を使用することもできる。図５に示す例では、対を成す隣接面の組として面９６-９８及び１００−１０２を選択した。しかし、他の組の対を成す隣接面、例えば（９４、１００）及び（９０、９２）を選択することもできる。親頂点ＶS８８はプログレッシブメッシュ表示ＭR８６において、この親頂点を２つの子頂点ＶU１０４及びＶT１０６及び２つの新しい面ｆL１０８及びｆR１１０と置き換えることにより再パラメータ化する。第１の新しい面ｆL１０８は第１組の対を成す隣接面｛ｆn0，ｆn1｝(９６，９８)の間に生成される。第２の新しい面ｆR１１０は第２組の対を成す隣接面｛ｆn2，ｆn3｝(１００，１０２)の間に生成される。２つの新しい面ｆL１０８及びｆR１１０は子頂点ＶU１０４及びＶT１０６を結ぶ新しい稜線１１２を共有する。頂点分割変換８２をプログレッシブメッシュ表示ＭR８６に実行することにより第１の再パラメータ化されたプログレッシブメッシュ表示ＭRE１１４が形成される。プログレッシブメッシュ表示ＭR８６は再パラメータ化されたプログレッシブメッシュ表示ＭRE１１４から以下に記載する新しい拘束稜線削除変換８４により再現することができる。
頂点分割変換８２は頂点｛Ｖ1，Ｖ2，Ｖ3｝を有する三角形プログレッシブメッシュ表示Ｍnにつき示すと表１に示すようになる。
【００４２】
【表１】
2007265459.tif 000003
例えば、第１頂点分割変換Ｓ1は頂点Ｖ2を頂点Ｖ4及びＶ5に分割し、第２頂点分割変換Ｓ2は頂点Ｖ5を頂点Ｖ6及びＶ7に分割し、以下同様である。頂点｛Ｖ1，Ｖ2，Ｖ3｝を有する初期粗プログレッシブメッシュ表示及び頂点｛Ｖ14，Ｖ15，Ｖ11，Ｖ4，Ｖ6，Ｖ12，Ｖ13，Ｖ8，Ｖ9｝を有する最終再パラメータ化プログレッシブメッシュ表示を図９に示す。
【００４３】
稜線削除変換
ecol（ＶS，ＶT，ＶU，ｆL，ｆR，ｆno，ｆn1，ｆn2，ｆn3）としてパラメータ化される拘束稜線削除変換８４は頂点分割変換８２の逆変換を実行する。稜線削除変換８４は、２つの新しい面ｆL１０８及びｆR１１０を除去するとともに子頂点ＶU１０４及びＶT１０６を親頂点ＶS８８と置き換えることにより再パラメータ化メッシュ表現ＭＲＥ１１４をメッシュ表現ＭＲ８６に変換する。
【００４４】
稜線削除変換８４は頂点｛Ｖ14，Ｖ15，Ｖ11，Ｖ4，Ｖ6，Ｖ12，Ｖ13，Ｖ8，Ｖ9｝を有する再パラメータ化三角形プログレッシブメッシュ表示Ｍnにつき示すと表２に示すようになる。
【００４５】
【表２】
2007265459.tif 000004
【００４６】
表２に示すように、再パラメータ化三角形プログレッシブメッシュ表示は稜線削除変換８４によって、頂点｛Ｖ1，Ｖ2，Ｖ3｝を有する三角形プログレッシブメッシュ表示Ｍに戻すことができる。表２は表１に示す変換の逆を示す。
図６は境界１１８を有するプログレッシブメッシュ１１６を示すブロック図である。境界は原プログレッシブメッシュ表示に発生し得る。境界１１８を有するプログレッシブメッシュ表示ＭRを支持するために、第１組の対を成す隣接面｛ｆn0，ｆn1｝(９６，９８)又は第２組の対を成す隣接面｛ｆn2，ｆn3｝(１００，１０２)を存在させないことができる。例えば図６では、境界１１８のために第２組の対を成す隣接面｛ｆn2，ｆn3｝を存在させない。その結果として、頂点分割変換８２は第１の再パラメータ化された境界プログレッシブメッシュ表示ＭRE１２０においてメッシュＭR１１６に存在する一組の対を成す隣接面（例えば｛ｆn0，ｆn1｝(９６，９８)）のみを用いて単一の面ｆL１０８を生成する。稜線削除変換８４は第１の再パラメータ化境界プログレッシブメッシュ表示ＭRE１２０から単一の面ｆL１０８を除去して境界プログレッシブメッシュ表示ＭR１１６を再生成する。
【００４７】
拘束頂点分割変換用の方法
頂点分割変換８２はプログレッシブメッシュ表示におけるアクティブ頂点及び面により拘束される。図７は図５のブロック図に示す頂点分割変換８２用の方法のステップを示す流れ図である。ステップ１２４において、１つの頂点（例えば頂点８８）を分割のために選択する。ステップ１２６において、選択された頂点がプログレッシブメッシュ表示において「アクティブ」であるか否かを決定する検査を行う。この頂点（面）はプログレッシブメッシュ表示に存在する場合、「アクティブ」である。ステップ１２６において選択された頂点がアクティブでない場合には、頂点分割変換８２は「正当」でなく、即時に完了させることはできない。ステップ１２６において選択された頂点がアクティブである場合には、ステップ１２８において、選択された頂点に隣接する第１組の対を成す隣接面｛ｆn0，ｆn1｝(例えば９６，９８)及び第２組の対を成す隣接面｛ｆn2，ｆn3｝(例えば１００，１０２)がアクティブであるか否かを決定する検査を行う。ステップ１２８において頂点分割変換８２は「正当」でなく、即時に完了させることはできない。２組の対を成す隣接面がアクティブでない場合には、頂点分割変換８２は「正当」でなく、即時に完了させることはできない。ステップ１２８において第１組及び第２組の対を成す隣接面がアクティブである場合には、ステップ１３０において選択された頂点８８を２つの子頂点（例えば１０４、１０６）に分割する。ステップ１３２において、第１組の対を成す隣接面（９６、９８）の間に、２つの新しい頂点（１０４、１０６）を結ぶエッジ（例えば１１２）を有する新しい面（例えば１０８）を生成する。ステップ１３４において、第２組の対を成す隣接面（１００、１０２）の間に、２つの新しい頂点（１０４、１０６）を結ぶエッジ（例えば１１２）を有する第２の新しい面（例えば１１０）を生成する。得られる再パラメータ化されたメッシュ表現ＭREは図５にメッシュ有１１４で示す構成を有する。
【００４８】
拘束稜線削減変換法
また、拘束稜線削減変換８４はプログレッシブメッシュ表示におけるアクティブ頂点および面によって拘束する。図８は図５に示す拘束稜線削減変換法８４を示すフローチャートである。ステップ１３８で拘束する一対の頂点（例えば１０４、１０６）を選択する。選択された頂点が再パラメータ化プログレッシブメッシュ表示ＭRE１１４で拘束チェックをステップ１４０で行う。選択された頂点（１０４、１０６）がアクティブでない場合には、稜線削減は“正当”ではなく、拘束稜線削減変換８４は直ちに完了し得えなくなる。２つの頂点がステップ１４０でアクティブとなる場合には第１の面ｆＬおよび第２の面ｆＲ（例えば、１０８、１１０）がアクティブとなるとともに第１および第２面（１０８、１１０）に対で隣接する第１および第２組の面(例えば、（９６、９８）(１００、１０２))がアクティブになる場合には、並びに第１および第２組の面｛fn0，fn1，fn2，fn3｝(９６−１０２)が再パラメータ化プログレッシブメッシュ表示ＭREの一組の面｛fn0，fn1，fn2，fn3｝と対向するように等しくなる。本発明の図示の例では第１および第２面（１０８、１１０）はステップ１３８で選択された２の頂点（１０４、１０６）を接続する共通の稜線（例えば、１１２）を有する。第１組の面（９６、９８）は第１面１０８に対で隣接し、第２組の面（１００、１０２）は図５に示すように第２面１１０に対で隣接する。ステップ１４２のチェックが誤り（false）である場合には稜線削減は正当ではなく、稜線削減変換８４は直ちに完了し得なくなる。
【００４９】
ステップ１４２でのチェックが真である場合には、２つの子頂点（１０４、１０６）ステップ１４４で１つの親頂点８８に結合される。第１組の対隣接面（９６、９８）間の第１面１０８はステップ１４６で除去する。第２面１１０はステップ１４８で除去する。その結果としてのプログレッシブメッシュ表示ＭR８６は図５に示す構造とする。
【００５０】
頂点分割変換および稜線削減変換の拘束
頂点分割変換８２および稜線削減変換８４は表３に示す一組の拘束によって拘束する。
【００５１】
【表３】
2007265459.tif 000005
【００５２】
しかし、数個以上の拘束を用いることもできる。表３に示す拘束によって頂点分割変換８２および稜線削減変換８４を用いてプログレッシブメッシュ表示を再パラメータ化し得る手段を決める。拘束によってアクティブ頂点および面を考慮する。
頂点階層表示
プログレッシブメッシュ表示をステップ７２で再パラメータ化した後、頂点階層表示は頂点分割変換８２および再パラメータ化メッシュＭREからの情報によってステップ７４で構成する。従来既知のように頂点階層表示は頂点分割操作および変換削減操作とともに用いてメッシュのリアルタイム選択細分化を行う簡素化階層表示を生ぜしめるようにする。さらに詳細な説明はXiaおよびVarshneyによる論文「Dynamic View-dependent Simplification for Polygonal Models」IEEE Visualization'96 Proceedings327-334頁を参照されたい。
【００５３】
XiaおよびVarshneyは所定の三角形メッシュＭ∧に対してマージツリーをボトムアップ方向に予備計算する。全ての頂点Ｖ∧はツリーのレベル０でリーブスとしてエンターされる。次いで各レベルｌ>=0に対して一組の稜線削減操作を選択して頂点の対を併合するとともに、その結果の頂点の適当なサブセットをレベル（l+1）に促進する。レベルｌの稜線削減操作は稜線長さに基づいて選択するが、その隣接部は重畳しないように削減する。木（即ち、森の木）の最高レベルは粗メッシュMOの頂点に相当する。
【００５４】
実行時には、選択細分化は頂点フロントをマージツリー階層表示により上下に動かすことによって達成する。細分化を均一にするための、稜線削減操作または頂点分割操作はレベルｌの予め計算されたメッシュのそれと同一となる。即ち、これら追加の特性はマージツリーに記憶される。これがため、表現によって４つのツリー状の階層表示の特性を分割し徐々の変化のみが高度の細分化から低度の細分化に向かって行われるようにする。
【００５５】
稜線長さに基づく頂点階層表示の構成の拘束並びにXiaおよびVarshneyにより行われたように非重畳変換による階層表示の一組への削減よりもむしろ、頂点階層表示を、変換間の可能な数個の依存性の導入に関し、頂点分割変換８２の最適化シーケンスによって任意のメッシュから構成する。これは、表３に示されるを用いることにより本発明の図示の例においてメッシュを概算する際の複雑性を最小にする。加うるに、本発明の図示の例では、XiaおよびVarshneyにより行われたように稜線長さと観察者からの距離との比を調べる代わりに、曲面および視野方向にメッシュ細分化を採用するスクリーン空間概算誤差を用いる。
【００５６】
本発明の図示の例では、｜ＶR｜および｜ＦR｜はプログレッシブメッシュ表示ＭR８６の頂点および面の数を示す。頂点および面はステップ７４でこれらが頂点階層表示に発生した順序で番号を付して、頂点分割変換８２のｖ分割ｉが頂点階層表示の頂点vsiに対し頂点vti=｜VR｜+2i+1,およびvui=｜VR｜+2i+2を導入する。例えば、i=0およびメッシュＭRが３の頂点を有する場合には、vti=3+(2*0)+1=4およびvti=3+(2*0)+2=5となる。頂点はこれらが分割される際再パラメータ化（即ち、vsi=vti,vui）され、且つこの再パラメータ化は少数細分化依存性（例えば、子頂点vt4,vu5が親頂点vsiに依存）に寄与する。頂点階層表示は後述するＣ++データ構造（表４）に記憶されている頂点分割情報の簡単なツリー構造トラバーサルを用いるトップーダウン態様で構成される。しかし、他の構造技術を用いることもできる。
【００５７】
本発明の図示の例における頂点階層表示は不平衡ツリー構造の「森」(即ち、全ての葉（リーブ）は同一深さにはない)として形成される。不平衡ツリー構造の頂点階層表示は、これに導入される数個の依存性の結果として不平衡ツリー構を用いる場合よりも数個の葉を用いる選択的に細分化されたメッシュを発生する。しかし、不平衡ツリー構造を用いることもできる。一組の頂点に対する頂点階層表示はツリー構造の森を形成する親頂点vsiおよび子頂点vtiおよびvuiを含み、このツリー構造では「根」ノードが粗いメッシュ（例えば、基本メッシュＭR=ＭO）の頂点であり、且つ「葉」ノードは最も細分化されたメッシュ（例えば、元の任意のメッシュＭA=ＭN）の頂点である。
【００５８】
図９は頂点階層表示１５０を示すブロック図である。図９に示す例では、３つのルート頂点v1,v2およびv3（152-156）によってプログレッシブメッシュ表示ＭR=ＭO158（例えば、三角形）ノードルートノードの「森」を形成する。頂点v2１５４は頂点分割変換８２によって２つの子頂点に分割されてそれぞれv4およびv5(168-170)(即ち、3+(2*0)+1=4，3+(2*0)+2=5)が付される。順次に、頂点v5170は頂点分割変換８２によって２つの子頂点v6172およびv7174(即ち、3+(2*1)+1=6，3+(2*1)+2=7)に分割される。頂点v3,v10およびv7(156、160、174)に対して頂点分割変換８２を繰返し実行する。最も細分化されたメッシュ184(即ち、元のメッシュＭ∧=Ｍn=ＭA)は頂点階層表示150のリーフノード頂点(164,166,162,168,172,176,178,180,182)から形成され、ここにＭ∧は任意の三角形プログレッシブメッシュ表示である。
本発明の図示の例では、再パラメータ化メッシュＭREは視野依存パラメータの変化に基づいて頂点階層表示８４によって“頂点フロント”を用いるステップ８０で最適に細分化される。頂点フロントは頂点分割変換８２および視野依存パラメータの変化に基づく稜線削減変換８４を用いて発生する１つのメッシュ概算に相当する。
【００５９】
データ構造
表４は本発明の一例として、プログレッシブメッシュ表示のＮ-データ構造の記録に用いられるＣ++データ構造を示す。ステップ７２（図４）で発生する再パラメータ化メッシュは表４のデータ構造を用いて記憶された頂点配列および面配列を具える。また、ステップ７４（図４）で発生する頂点階層表示も次表４に示すデータ構造を用いる。頂点および面の選択されたもののみが選択的に細分化されたプログレッシブメッシュで任意の時間にアタティブとなる。アクティブ頂点および面はプログレッシブメッシュ表示シーケンスを具えるＮ-データ構造の記録のサブセットによってスレッドされた２つの二重リンクリストにより特定化される。しかし、他のリスト構造を用いることもできる。
【００６０】
【表４】
2007265459.tif 000006
【００６１】
表４のVertex(頂点)データ構造フィールドParent(親)およびvtを用いて図９に示す頂点階層表示150から親頂点階層表示vsおよび子頂点vtを符号化する。親頂点が頂点分割変換８２により分割し得る場合には、flおよびfn[4]フィールド(即ち、{fn0,fn1,fn2,fn3})によって頂点分割変換８２の残存パラメータを符号化する。頂点階層表示においては、fR=fL+1,およびvt=vu+1であるため、これら値を迅速に計算し得る関係上fRおよびvuに対するVertex(頂点)データ構造にフィールドは存在しない。
【００６２】
Face(面)データ構造はフィールドvertices[3]を有する面でフィールドactiveの現在の頂点を有するアクティブ面へのリンク、フィールドneighbore[3]を有する現在の面隣接部へのリンクを含む。マテリアル識別子matidはレンダリングに用いる。データ構造Srmeshは選択的に細分化メッシュを記憶するために用いるとともにステップ８０（図４）で発生する適応細分化メッシュからの出力を記憶するために用いる。
【００６３】
視野-依存型パラメータ
本発明の図示の例では、一組の選択的細分化規準を用いてプログレッシブメッシュ表示を細分化する。一組の選択的細分化規準は視野−依存性パラメータを含む。視野−依存性パラメータは視野−錐台(即ち、視野面)、表面配向およびスクリーン空間幾何学的誤差を含む。しかし、数個以上の視野−依存性パラメータを用いることができ、且つ視野−依存性パラメータの各々は個別に用いる（例えば、視野錐台のみを用い、表面配向のみを用いる、等）ことができる。視野−依存性パラメータの１つ以上がステップ７８で変化する（例えば、再パラメータ化プログレッシブメッシュ表示ＭREの領域がビューワに向かって配向されている）場合には再パラメータ化プログレッシブメッシュ表示ＭREは適応的に細分化されて異なるディテールレベルを含むようになる。
【００６４】
選択的細分化規準
図１０は再パラメータ化メッシュＭＲＥ頂点が視野−依存性選択的細分化規準に基づいて分割または削減する必要があることを決めるための方法１８６を示すフローチャートである。この方法１８６（図１０）を用いて頂点が頂点分割変換８２を用いて分割すべきか、変化した視野−依存性パラメータに基づく稜線削減変換８４を用いて粗分化すべきを決めるようにする。方法１８６は３つの視野−依存性規準を用いて頂点が分割かまたは粗分化か：視野錐台、表面配向、およびスクリーン空間誤差；を決める。しかし、更に多くの数又は更に少ない数の視野−依存性パラメータを用いることもできる。さらに１つ以上の視野−依存性パラメータを個別に用いることもできる。
【００６５】
最初のテストをステップ１８８で行って頂点が視野錐台内のグラフィックオブジェクトに影響を及ぼすかどうかを決める。頂点が視野錐台内のグラフィックオブジェクトに影響を及ぼさない場合にはこれを分割しない。視野錐台内のグラフィックオブジェクトに影響を及ぼす場合にはステップ１９０で第２のテストを完了する。ステップ１９０で頂点が視点に配向しない場合には頂点を分割しない。頂点が視点に配向する場合にはステップ１９２で第３のテストを完了する。頂点に対して計算されたスクリーン空間誤差が所定トレランス以上になると、頂点を含むプログレッシブメッシュ表示はステップ１９４で細分化する必要がある。頂点に対して計算されたスクリーン空間誤差がステップ１９２で所定トレランス以上にならない場合には、現在の頂点の２つの子頂点をステップ１９６で現在の頂点に削減するように候補に挙げる。表５は方法１８４を実行するサブ−ルーチンの疑似−コードを示す。しかし、方法１８６および表５に示すサブ−ルーチンに対して他の視野−依存性選択細分化規準を用いることもできる。
【００６６】
【表５】
2007265459.tif 000007
【００６７】
視野錐台
図１１は図１０の一層詳細なステップ１８８を示すフローチャートである。本例では頂点Ｖが視野錐台内にあるかどうかを決めるステップ１９８を示す。
本例では任意のプログレッシブメッシュ表示Ｍ∧のメッシュ表現コンピュータシステム１０のメモリシステム１６にロードした後、頂点Ｖが有界スペース階層表示を用いる視野錐台内にあるかどうかを方法１９８（図１１）によって決める。頂点v∧∈Ｖ∧(例えば、Ｍ∧１８３に対する頂点階層表示１５０のリーフノード)に対して、v∧に隣接する一組の頂点を境界付ける半径rv'の第１組の球Ｓv'をステップ２００で決める。しかし、有界球は他の有界素子（例えば、軸整列ボックス）により置換することができる。頂点階層表示１５０のポストオーダ（後行順）横断線をステップ２０２で実行して頂点階層表示の頂点viの組に対し半径rvの第２組の球Ｓvを発生させる。ポストオーダ横断線において従来既知のように階層表示の任意のルートノードをその子孫後に処理する。ステップ２０２のポストオーダ横断線は頂点v'∈Ｖ'(即ち、リーフノード)で開始する。しかし、頂点階層表示の他の横断線を用いることもできる。ポストオーダ横断線は頂点階層表示の親頂点vsiを子頂点vtおよびvuの球ＳvtiおよびＳvuiの境界付けを行う半径rvsiの最小球Ｓvsiに割当てる。形成された球が頂点viを中心としていないので、第２組の球Ｓvを境界付ける頂点Ｖを中心とする第３組の大きな球ＳLをステップ２０４で頂点viに対する半径rLを見いだすことによって決める。本発明の変更例では、すべての下降頂点は所定ノードに対する境界量を構成するものと考えることができる。この考えはコンピュータ化時代には生ぬるいが一層正確なものである。本発明の図示の例では、ステップ２００−２０４は前処理ステップとして計算する。本発明の変更例では、ステップ２００−２０４は実行時に計算する。
【００６８】
本発明の図示の例では、視野錐台はグラフィック技術では既知の４−辺（即ち、半無限）ピラミッドとする。実行時にはあるテストを導入して頂点Ｖ=(vx,vy,vz)を中心とする半径rLの球ＳLが次式（３）に示されるテストを用いるステップ２０６で視野錐台の外側にあるかどうか決める。
i=1,...4に対して、aivx+bivy+civz+di<(-rL)  (3)
式（３）の４つの線形関数aivx+bivy+civz+diによって中心Ｖから視野錐台の４辺のうちの一つまでの符号のついたユークリッド距離を測定する。しかし、他の関数および他の視野錐台形状を用いることもできる。半径rLの有界球ＳLが視野錐台の完全に外側にある場合には、頂点Ｖの分割によって影響を受け得るメッシュＭ∧の領域は視野錐台の外側にあり、分割しない。頂点Ｖの分割によって影響を受け得るメッシュＭ∧の領域が視野錐台の外側にある場合には、頂点はいまだステップ２０８で分割する候補であり、ステップ１９０（図１０）でのテストを行って頂点Ｖを分割すべきかどうかを決める。
【００６９】
図１２は方法１９８（図１１）に対する有界スペース階層表示２１０を示すブロック図である。頂点Ｖ２１２と視野錐台２１４の２次元視野は親頂点vs1２１６およびvs2２１８、子頂点vt1,vu1,vu2およびvt2(220,222,224,226)を有する頂点階層表示の一部分とともに示す。図１１の方法１９８を用い、頂点v∧∈Ｖ∧（２１６、２１８）に対し、頂点階層表示のＶ∧に隣接する一組の頂点（２２４、２２６）を囲む半径rv∧の第１組の球Sv∧をステップ２００（図１１）で決める。ステップ２０２（図１１）においてリーフノード（２２０、２２２）で開始される頂点階層表示のポストオーダ横断線によって頂点階層表示の親頂点vsi２１６を子頂点vtおよびvu（２２０、２２２）の球ＳvtiおよびＳvui（２２８、２３０）の境界付けを行う半径rvsiの最小球Ｓvsi（２３２）に割当てる。形成された第２組の球Ｓv２３２、そのうちの一つを図１２に示す、が頂点Ｖ２１２を中心としていないので、第３組の大きな球ＳLを発生させる。第３組の大きな球からの一つの球２３４は第２組の球Ｓv２３２を囲む頂点階層表示Ｖ２１２を中心とし、図１２に示す。球２３４は頂点Ｖ２１２に対し半径rLを見いだすことによってステップ２０４（図１１）で決める。
【００７０】
図１２において、ステップ２０４（図１１）でのテストに対する４つの線形関数aivx+bivy+civz+di（式３）のうちの２つの関数を用いて符号のついたユークリッド距離（２３６、２３８）を測定し、視野錐台２１４の２つの側部を図１２に示す。ユークリッド距離（２３６、２３８）は双方共有界球ＳL２３４に対し（-rL）２４０よりも短い。これがため、頂点Ｖ２１２は視野錐台２１４の外側にあり、分割しない。頂点Ｖ２１２が視野錐台２１４の内側にある場合にはステップ１９０（図１０）のテスト、即ち、表面配向のテストを行う。
【００７１】
表面配向
図１３Ａ−１３Ｃは視点に対する頂点の配向をテストするステップ１９０（図１０）を示すブロック図である。図１３Ａは頂点vi２４４および標準ベクトルｎ＾vi２４６によって影響を受けるメッシュＭ'２４２の表面の領域を示す。図１３Ｂは３次元グラフィック影像２４８（例えば、グラフィカル地形、メッシュＭ＾２４２のサブセクション）の領域を示す。図１３Ｃはメッシュ２４２のガウスマップ１５０を示す。コンピュータグラフィック技術で既知のように、ガウスマップはグラフィックオブジェクトの表面の一群の点から単位球の一群の点への写像である。
【００７２】
図１０のステップ１９０のテストはグラフィカル像面２４８自体の代わりに、ガウスマップ１５０により規定された表面上の一組のスペース法線を用いること以外、図１１のステップ２００のテストと同様である。法線２５２のセットスペースはユニット球Ｓ２２５４のサブセットである。ここにS２={p∈Ｒ3:｜｜ｐ｜｜=1}であり、ｐは任意の三角形メッシュＭ＾の三角面の法線に対応する一組の点であり、Ｒ3は線形マップである。
【００７３】
頂点vi２４４に対しＭ＾２４８の領域は頂点vi２４４およびその頂点階層表示１５０の地形によってサポートされた法線２５２のスペースを規定する。法線２５６の錐面はベクトルn∧vi２４６に対する半角αvi２５８によって規定する。半角αvi２５８はプログレッシブメッシュが“法線スペース階層表示”を用いるコンピュータシステム１０のメモリシステム１６にロードした後計算する。球S∧vi２６０は法線２５２の関連するスペースを囲む。視点ｅ２６２を用いて頂点vi１４４を監視する。視点ｅ２６２が頂点vi１４４の背面領域２６４にある場合には影響を受けた表面領域のどの部材も視点に向かって配向されてはいない。
【００７４】
図１４は、表面配向に関する図１０のステップ１９０をより詳細に説明する流れ図である。方法２６６（図１４）におけるステップ２６８において、球Ｓ’vi２６０（図１３Ｃ）を、法線２５２の関連するスペースを境界付けるＭ＾２４８の面からの法線に関して決定する。しかしながら、前記境界球を、他の境界素（例えば、軸合わせされた箱）と交換してもよい。ステップ２７０において、要Ｓ’vi２６０およびＳ2２５４の交線を取り囲むベクトルｎ＾vi２４６についての境界円錐２５６のセミアングルαvi２５８を決定する。セミアングルαvi＜π／２を有する境界円錐２５６がステップ２７２において存在しない場合、セミアングルαviをステップ２７４においてπ／２に設定する(すなわち、π＝３．１４１５９２７...)。本発明の説明的実施形態において、ステップ２６８−２７４を前処理ステップとして完成する。しかしながら、本発明の他の実施形態において、ステップ２６８−２７４を実行時に完成する。視点ｅ２６２を与えた場合、頂点ｖiがｅ２６２の背面領域２６４にある場合、頂点ｖiを分割する必要はない。先行技術において、式４に示す試験が背面試験として一般的に使用される。
【００７５】
（ａvi−ｅ）／（‖ａｖｉ−ｅ‖）・ｎ＾vi＞ｓｉｎ αvi  （４）
式４において、ａviを、Ｓviの幾何学的境界量に関する円錐アンカ点とする。円錐アンカ点と視点ｅ２６２との差を、これらのベクトル差の大きさで割る。当該技術分野において既知のように、ベクトル差の大きさ
【００７６】
【数１】
2007265459.tif 000008
に対する||ｖ||は、ベクトルｎ＾vi２４６とのドット積をとるのに使用される。当該技術分野において既知のように、ＡおよびＢを２つのベクトルの大きさとし、θをこれらの間の角度として、ＡＢｃｏｓθの組み合わせは、スカラー積であり、ＡおよびＢの積ではない。したがって、ＡおよびＢのドット積＝Ａ・Ｂ＝ＡXＢX＋ＡYＢY＋ＡZＢZ＝ΣiＡiＢiである。式４におけるドット積値がセミアングルαViの正弦より大きい場合、頂点Ｖi２４４は、視点ｅ２４２に関する背面領域２６４において存在し、分割されない。
【００７７】
本発明の説明的実施形態において、円錐アンカ点ａviを頂点ｖi２４４によって近似し(すなわち、平行投影近似)、式５において示す試験を、実行時にステップ２７６における背面試験の代わりに使用する。
(ｖi−ｅ)・ｎ＾vi＞０および（(ｖi−ｅ)・ｎ＾vi）2＞||ｖi−e||２ｓｉｎ2αvi （５）
【００７８】
ステップ１９０において用いられる（５）式に示すテストは、（４）式に示す従来の後向きテストに対して時間及びスペース効率を改良する。頂点ｖi２４４と視点ｅ２６２との間のベクトル差を決定する。この場合、ベクトル（ｖi−ｅ）を用いてベクトルｎ＾vi２４６とのドット積を作る。
この第１のドット積が零よりも大きい場合(すなわち、(ｖi−ｅ)・ｎ＾vi＞Ｏ)、第２のテストを行なう。第２のテストにおいて、第１のドット積の２乗を用いて、この値が、半角αvi２５８のサインの２乗が乗算された、頂点ｖi２４４と視点２４２との間のベクトル差の大きさの２乗よりも大きいか否かを決定する。ステップ２７６において第１及び第２のテストが真の場合、頂点２４４は後側領域２６４に存在し視点ｅ２６２から見られない。視点ｅ２６２から見られない頂点ｖi２４４は分割しない。ステップ２７６において第１のテスト又は第２のテストのいずれかが適合していない場合、頂点ｖi２４４は後側領域２６４に存在せず視点ｅ２６２から見ることができる。この場合、ステップ２７８（図１４）において頂点ｖi２４４は視点ｅ２６２の方向に向いており、図１０のステップ１９２における分割の対象となる。
【００７９】
スクリーン空間の幾何学的誤差
図１０のステップ１９２を用いて、スクリーン−空間誤差が予め定められた公差を超えるか否かをテストする。頂点ｖ∈Ｖについて、ｖとその現在の隣接区域Ｎv（すなわち、ｖに隣接する面の組）及びＭ∧の対応する隣接区域Ｎ∧vとの間の偏移の量を決定する。その量は、
2007265459.tif 000009
及び
2007265459.tif 000010
について最小スカラーｒとして規定されるハウスドルフの距離Ｈ（Ｎv，Ｎ∧v）である。ここで、Ｂ（ｒ）は半径ｒの閉止空間であり、演算子
2007265459.tif 000011
はミンコウスキー和である。このミンコウスキー和
2007265459.tif 000012
は、
2007265459.tif 000013
として規定される。Ｈ（Ｎv，Ｎ∧v）＝ｒの場合、隣接区域Ｎvと隣接区域Ｎ∧vとの間のスクリーン空間はＢ（ｒ）のスクリーン−空間投影により境界される。ハウスドルフ距離及びミンコウスキー和は当業者にとって既知である。
【００８０】
隣接区域Ｎv及びＮ∧vが互いに類似しほぼ平坦な場合、より一般的な偏移空間ＤによりＢ（ｒ）を置換することにより一層密な距離境界を得ることができる。例えば、高さフィールドの偏移（すなわち、ｘｙ面のグラフ）は、偏移空間Ｄz（δ）＝｛ｈｚ：−δ＜＝ｈ＜＝δ｝を表わすスカラー値δを頂点の組と関連付けることにより記録される。Ｄz（δ）を用いる主要な利点は、対応するＢ（δ）とは異なり、スクリーン投影の主軸Ｚが視る方向と平行になるにしたがってスクリーン投影が消滅することである。Ｄz（δ）の導出についてのより詳細な情報に関して、「Real-time Continuous Level of Detail Rendering of Helght Field」by P.Lindstrom等、ＡＣＭ ＳＩＧＧＲＡＰＨ’９６，pp．１０９〜１１８を参照されたい。
【００８１】
本発明の図示の実施例において、Ｄz（δ）は任意の表面に対して発生する。図１５Ａ〜図１５Ｂは、新たなスクリーン空間の幾何学的な誤差を示すブロック図である。新しい偏移空間Ｄｎ（μ，δ）を規定する。図１５Ａは偏移空間Ｄn（μ，δ）２８０を示す。図１５Ｂは図１５Ａの断面２８２を示す。
偏移空間Ｄn（μ，δ）２８０の大部分は表面に対して直交し、スカラー成分δ２８４から方向成分δ∧nにより捕獲されるが、表面隣接区域Ｎ∧v２８８が湾曲している場合均一成分μ２８６が必要となる。均一成分μ２８６により、偏移が表面に接する不連続曲線（例えば、表面境界及び有形境界）を正確に近似することができる。本発明の図示の実施例において、Ｄn（μ，δ）２８０は、見る方向ｖに沿う投影半径がＭＡＸ（μ，δ‖ｎ∧×ｖ∧‖）として表わされる形状に対応する。すなわち、Ｄn（μ，δ）２８０は２個の値の最大値、すなわち均一成分μ２８６、又は法線ベクトルｎ∧v２４６と半径方向ｖ∧との交差積のベクトル差の大きさが乗算されたスカラー成分δ２８４の最大値である。従来から知られているように、交差積Ａ×Ｂは大きさＡＢｓｉｎθを有するベクトルである。交差積の大きさ‖Ａ×Ｂ‖＝ＡＢｓｉｎθである。
【００８２】
図１６は、頂点Ｖ∈Ｖにおける偏移空間Ｄn（μv，δv）を見い出す方法２９０に関するフロー線図である。エッジ削除変換８４が適用された後、隣接する区域ＮvsとＮ∧vsとの間の偏移は、ステップ２９２において、Ｎvs上に局部的に投影される領域Ｍ∧２４８についてサンプリングした点Ｘiの高密度の（すなわち、密接に関連する）組から残留誤差ベクトルＥ＝｛ｅi｝を試験することにより決定する。ステップ２９４において、ＭＡＸeieE（ｅi−Ｎ-v）／ＭＡＸei∈E（ｅi×Ｎ-v）を用いて、Ｅを境界する比δv／μvを有する最小偏移空間Ｄn（μv，δv）を決定する。すなわち、比δv／μvを固定し、ベクトルｅiと隣接区域Ｎ-vについてのベクトルとのドット積の大きさの最大残留誤差により分割された隣接区域Ｎ-vについてのベクトルとベクトルｅiとのドット積の最大残留誤差ｅiを見い出すことにより偏移空間Ｄv（μv，δv）を決定する。一方、他の簡単なスキムを用いて保証された境界を有する偏移空間を得ることができる。
【００８３】
視点ｅ２６２、スクリーン空間公差τ及び視角ζが与えられると、(６)式に示すテストを用いてスクリーン空間投影Ｄn（μs，δv）がスクリーン空間公差τを超えるか否かを決定することができる。
【００８４】
MAX(μv,δv‖Ｎ＾v×((v-e)/‖v-e‖)‖)/‖v-e‖>＝(2cot ζ/2)τ(6)
μvの最大値及びδvを有する大きな項が、スクリーン空間公差τのζ／２倍したもののコタンジェントの２倍に等しいか又はそれ以上の場合、Ｄn（μv,δv）は、スクリーン公差τを超える。
本発明の図示の実施例において、ステップ２９２〜２９４は予備処理工程として完結する。本発明の変形例において、ステップ２９２〜２９４はランタイムで完了する。
【００８５】
本発明の図示の実施例においては、ステップにおいて、（７）式に示す等価なテストを用いてスクリーン空間投影Ｄn（μv，δv）がスクリーン空間公差τを超えるか否かを決定する。
μ2v＞＝κ2＝‖v-e‖2又はδ2v(‖v-e‖2−((v-e)・N＾v)2)2) ＞＝κ2‖v-e‖4 （７）
ここで、κ2=(2cotζ/2)2τ2であり、フレーム毎に計算される新たな視角ファクタである。第１のテストは、均一成分の２乗が、κの成分の２乗に頂点ｖと視点ｅとの間のベクトル差の大きさの２乗をかけ合せたものに等しいか又はそれ以上が否かを決定する。この第１のテストの結果が適合している場合、Ｄn（μv,δv）がスクリーン空間公差τを超えていることになる。第１のテストの結果が適合していない場合、第２のテストにより、スカラー成分δの２乗に、頂点Ｖと視点ｅとの間のベクトル差の２乗から頂点ｖと視点ｅとの間のベクトル差と隣接区域Ｎvに対するベクトルとのドット積の２乗を引いたものを乗算した値が、κ成分の２乗に頂点ｖと視点ｅとの間のベクトル差の絶対値の４乗したものを乗算した値に等しいか又はそれ以上であるか否かを決定する。この条件に適合しうる場合、Ｄn（μv，δV）はスクリーン空間公差τを超えることになる。
【００８６】
ステップ２９６において、（７）式のいずれのテストも適合していない場合、スクリーン空間の幾何学的誤差はスクリーン空間公差τを超えず、プログレッシブメッシュは適合細分されない。ステップ２９６におけるいずれかのテスト結果が条件に適合する場合、ステップ２９８において、この頂点は依然として分割の対象となる。
【００８７】
本発明の図示の実施例において、図１０の方法１８６のステップは以下の順序で完了する。ステップ１００、ステップ１９２、次にステップ１８８を行ない、方法１８６を最適な方法とする。一方、このテストに関して別の順序を用いることもできる。３個のテストの全ては共通のサブ数式をとるので、方法１８６で完了するテストは、フレームを本発明の実施例の平均にレンダリングするために用いられる時間の１５％以下の時間を必要とする。方法２９０（図１６）を用いてステップ７６（図４）で計算したスカラー値｛−γv,sin2αv,μ2v，δ2v｝は、アクセスのためにｖ細分情報フィールド（表２）としてデータ構造記録媒体に記憶する。
【００８８】
メッシュの選択的細分
変更されたビュー依存性パラメータに基づいて方法１８６の３個のテスト（図１０）の後ステップ８０において選択的細分されたメッシュを作成するための（図４）再パラメータ化したメッシュを細分するため、メッシュを選択的細分する方法を利用する。頂点ｖ∈Ｖに関して、頂点分割変換８２を用いて分割すべきか、或いはエッジ削除変換８４を用いて削除すべきかを決定する。メッシュを選択的細分するため、所望の頂点及び面がアクティブになる前及び所望の細分されたメッシュが作成される前に、多重頂点分割変換８２及び多重エッジ削除変換８４を行なうことができる。
【００８９】
図１７Ａ及び図１７Ｂは、メッシュを選択的細分する方法３０２を示すフロー線図である。ステップ３０４（図１７Ａ）において、ループを用いて変更されたビュー依存性パラメータに基づき再パラメータ化されたメッシュＭREのアクティブ頂点Ｖ（例えば、表４からのアクティブ頂点）の二重リンクしたリストについて繰り返えす。選択的細分されたメッシュＭsは表４に示すデータ構造ＳＲＭeshに記憶する。ステップ３０６においてテストを行ない、アクティブ頂点Ｖがビュー依存性パラメータの変化により細分すべきか否かを決定する。
【００９０】
アクティブ頂点を分割すべきことを決定するために用いるテストは方法１８６（図１０）及び表５の擬似コードにより記述される。しかしながら、他のテストを用いることもできる。ステップ３０６におけるテストが適合する場合、ステップ３０８においてテストを行ない、アクティブ頂点ｖに対して行なわれる頂点分割変換８２が適合しているか否かを決定する。頂点（例えば、ｖペアレントに記憶されている８８）並びに頂点８８と隣接する対の隣接する面の第１及び第２の組（例えば、ｖ．ｆｎ〔０・・・３〕に記憶されている(９６〜１０２)）がアクティブの場合、頂点分割変換８２は適合となる。これらの面のいずれかがアクティブでない場合(すなわち、メッシュに現在含まれていない場合)、ステップ３１０において一連の頂点分割変換８２を行ない、ステップ３０８における頂点分割変換を適合とする。ステップ３１０において一連の頂点分割変換８２を行ない、要求されたアクティブではない面（例えば、ｖ．ｆｎ〔０・・・３〕の組）をアクティブな面とする。ステップ３１０における頂点分割が適合している場合、アクティブな頂点と関連する頂点も同様にアクティブとなり、アクティブ頂点ｖＡはステップ３１２において頂点分割変換８２を用いて２個の子供の頂点に分割される。
【００９１】
ステップ３０６におけるテストが条件に適合していない場合、ステップ３１４においてアクティブ頂点ｖＡの親の頂点についてのエッジ削除変換８４が適合か否かを決定するテストを行なう(図１７Ｂ)。エッジ削除変換８４は、そのテストが適合している場合（すなわち、頂点ｖの親もアクティブであり、親の頂点ｆＬの隣接面が親頂点ｆｎ〔０・・・３〕の隣接面と整合している場合）だけ実行する。ステップ３１４におけるテストが適合していない場合、アクティブ頂点ＶＡについてはなにも行わない。
【００９２】
ステップ３１６（図１７Ｂ）において、アクティブ頂点の親がビュー依存性パラメータの変化に基づいて細分すべきか否かを決定するためのテストを行なう。
このステップ３１６におけるテストが適合していない場合、ステップ３１８において、アクティブ頂点ＶＡをエッジ削除変換８４を用いて削除する。ステップ３１４におけるテストが適合していない場合、アクティブ頂点の親についての細分が完了する(図１７Ａ)。表６は、本発明の図示の実施例として方法３０２を実施するためのサブルーチン用の擬似コードを示す。
【００９３】
【表６】
2007265459.tif 000014
procedure force_split(V’)は、頂点分割変換８２を用いて分割される頂点についての頂点情報を記憶するスタックを用いる。一方、別のデータ記憶構造体を用いることもできる。
【００９４】
方法３０２（図１７）は、変更されたビュー依存性パラメータに基づいてメッシュ区域を選択的細分し(例えば、頂点分割変換８２を用いて)、可能な場合にはメッシュ区域を粗くする(例えば、エッジ削除変換８４を用いて)。頂点分割変換８２又はエッジ削除変換８４が実行された後、得られた区域内の頂点について別の変換を考慮する。これらの頂点はＶの横断において以前に調査されているので、これらの頂点は頂点リストに再配置されたリストの繰り返し後に直ちにリストに含ませる。例えば、頂点分割変換８２の後、繰り返し後ｖ．ｖｔを頂点リストに付加する。エッジ削除変換８９の後、ｖ．親を付加し、ｖ．ｖｌ及びｖ．ｖｒを再配置する。
【００９５】
ＭＡをＭＢに変換する方法３０２の時間的な複雑性は、より悪い場合Ｏ（｜ＶA｜＋｜ＶB｜）となる。この理由は、ＭA−ＭO−ＭBはＯ(｜ＶA｜)のエッジ削除変換８４及びＯ（｜ＶB｜）の頂点分割変換８２を必要とし、これらの変換には一定時間かかるためである。頂点ＶBの組は頂点ＶAの組と同様である。
従来から知られているように、Ｏ（ｆ(ｎ)）の表記を用いて、関数ｆ（ｎ）の成長レートの漸近複雑性を表記する。ビュー依存性が連続して変化する場合、アクティブ頂点｜Ｖ｜の簡単な横断はＯ（｜Ｖ｜）となり、これは方法３０２の時間を消費する部分である。時間的複雑性Ｏ（｜Ｆ｜≒２｜Ｖ｜）を典型的に有するレンダリング処理はＯ｜Ｖ｜よりも大きい時定数を有する。尚、｜Ｆ｜はアクティブ面の数である。従って、方法３０２は、所定のコンピュータシステム形態の場合(例えば、１２８ＭＢのメモリを有するＳｉｌｉｃｏｎ Ｇｒａｐｈｉｃｓ Ｉｎｄｉｇｏ ２ Ｅｘｔｒｅｍｅ，１５０ＭＨｚＲ４４００を用いる場合)、本発明の図示の実施例の平均としてフレームをレンダリングするために使用する全時間の約１４％だけを必要とする。
【００９６】
所定のメッシュ及び一定のスクリーン−空間公差τの場合、アクティブ面の数｜Ｆ｜はビューに応じて大幅に変化する。細分時間及びレンダリング時間の両方が｜Ｆ｜と密接に相関するので、フレームレートの大幅な変化が生ずる。本発明の図示の実施例において、スクリーン−空間公差τは｜Ｆ｜が一定のレベルに維持されるように調整する。
【００９７】
ｍを面の所望の数とし時間ｔにおいて方法３０２が呼び出される場合、(８)式を用いてスクリーン−空間誤差τを調整する。
τt＝τt-1（｜Ｆt-1｜／ｍ） （８）
量｜Ｆt-1｜は、以前に描画されたフレームアクティブ面の数である。この(８)式を用いる簡単なフィードバック制御システムは良好な安定性を呈する。この理由は、｜Ｆ｜がτの滑らかな単調な関数となるからである。本発明の図示の実施例において、フレームの直接調整を用いたが、フレームレートは動作システムの不整合性に一層強く影響を受けるので、(８)式のｍを調整することにより第２の遅いコントローラを用いて間接的に達成することができる。
【００９８】
方法３０２（図１７）のステップ３０４はリストＶ全体の簡単な横断であるから、方法３０２により達成される作用は、フレーム中のリストＶのサブ組だけをトラバースすることにより連続する複数のフレームに対して作用する。ゆっくりと変化するビュー依存性パラメータの場合、償却方法３０２はステップ８０におけるアクティブ細分の低いオーバヘッドを減少させると共に数個の可視アーチファクトを導入する。
【００９９】
一方、償却（ａｍｏｒｔｉｚａｔｉｏｎ）を利用する場合、スクリーン−空間公差τの調整による｜Ｆ｜の調整は一層困難になる。この理由は、｜Ｆ｜の応答が数個のフレームにわたって遅れるからである。償却を利用する本発明の図示の実施例において、リストＶ全体をトラバースする代わりに、リストＶの全体のサブ組だけが各フレーム毎にトラバースされる。従って、スクリーン空間τについての調整作業は１個又はそれ以上の連続するフレームに分布する。リストＶ全体がトラバースされるまで、スクリーン−空間公差τに対する変更は行なわれない。オーバーシューティングを減らすため、アクティブ面の数が上限値（例えば、｜Ｆ｜＞＝１．２ｍ）に達する場合頂点分割変換８２は許可されないが、公差τの次の調整に向けて導入されるアクティブ面の数は計測される。
【０１００】
地形図形
方法３０２は、２個の選択的に組合されたメッシュＭＡとＭＢとの間の地形図形も形成する。地形図形メッシュＭG（α）は、その頂点がパラメータＯ＜＝α＜＝１の関数として変化するメッシュであるので、ＭG（０）とＭAと同一に見えＭG（１）はＭBと同一に見える。地形図形メッシュＭG（α）は、そのアクティブ頂点フロント（ｖｅｒｔｅｘ ｆｒｏｎｔ）がこの頂点フロント中の各頂点に対してＭA及びＭBの頂点に等しいか又はそれ以下であることが見い出されている。図１８は、メッシュＭA３２４及びＭA３２６に等しいか又はそれ以下の地形図形メッシュＭG（α）３２２についての頂点階層構造３２０を示すブロック図である。これらのメッシュの個々の頂点(１５０〜１８２)は図９に基づいて説明した。
【０１０１】
メッシュＭAはこの性能を通常満足する（Ｍ-＝ＭA，８４、図９を参照）。一方、一層簡単な地形図形メッシュＭGは、その面ＦGが面ＦA及びＦBのスーパーセット（ｓｕｐｅｒｓｅｔ）となる性能及び、いかなる頂点ｖJ∈ＶGも特定の祖先ｖρG-A(j)∈ＶA及び特定の祖先ｖρG-A(j)∈ＶBを有する性能を有する。地形図形メッシュＭG（α）３０８は（９）式に示す関係を有するメッシュ（ＦG，ＶG(α)）とする。
ｖjG(α)＝（１−α）ｖρG-A(j)＋（α）ｖρG-B(j) （９）
ＭBがＭAについての方法３０２の結果の場合、地形図形メッシュＭGは一層直接的に得ることができる。ステップ３０４におけるＶを通る単一のパスの代わりに、２個の別個のパスがＶを通って完結する。
【０１０２】
図１９は地形図形ＭB（α）を直接作成する方法３２８を示すフロー線図である。第１のパスＭA→ＭB（α）は、ステップ３３０において頂点分割変換８２だけが考慮される方法３０２（図１７）を用いて完了する。頂点分割変換８２のシーケンスはステップ３３２において記録する。第２のパスＭG（α）→ＭBは、ステップ３３４においてエッジ削除変換８４だけが考慮されて完了する。頂点分割変換８２のシーケンスはステップ３３６において記録する。両方のパスに関して、変換（８２，８４）のシーケンスは記録され（３３２，３３４）、中間メッシュＭG（α）を再生することができると共に所望の祖先関数ρG-A及びρG-Bを構成することができる。得られた地形図形ＭG（α）を用いてメッシュＭAとＭBとの間のスムースな遷移を実現する。このスムースな遷移は、メッシュが視認された際「ポッピング」と称されている突然の遷移を除去する助けとなる。
【０１０３】
三角形ストリップ
多数のグラフィックシステムは、最適な描写パフォーマンスに対して図形イメージの三角形ストリップを形成する。三角形ストリップを、隣接する面を有する接続した三角形のシーケンスとする。図２０は、三角形ストリップ３４０を示す図形領域３３８のブロック図である。三角形ストリップ３４０は、面３４２に始点を有するとともに面３４４に終点を有する。三角形ストリップを右回りに形成する。図形イメージが描写される際、図形イメージ内の接続領域を効率的に描写し及び表示するさめに三角形ストリップが用いられる。
【０１０４】
本発明の図示した実施の形態において、微細化方法３０２（図１７）がインクリメンタルである。その結果、図２０に示した三角形ストリップ（３４０）を事前に計算するのは容易でない。図２１は、変更したビュー依存パラメータに対する本発明の図示した実施の形態において三角形ストリップを発生させる方法３５０を示す流れ図であり、方法３０２とともに用いられる。方法３５０は、有効な描写に対するストリップに対して１０−１５面の長さを有する三角形ストリップを発生させる。
【０１０５】
ステップ３５２において、アクティブ面ｆ∈Ｆのリストを横断する。ステップ３５４において、面ｆ（例えば３４４）がまだ描写されていないか否かを決定するテストを行う。面ｆが描写されている場合、新たな三角形ストリップを開始しない。
【０１０６】
面ｆがまだ描写されていない場合、ステップ３５６において、面ｆに対する新たな三角形ストリップ（例えば３４０）を開始する。ステップ３５８において、面ｆを描写する。ステップ３６０において、面ｆに隣接する任意の面が描写されていないか否かを決定するテストを行う。隣接する面が描写されていない場合、ステップ３６２において、その面が描写されるとともに三角形ストリップに追加される。同様な特徴を有する隣接する面は、図形ハードウェアの図形状態を変化させない三角形ストリップを形成するように考えられる。
【０１０７】
分断化を減少させるために、本発明の図示した実施の形態では、三角形ストリップ３４０が右回り（例えば、３４２−３４４）に構成される。本発明の他の実施の形態では、三角形ストリップ３４０に対して左回り（例えば、３４４−３４２）を用いる。ステップ３６０のテストが失敗する（すなわち、隣接する全ての面が描写された）場合、三角形ストリップは行き止まり（例えば３４４）に到達し、ステップ３５４における面Ｆのリストの検討を新たな面（例えば３４６）で再開する。Ｆａｃｅ．ｍａｔｉｄ領域（表４）の１ビットを、描写した面を記録するブールフラグとして用いる。全ての面が描写されると、Ｆを通じた第２パスによって描写面ビットが迅速にクリアされる。
【０１０８】
本発明の図示した実施の形態において、パラメータ表面のリアルタイム適応テッセレーションを用いる。従来既知のように、テッセレーションは、構造、色及び陰影を有する円滑な表面を三角形に分けるプロセスである。図２２は、パラメータ表面の適応テッセレーション３６４を示す流れ図である。方法３６４を、本発明の図示した実施の形態の事前の計算として仕上げる。本発明の他の例において、方法３６４をリアルタイムで仕上げる。ステップ３６６において、図形オブジェクトの表面の密な（すなわち詳細な）テッセレーションメッシュを計算する。密なテッセレーションメッシュは、図形モデルの頂点、縁及び面の構造、陰影及び色の近似を有する。ステップ３６８において、密なテッセレーションメッシュを、プログレッシブメッシュシーケンスを構成するのに用いる。ステップ３７０において、プログレッシブメッシュシーケンスを、所望のレベルの詳細で打ち切る。リアルタイムで、打ち切られたプログレッシブメッシュシーケンスを、変更するビュー依存パラメータのセットに基づく視点ｅ２６２に従う図４のステップ７８−８０で細分化する。
【０１０９】
テッセレーションがランタイム前に固定されるとしても、ランタイムの実現は、テッセレーショントリミング又はステッチングを必要とせず、インクリメンタル細分化（例えば方法３０２）が用いられるために有効であり、かつ、連結性が表面湾曲及び視点に適合するテッセレーションに対して非常に適合性がある。
【０１１０】
適応細分化システム
図２３Ａ及び２３Ｂは、本発明の図示した実施の形態のシステム３７２を示すブロック図である。システム３７２は、任意のプログレッシブメッシュ表示Ｍ＾に対するＮデータ構造記録を配置するロケータ／コンストラクタモジュール３７４を有する。本発明の他の例において、ローダ／コンストラクタモジュール３７４は、コンピュータシステム１０のメモリシステム１６の任意のプログレッシブメッシュ表示Ｍ＾に対するＮデータ構造記録を構成する。事前処理モジュール３７６を用いて、コンピュータシステム１０のメモリシステム１６のプログレッシブメッシュ表示をロードし、プログレッシブメッシュ表示を再パラメータ化し、かつ、選択細分化基準のセット（７２−７６，図４）を用いてプログレッシブメッシュ表示を事前処理する。ランタイムに任意のプログレッシブメッシュＭ＾を適切に細分化するために、描写モジュール３７８は、ビュー依存パラメータを受信し、選択細分化基準を評価し、かつ、ユーザの表示装置にアクティブ面を描写する。描写モジュールを、図形イメージを描写するのに用いられる従来既知のハードウェア及びソフトウェアの任意の組合わせとすることができる。本発明の図示した実施の形態において、カリフォルニア州のマウンテンビュウ（Ｍｏｕｎｔａｉｎ Ｖｉｅｗ）のシリコングラフィックス社によるＩｎｄｉｇｏ２ Ｅｘｔｒｅｍｅ（例えば、１５０ＭＨｚ，１２８ＭＢのメモリを有するＲ４４００）グラフィックシステムを、描写モジュール３７８として用いる。しかしながら、他の描写を用いることもできる。ロケータ／コンストラクタモジュール３７４及び事前処理モジュール３７６を、シリコングラフィックシステムのソフトウェアアプリケーションプログラムとして実現する。しかしながら、他の形態を用いることもできる。更に多い又は更に少ないモジュールをシステム３７２に対して用いることもでき、モジュール３７４−３７８の機能を、更に少ないモジュールに組み合わせた追加のモジュールに分割することができ、かつ、事前処理時又はランタイム時に用いることができる。図２３Ｂは、上記システム３７２の詳細を示すブロック図である。
【０１１１】
本発明の追加の例図
本発明の図示した実施の形態の方法及びシステムの追加の実例を図２４−２７に示す。図２４−２７は、本発明の種々の態様のカラ一例図である。図３は既に説明した。
【０１１２】
図２４Ａ−Ｆは、プログレッシブメッシュ表示のビュー依存細分化のカラースクリーン表示３８０−３９０である。図２４Ａ−２４Ｂにおいて、２次元錐台をオレンジ色で強調し、予め設定されたスクリーン空間幾何学的誤差τを用いて図形領域を表示する。図２４Ａは、図形領域のプログレッシブメッシュ表示の平面のカラースクリーン表示３８０であり、この場合、スクリーン空間幾何学的誤差τを０．０％とし、３３，１１９面を有する。このスクリーン表示は、ビューの錐台内で非常に高いレベルを示す。ビューの錐台を、図の上方向を指示するオレンジ“Ｖ”として示す。図２４Ｂは、図２４Ａのプログレッシブメッシュ表示の平面のカラースクリーン表示３８２であり、この場合、スクリーン空間幾何学的誤差τを０．３３％とし、１０，０１３面を有する。図２４Ｂは、方法７０（図４）によって適切に細分化される。図２４Ｃは、図４の方法７０で適切に細分化した図２４Ａのプログレッシブメッシュ表示の規則的なビュー３８４のカラースクリーン表示である。図２４のビューの錐台内のプログレッシブメッシュ表示を粗くし、それは図２４Ｂ及び２４Ｃにおいて更に低いレベルの詳細を有する。方法７０（図４）を図２４Ｂ及び２４Ｃのプログレッシブメッシュ表示とともに使用し、図２４Ｂ及び２４Ｃのメッシュを適切に細分化することによって図２４Ａのプログレッシブメッシュを形成する。
【０１１３】
図２４Ｄは、７９，２０２面を有するテクスチャマップ付けしたプログレッシブメッシュ表示Ｍ＾のカラースクリーン表示３８６である。図２４Ｅは、１０，１０３面を有する構造マップ付けしたプログレッシブメッシュ表示Ｍ＾のカラースクリーン表示３８８である。図２４Ｄ及び２４Ｅからわかるように、図２４Ｅが僅かに少ない面を有する（例えば、図２４Ｅを方法７０によって近似する。）としても、図２４Ｄと図２４Ｅとの間にはビュー的な差がほとんどない。図２４Ｆは、図２４Ｄ及び２４Ｅのメッシュから発生した三角形ストリップ（黄色ライン）のカラースクリーン表示３９０である。図２４Ｂ，２４Ｃ，２４Ｄ及び２４Ｅは、６００×６００画素図形イメージに対して２画素を表す０．３３％のスクリーン空間幾何学的誤差τを有する。図２４Ｆは、同様な特性を有する三角形ストリップの形成を示す。例えば、図２４Ｄ及び２４Ｅの表面のこげ茶色部分（右上コーナー）は、図２４Ｆの右上コーナーの三角形ストリップに相当する。
【０１１４】
図２５Ａ−２５Ｃは、球に対する方法７０（図４）を用いたビュー依存細分化を示すカラースクリーン表示３９２−３９６である。図２５Ａは、１９，８００面を有する元の碁盤目状にした球のカラースクリーン表示３９２である。図２５Ｂは、方法７０によって形成した図２５Ａに示す碁盤目状にした球の前面のカラースクリーン表示３９４である。図２５Ｃは、図２５Ｂから粗い碁盤目状の球の上面のカラースクリーン表示３９６である。図２５Ｂからわかるように、球は、図２５Ａに示した元の球に非常に類似している。２次元ビュー錐台をオレンジ“Ｖ”で示す。球の背面部を、更に細分化したビュー錐台の“Ｖ”に最も近い球の前面部に比べて粗くする。
【０１１５】
図２６Ａ−２６Ｃは、方法３６４（図２２）を用いて碁盤目状のパラメータ表面で形成した打ち切られたプログレッシブメッシュ表示（１０，０００面）のビュー依存細分化を示すカラースクリーン表示３９８−４０２である。図２６Ａは、２５，４４０面の元の碁盤目状の図形表示（すなわち、ティーポットの部分）のカラースクリーン表示３９８である。図２６Ｂは、τ＝０．１５％及び１，７８２面のプログレッシブメッシュシーケンスの打ち切られたプログレッシブメッシュ表示のカラースクリーン表示４００である。図２６Ｃは、図２６Ｂの打ち切られたプログレッシブメッシュの正面を示すカラースクリーン表示４０２である。２次元ビュー錐台を黄色“Ｖ”によって示す。ビュー錐台の外側の領域の粗化をビュー錐台の右に対して観察することができる。
【０１１６】
図２７Ａ−２７Ｃは、方法７０の図形キャラクタに対して任意のメッシュＭＡのビュー依存細分化を示すカラースクリーン表示４０４−４０８である。図２７Ａは、４２，７１２面の図形キャラクタを表す元の任意メッシュＭＡのカラースクリーン表示４０４である。図２７Ｂは、３，１５７面の第１の打ち切られたプログレッシブメッシュのカラースクリーン表示４０６である。用いられるビュー錐台を、図２７Ｂの図形キャラクタ頭部の周辺の黄色ボックスによって示す。ビュー錐台の外側の図形の一部を粗くし、それは、更に低く規定した詳細を有する一般形状として現れ、粗くしたメッシュによって表される。図２７Ｃのビュー錐台を、図形キャラクタの腕の周りの黄色ボックスによって表す。ビュー依存パラメータ(例えば、ビュー錐台)を図２７Ｂと２７Ｃとの間で変更する。図形キャラクタの頭部を表すメッシュを、図２７Ｃの上部付近に示したように粗くする。ビュー錐台内の腕、膝及び脚の上部を図２７Ｂと図２７Ｃとの間で方法７０によって細分化して、増大した詳細のレベルを示す。その理由は、これら領域がビュー錐台内に現れるからである。
【０１１７】
任意のメッシュに対する一般化した適応細分化
2007265459.tif 000015
を全てのあり得るメッシュのセットとする場合、
2007265459.tif 000016
及び
2007265459.tif 000017
であるメッシュＭのプログレッシブメッシュ表示ＭPMが、増大する精度のｉ＝{０,...，ｎ−１}，ＭO，Ｍ1,...，Ｍn-1に対するメッシュ近似Ｍiの連続シーケンスを規定し、任意の所望の複雑さのビューに依存しないレベルの詳細近似を有効に回復することができる。ビューに依存しないプログレッシブメッシュ表示ＭPMを、第１セットのメッシュ変換、メッシュ変換のセットに対する第１セットの制約及び固定した細分化基準のセットを有するメッシュＭに対して形成する。プログレッシブメッシュ表示を形成するのに用いられる第１セットのメッシュ変換は、稜線削除処理３６及び頂点分割処理３８（図２）を有する。稜線削除処理３６及び頂点分割処理３８を頂点に基づく動作とする。第１セットのメッシュ変換は、表７に示す制約のセットによって拘束される。
【０１１８】
【表７】
2007265459.tif 000018
【０１１９】
開始メッシュＭnを、表７の制約及び固定された細分化基準のセットを用いてｎ−１の連続する稜線削除処理３６のシーケンスを適用することによって、更に粗いメッシュＭ0に簡単化することができる。固定された細分化基準のセットは、縁消失３６に対する全ての候補の優先待ち行列への置換を有し、この場合、各変換の優先順位をそのエネルギーコストΔＥとする。エネルギーコストΔＥは、開始メッシュＭnからの少数の頂点を有する点ｘi∈Ｒ3のセットＸを、プログレッシブメッシュ表示のメッシュＭiに正確に適合させる。
【０１２０】
稜線削除処理３６を実行すべき場合、優先待ち行列の最初（すなわち、最小ΔＥを有する）の稜線削除処理を完了し、稜線削除処理に隣接する縁の優先順位を再計算し及び優先待ち行列に配置する。更なる情報については上記Ｐｒｏｇｒｅｓｓｉｖｅ Ｍｅｓｈｅｓの文献を参照されたい。固定された細分化基準のセットによって、中間メッシュ近似Ｍiを、メッシュＭのプログレッシブメッシュ表示ＭPMに対して形成することができる。稜線削除処理３６が可逆であるので、更に粗いメッシュＭ0をｎ個の連続する頂点分割処理３８とともに用いて、開始メッシュＭnを再形成することができる。
【０１２１】
本発明の図示した実施の形態に対して既に説明した方法７０（図４）及び他の方法を用いて、任意の三角形メッシュＭＡを適切に細分化し、この場合、ＭＡ⊂Ｍとし、ＭＡを適切なメッシュ表示として格納する。適切に細分化したメッシュＭＡを、第２セットのメッシュ変換に対する第２セットの制約及び選択細分化基準のセットを用いて、任意の三角形メッシュＭ∧から形成する。第２セットの細分化基準を、相違するメッシュ変換を有する任意のメッシュＭＡの用いられた相違する処理部とする。本発明の図示した実施の形態において、第２セットの細分化基準を用いて、任意のメッシュＭＡのビュー依存近似を構成する。第２セットのメッシュ変換は、頂点分割変換８２及び縁消失変換８４を有する。以下の表８の制約によって、頂点分割変換８２及び縁消失変換８４が、シーケンスの外側(すなわち、プログレッシブメッシュ表示に対する稜線削除処理３６及び頂点分割処理３８によって課された厳密な全体の順位内に存在しない。)に供給されるとともに、面を考察する。第２セットのメッシュ変換（８２，８４）を用いて、任意のメッシュを適切に細分化するために用いられる頂点階層（例えば、図９における１５０）を構成する。本発明の図示した実施の形態で用いられる第２セットのメッシュ変換に対する第２セットのメッシュ変換を以下の表８に示す。
【０１２２】
【表８】
2007265459.tif 000019
【０１２３】
選択細分化基準のセットはビュー依存パラメータ（表４、図１０）に基づき、そのパラメータは、ビュー錐台、表面方位及びスクリーン空間投影誤差を有する。選択細分化基準のセットは、上記セット固定細分化基準と異なる。選択細分化基準のセットは、メッシュ上で変更する細分化レベルを有する非対称変換を許容する(すなわち、メッシュＭsの領域を、同一メッシュＭsの他の領域を縁消失変換８４によって粗くすることができる頂点分割変換８２によって細分化することができる。)。それに対して、固定された細分化基準のセットによって、メッシュ上の固定レベルの細分化（すなわち、Ｍi+1からＭiに移る一連の縁消失変換３６又はＭiからＭi+1に移る一連の頂点分割変換）を有する一様な変換のみを許容する。選択細分化基準のセットによって、頂点分割変換８２及び縁消失変換８４の任意の連続を基本メッシュに適用して、適切に細分化したメッシュを形成する。しかしながら、本発明は、図示した上記実施の形態における第２セットのメッシュ変換に対する第２セットの制約及び選択細分化基準に限定されるものではない。例えば、任意のセットのメッシュ変換は、頂点分割変換８２及び縁消失変換８４以外のメッシュ変換を制約することができる。任意のセットのメッシュ変換に対する任意のセットの制約は、上記表８に示したよりも多い又は少ない制約を有することができる。任意のセットの選択細分化基準は、時間変動パラメータや表面収束パラメータのようなビュー依存基準の変化以外の基準を有することができる。時間変動パラメータによって、相違する期間で同一図形イメージの相違する部分で収束することができる(例えば、図形イメージの一部で移動光源を光らせて、その部分を照射する。)。表面収束パラメータによって、図形イメージの表面の一部に相違する情報を表示することができる(例えば、図形的に表示した表面上の温度変化)。
【０１２４】
図２８は、任意のセットのメッシュ変換及び任意のセットの選択細分化基準に対する任意のセットの制約によって任意のメッシュを適切に規定する一般化された方法４１０を示す流れ図である。ステップ４１２において、任意のメッシュを選択する。任意のメッシュをメッシュＭのセットからの任意のメッシュとすることができる。任意のメッシュを、プログレッシブメッシュ表示として格納することができる。しかしながら、他のメッシュ表示を用いることもできる。任意のメッシュに対するメッシュ変換のセットに対する制約のセットをステップ４１４で選択する。
【０１２５】
任意のメッシュに対する選択細分化基準のセットをステップ４１６で選択する。選択細分化基準によって、メッシュ内で変動するレベルの細分化（すなわち、表示の同一瞬時におけるメッシュの相違する領域の細分化及び粗化）を許容することができる。ステップ４１８において、任意のメッシュの細分化を、メッシュ変換に対する制約のセット及び細分化基準のセットを用いて調整し、幾何学的な基本を任意のメッシュに追加して、選択的に細分化したメッシュの第１近似を行う。ステップ４２０において、細分化基準に影響を及ぼす変化に基づく選択細分化メッシュを通じたナビゲートによって適切に細分化して、適切に細分化したメッシュを形成する。例えば、ナビゲーションを、メッシュに対して形成した頂点階層の前の頂点によって完了し、これによってメッシュ内で変動するレベルの細分化を行う。
【０１２６】
既に説明したようなメッシュのビュー依存細分化は、一般化した方法４１０によって適切に規定した任意のメッシュの一つの特定例である。例えば、任意の三角形メッシュＭＡ∈Ｍをステップ４１２で選択する。任意の三角形メッシュＭＡを、プログレッシブメッシュ表示Ｍ0,...，Ｍn-1，Ｍn＝ＭＡとして記憶する。メッシュ変換のセット（例えば、頂点分割変換８２及び縁消失変換８４）に対する制約のセット（例えば、表８）をステップ４１４で選択する。選択細分化基準のセット（例えば、ビュー依存パラメータ（図１０）の変更）をステップ４０６で選択する。ステップ４１８において、メッシュの細分化を、制約のセット及び細分化基準のセットを用いて調整し、選択的に細分化したメッシュの第１近似を行う(例えば、ステップ７２−７６、図４、表５)。ステップ４１０において、選択細分化メッシュを、細分化基準（例えば、ステップ７８−８０、図４、表６）に影響を及ぼす変化に基づいて、選択的に細分化したメッシュを通じたナビゲーションによって適切に規定して、適切に細分化したメッシュを形成する。一般化した方法４１０を、本発明による図示した実施の形態に対して説明した選択構成要素を置換することによって任意のメッシュ上で用いることができる。新たなセットのメッシュ変換を、頂点分割８２及び縁消失８４の変換を新たなメッシュ変換に置換することによって選択することができる。新たなセットの制約は、（新たな頂点階層構造となる）表８に示した制約に取って代わることができる。新たなセットの選択細分化基準を、（例えば、表５に示すビュー依存パラメータ機能呼出しｑｒｅｆｉｎｅ（ｖs）サブルーチンを置換することによって）選択することができる。選択的な細分化メッシュを通じた新たなナビゲーション方法も（例えば表６に示したａｄａｐｔ_ｒｅｆｉｎｍｅｎｔ（）サブルーチンを置換することによって）選択することもできる。
【０１２７】
一般化した方法は、連続的なメッシュシーケンスとして格納された任意のメッシュからの変動するレベルの細分化を有する適切に細分化したメッシュを形成し、その連続的なメッシュシーケンスを、図形イメージを表示するのに用いられる大抵の任意の基本的な幾何学的モデルとともに使用することができる。結果的に得られる適切に細分化したメッシュは、所望のレベルの近似の際に従来既知の細分化形態に比べて少ない多角形しか必要としない。適切な細分化の結果、多角形の数を、より少ないコンピュータリソースによって図形イメージを描写することができる選択したビュー状態の下で観察者によって見えないメッシュの粗い領域によって減少させる。適切に細分化したメッシュを、コンピュータゲーム又は他のアプリケーションで用いられるイメージに対してインターネットやイントラネットのようなコンピュータネットワーク上でメッシュを連続的に伝送するのにも用いることができる。
ここで説明するプログラム、プロセス及び方法は、特に示さない場合、コンピュータ装置（ハードウェア又はソフトウェア）の任意の特定のタイプに関連せず及び限定されない。種々のタイプの汎用又は特別なコンピュータ装置をもちいることができ、それは、ここで説明した技術によって動作を実行することができる。
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。
【図面の簡単な説明】
【０１２８】
【図１】本発明の説明的実施形態を実行するのに使用されるコンピュータシステムのブロック図である。
【図２】先行技術による頂点分割および稜線削除動作のブロック図である。
【図３Ａ】図２による頂点分割および稜線削除動作を使用する地形格子に関するプログレッシブメッシュのカラースクリーン表示のシーケンスである。
【図３Ｂ】図２による頂点分割および稜線削除動作を使用する地形格子に関するプログレッシブメッシュのカラースクリーン表示のシーケンスである。
【図３Ｃ】図２による頂点分割および稜線削除動作を使用する地形格子に関するプログレッシブメッシュのカラースクリーン表示のシーケンスである。
【図３Ｄ】図２による頂点分割および稜線削除動作を使用する地形格子に関するプログレッシブメッシュのカラースクリーン表示のシーケンスである。
【図４】ビュー依存パラメータを変化させることによって任意のプログレッシブメッシュ表示を適応細分する方法を説明する流れ図である。
【図５】新たな稜線削除変換および新たな頂点分割変換を説明するブロック図である。
【図６】図５によるメッシュ変換を使用する境界を有するメッシュを説明するブロック図である。
【図７】図５に示す頂点分割変換に関するステップを説明する流れ図である。
【図８】図５に示す稜線削除変換に関するステップを説明する流れ図である。
【図９】頂点階層表示を説明するブロック図である。
【図１０】メッシュを選択的に細分または粗くすべき場合を決定する方法を説明する流れ図である。
【図１１】頂点を視野錐台内である場合を決定する方法を説明する流れ図である。
【図１２】境界空間階層表示を説明するブロック図である。
【図１３】頂点に関する表面配向試験を説明するブロック図である。
【図１４】表面配向を決定する方法を説明する流れ図である。
【図１５】スクリーン空間幾何誤差表現を説明するブロック図である。
【図１６】スクリーン空間幾何誤差を見つける方法を説明する流れ図である。
【図１７Ａ】メッシュを適応細分する方法を説明する流れ図である。
【図１７Ｂ】メッシュを適応細分する方法を説明する流れ図である。
【図１８】地形メッシュに関する頂点階層表示を説明するブロック図である。
【図１９】地形メッシュを形成する方法を説明する流れ図である。
【図２０】三角形ストリップを説明するグラフィカル地形のブロック図である。
【図２１】三角形ストリップを発生する方法を説明する流れ図である。
【図２２】パラメトリック表面の適応モザイク化方法を説明する流れ図である。
【図２３Ａ】本発明の説明的実施形態用システムを説明するブロック図である。
【図２３Ｂ】本発明の説明的実施形態用システムを説明するブロック図である。
【図２４Ａ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である
【図２４Ｂ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２４Ｃ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２４Ｄ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２４Ｅ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２４Ｆ】グラフィカル地形に関するプログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２５Ａ】モザイク化球に関するビュー依存細分化を説明するカラースクリーン表示である。
【図２５Ｂ】モザイク化球に関するビュー依存細分化を説明するカラースクリーン表示である。
【図２５Ｃ】モザイク化球に関するビュー依存細分化を説明するカラースクリーン表示である。
【図２６Ａ】モザイク化パラメトリック表面によって形成された截頭形プログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２６Ｂ】モザイク化パラメトリック表面によって形成された截頭形プログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２６Ｃ】モザイク化パラメトリック表面によって形成された截頭形プログレッシブメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２７Ａ】グラフィカルキャラクタに関する任意のメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２７Ｂ】グラフィカルキャラクタに関する任意のメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２７Ｃ】グラフィカルキャラクタに関する任意のメッシュのビュー依存細分化を説明するカラースクリーン表示である。
【図２８】メッシュを適応細分する一般的な方法を説明する流れ図である。
【図１】
2007265459.tif 000020
【図２】
2007265459.tif 000021
【図４】
2007265459.tif 000022
【図５】
2007265459.tif 000023
【図６】
2007265459.tif 000024
【図７】
2007265459.tif 000025
【図８】
2007265459.tif 000026
【図９】
2007265459.tif 000027
【図１０】
2007265459.tif 000028
【図１１】
2007265459.tif 000029
【図１２】
2007265459.tif 000030
【図１３】
2007265459.tif 000031
【図１４】
2007265459.tif 000032
【図１５】
2007265459.tif 000033
【図１６】
2007265459.tif 000034
【図１７Ａ】
2007265459.tif 000035
【図１７Ｂ】
2007265459.tif 000036
【図１８】
2007265459.tif 000037
【図１９】
2007265459.tif 000038
【図２０】
2007265459.tif 000039
【図２１】
2007265459.tif 000040
【図２２】
2007265459.tif 000041
【図２３Ａ】
2007265459.tif 000042
【図２３Ｂ】
2007265459.tif 000043
【図２８】
2007265459.tif 000044
【図３Ａ】
2007265459.tif 000045
【図３Ｂ】
2007265459.tif 000046
【図３Ｃ】
2007265459.tif 000047
【図３Ｄ】
2007265459.tif 000048
【図２４Ａ】
2007265459.tif 000049
【図２４Ｂ】
2007265459.tif 000050
【図２４Ｃ】
2007265459.tif 000051
【図２４Ｄ】
2007265459.tif 000052
【図２４Ｅ】
2007265459.tif 000053
【図２４Ｆ】
2007265459.tif 000054
【図２５Ａ】
2007265459.tif 000055
【図２５Ｂ】
2007265459.tif 000056
【図２５Ｃ】
2007265459.tif 000057
【図２６Ａ】
2007265459.tif 000058
【図２６Ｂ】
2007265459.tif 000059
【図２６Ｃ】
2007265459.tif 000060
【図２７Ａ】
2007265459.tif 000061
【図２７Ｂ】
2007265459.tif 000062
【図２７Ｃ】
2007265459.tif 000063