(57)【要約】本発明によるコンピュータグラフィックスシステムは、モデル情報提供ユニット（ＭＩＵ）と、ラスタライザ（ＲＵ）と、色発生器と、ディスプレイスペースリサンプラ（ＤＳＲ）とを具える。モデル情報提供ユニット（ＭＩＵ）は、グラフィックスプリミティブのセットを表す情報を提供し、情報は、少なくともプリミティブの形状を規定する幾何学的情報及びプリミティブの出現を規定する出現情報を具える。ラスタライザ（ＲＵ）は、プリミティブに関連した基準グリッドに一致する座標（（ｕ１，ｖ１））の第１シーケンスを発生することができ、第１シーケンスに関連した補間値の一つ以上のシーケンスを発生することができ、そのシーケンスは、テクスチャ（Ｔ２）のサンプルを指定する座標（（ｕ２，ｖ２））の第２シーケンスを具える。色発生器は、前記出現情報を用いて色（Ｃｕ，ｖ）を座標の前記第１シーケンスに割り当て、テクスチャデータユニット（ＴＤＵ）と、テクスチャスペースリサンプラ（ＴＳＲ）と、シェーディングユニット（ＳＵ）とを具える。ディスプレイスペースリサンプラ（ＤＳＲ）は、色発生器によって割り当てられた基準グリッドの色（Ｃｕ，ｖ）を、ディスプレイに関連したグリッドの表示に対して再サンプリングする。
2006517705.tif 000002
【特許請求の範囲】
【請求項１】
グラフィックスプリミティブのセットを表す情報を提供し、前記情報が、少なくとも前記プリミティブの形状を規定する幾何学的な情報及び前記プリミティブの出現を規定する出現情報を具えるモデル情報提供ユニットと、
前記プリミティブに関連した基準グリッドに一致する座標の第１シーケンスを発生することができ、かつ、前記第１シーケンスに関連した補間値の一つ以上のシーケンスを発生することができ、前記一つ以上のシーケンスが、テクスチャのサンプルを指定する座標の第２シーケンスを具えるラスタライザと、
前記出現情報を用いて座標の前記第１シーケンスに対して色を割り当てる色発生器とを具え、前記色発生器が、
テクスチャデータをテクスチャ座標に割り当てるテクスチャデータユニットと、
前記テクスチャのグリッドに整列したテクスチャ座標を、座標の前記第２シーケンスから発生し、発生したテクスチャ座標でデータを前記テクスチャからフェッチし、かつ、フェッチしたテクスチャデータを前記基準グリッドに対して再サンプリングすることによって、出力テクスチャデータを発生するように配置されたテクスチャスペースリサンプラと、
前記出力テクスチャデータ及び前記ラスタライザによって提供された前記出現データを用いて前記色を提供することができるシェーディングユニットとを具え、
前記基準グリッドにおいて前記色発生器によって割り当てられた色を、ディスプレイに関連したグリッドの表示に対して再サンプリングするディスプレイスペースリサンプラを更に具えることを特徴とするコンピュータグラフィックスシステム。
【請求項２】
前記基準グリッドを他のテクスチャのグリッドとしたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項３】
前記基準グリッドをダミーグリッドとしたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項４】
前記ラスタライザが、前記テクスチャ座標の第１シーケンスに関連したディスプレイスペースに座標のシーケンスを発生するようにも配置されたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項５】
前記出力テクスチャデータに応答して、他のテクスチャ座標を前記テクスチャスペースリサンプラに供給するフィードバックファシリティを設けたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項６】
前記ラスタライザが直接前記テクスチャデータユニットに前記テクスチャ座標を供給することができるようにするバイパスファシリティを設けたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項７】
前記ラスタライザが、前記テクスチャ座標の第１シーケンスによって横切られるグリッドを選択するラスタライゼーショングリッド選択ユニットを具えることを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項８】
二つ以上のテクスチャを前記プリミティブに関連させた場合、前記ラスタライゼーショングリッド選択ユニットが、最高の解像度で利用できる関連のテクスチャのグリッドを選択することを特徴とする請求項７記載のコンピュータグラフィックスシステム。
【請求項９】
前記ラスタライザが、前記プリミティブに関連したスペースと前記ディスプレイに関連したスペースとの間の関係の関数としてステップ状の距離サンプリングに適合することができることを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項１０】
プリミティブのセットを具えるグラフィックスモデルを表す情報を提供し、前記情報が、少なくとも前記プリミティブの形状を規定する幾何学的な情報及び前記プリミティブの出現を規定する出現情報を具えるステップと、
前記プリミティブに関連した基準グリッドに一致する座標の第１シーケンスを発生するステップと、
前記第１シーケンスに関連した補間値の一つ以上のシーケンスを発生し、前記一つ以上のシーケンスが、テクスチャのサンプルを指定する座標のシーケンスを具えるステップと、
前記テクスチャに整列したテクスチャ座標を、前記第２シーケンスから発生し、発生したテクスチャ座標で前記テクスチャのデータをフェッチし、かつ、フェッチしたデータの関数として出力テクスチャデータを提供することによって、前記基準グリッドに整列した出力テクスチャデータを提供するステップと、
前記出力テクスチャデータ及び前記出現情報を用いて色を提供するステップと、
そのようにして得られた色を、ディスプレイに関連したグリッドの表示に対して再サンプリングするステップとを具えることを特徴とするコンピュータグラフィックイメージのレンダリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータグラフィックスシステム及びコンピュータグラフィックイメージのレンダリング方法に関する。
【背景技術】
【０００２】
３次元コンピュータグラフィックスにおいて、サーフェースは、典型的には、複数のポリゴンを組み合わせることによって所望の形状でレンダリングされる。コンピュータグラフィックスシステムは、通常、グラフィックスパイプラインの形態を有し、この場合、そのようなポリゴンモデルからイメージを発生するのに要求される動作は、高レンダリング速度を達成するよう並列に実行される。
【０００３】
コンピュータグラフィックスシステムは、米国特許第６，２９７，８３３号から知られている。コンピュータグラフィックスシステムは、ラスタライザの入力部を設けるフロントエンド及びセットアップ段を具える。ラスタライザは色発生器を駆動し、色発生器は、選択可能なテクスチャに対するテクスチャ値を発生するテクスチャ段と、テクスチャをサーフェースにマッピングすることによって現実的な出力イメージを生成する組合せ段とを具える。このために、ラスタライザは、ディスプレイスペースに座標のシーケンスを発生し、対応するテクスチャ座標を補間によって計算する。第１テクスチャ値を第１セットの色値に混合して第１混合値を発生し、第２テクスチャ値を第２セットの色値に混合して第２混合値を発生し、かつ、第１混合値と第２混合値とを組み合わせることによってポリゴンプリミティブの画素に対するテクスチャ化された色値を発生するように、組合せ段が構成される。
【０００４】
既知のシステムの不都合は、アンチエイリアジングが著しい演算量を必要とすることである。その理由は、表示解像度より著しく高い解像度で色データを演算する必要があるからである。
【０００５】
根本的に異なるアプローチは、文献“Resample hardware for 3D Graphics”, by Koen Meinds and Bart Barenburg, Proceedings of Graphics Hardware 2002, pp17-26, ACM 2002, T. Ertl and W. Heidrich and M Doggett (editors)から知られている。米国特許第６，２９７，８３３号から知られているシステムとは異なり、ラスタライザは、ディスプレイの座標が補間されている間、マッピングされるテクスチャのグリッドに一致するサンプル座標のシーケンスを横切ることができる。ディスプレイにおける結果的に得られる画素値は、補間されたディスプレイ座標に対して計算された色データをディスプレイグリッドにマッピングすることによって得られる。この手順を実行するリサンプラユニットは、ディスプレイスペースリサンプラ（ＤＳＲ）で表される。米国特許第６，２９７，８３３号から知られている、テクスチャのグリッドに対して再サンプリングを行うリサンプラは、テクスチャスペースリサンプラ（ＴＳＲ）として表される。
【０００６】
このグラフィックスシステムによって、減少した計算量でアンチエイリアジングイメージをレンダリングすることができる。達成されるアンチエイリアジング品質は、４×４スーパサンプリングで取得されるアンチエイリアジング品質より優れており、同時に、オフチップメモリバンド幅及び計算コストは、２×２スーパサンプリングにおおよそ匹敵する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、この文献において、（例えば、バンプ環境マッピングで用いられるような）依存性のマルチテクスチャ化のような特徴を具えるプログラマブル画素シェーディングをここで説明するグラフィックスシステムでどのように実現できるか認識されていない。
【０００８】
本発明の目的は、比較的少ない計算量で比較的広い範囲の視覚的な効果を有するイメージをレンダリングすることができるコンピュータグラフィックスシステムを提供することである。
【課題を解決するための手段】
【０００９】
この目的によれば、本発明のコンピュータグラフィックシステムは、請求項１によって特徴付けられる。
【発明の効果】
【００１０】
本発明によるコンピュータグラフィックシステムにおいて、ラスタライザは、プリミティブの幾何学的な情報に基づいて、プリミティブに関連したスペースのグリッドに座標の規則的なシーケンスを発生する。用語「関連した」は、グリッドにより横切られる座標のシーケンスがプリミティブによって決定されることを意味する。ラスタライザは、テクスチャのグリッドに一致するようにシーケンスを発生することができる。色発生器は、上記出現情報を用いて色を上記座標に割り当てる。そのように取得した色サンプルは、ディスプレイスペースリサンプラによってディスプレイスペースのグリッドに対して再サンプリングされる。米国特許第６，２９７，８３３号から知られている方法と比べると、適切なフィルタ処理が著しく簡単になる。第一に、どの色サンプルが特定の画素に寄与するかを決定するのが容易になる。アンチエイリアジングに要求されるプリフィルタのフットポイントが、ディスプレイスペースを規定する軸に整列されるので、ディスプレイスペースにマッピングされたテクスチャ座標が画素の前記フットポイント内にあるか否かを決定するのが簡単になる。さらに、逆テクスチャマッピングとは異なり、フィルタ関数を画素スペースからテクスチャスペースに変換する必要がない。最後に、ラスタライゼーションが、プリミティブに関連したスペースに生じるので、プリミティブに限られた上記スペースの座標のみが、フィルタ処理プロセスに対して考慮される。色発生器のテクスチャスペースリサンプラによって、テクスチャデータユニットによって提供されたテクスチャデータを、基準グリッドに対して任意のグリッドから再サンプリングすることができる。ラスタライザは、第１シーケンスに関連した補間値の一つ以上のシーケンスを発生することができ、一つ以上のシーケンスは、テクスチャのサンプルを指定する座標の第２シーケンスを具える。ここでは、用語「関連した」は、第１シーケンスの各座標に対する対応する値又は第２シーケンスに対する座標が存在することを意味する。座標の第１シーケンスと第２シーケンスとの間の関係は、例えば、環境に関するプリミティブの向きに依存する。このようにして、簡単なテクスチャをマッピングできるだけでなく、環境データもマッピングできる。色発生器のシェーディングユニットによって、比較的広い範囲の視覚的な効果が可能になる。これによって、マルチプルテクスチャ化や、依存性のテクスチャ化や、他の形態の画素シェーディングのような効果を用いて、米国特許第６，２９７，８３３号に記載されたようなシステムに適切なシェーディングプログラムを適用することができる。しかしながら、米国特許第６，２９７，８３３号から知られているシステムとは異なり、本発明のコンピュータグラフィックスシステムは、基準グリッドによって規定されたスペースに対してテクスチャデータを再サンプリングするテクスチャスペースリサンプラを具える。図面の説明で更に詳細に説明するように、これは、大きなバッファを必要としなくなる。
【００１１】
可能な場合には、基準グリッドをテクスチャのグリッドとする。これによって、そのテクスチャの再サンプリングを必要としなくなる。再サンプリングは、更なる計算量及びイメージ品質の損失を伴う。
【００１２】
しかしながら、適切なテクスチャがプリミティブに関連しない場合が生じることがある。そのような場合は、例えば、虹をレンダリングするのに用いることができる１Ｄパターンによって記載されたテクスチャである。他の例は、３Ｄ（容量）パターンとして格納される。請求項３の例も、ダミーグリッドを選択することによってそのようなテクスチャを用いたイメージのレンダリングを許容する。
【００１３】
請求項４の例において、ラスタライザは、入力座標に関連したディスプレイスペースに座標のシーケンスも発生する。これは、ディスプレイスペースの座標を補間によって簡単に計算できるという利点を有する。ディスプレイスペースの位置を、個別の変換ユニットによって計算することができるが、これは、浮動小数点の乗算及び除算を必要とする。
【００１４】
請求項５の例は、特別な効果に対する機会を著しく増大する。テクスチャスペースリサンプラに対する入力座標としてのテクスチャデータのフィードバックによって、“Real-Time Shading”, by M. Olano, J.C. Hart, W. Heidrich, M. McCool, A K Peter, Natick, Massachusetts, 2002, page 108に記載されたようないわゆるバンプ環境マッピングを適用することができる。
【００１５】
請求項６の例は、これらの場合に対する計算を更に減少し、この場合、簡単なテクスチャのみがプリミティブのサーフェースに対してマッピングされる。簡単なテクスチャの規定は、環境データと、バンプ環境マッピングにおけるようにテクスチャが回帰的に規定される場合を除外する。一つ以上の簡単なテクスチャをマッピングするとき、ラスタライザは、テクスチャが格納されるグリッドに対応するグリッドに入力座標を簡単に発生することができる。バイパス手段によって、ラスタライザは、直接テクスチャ情報ユニットにテクスチャ座標を提供することができる。バイパス手段を、例えば、ラスタライザからテクスチャ情報ユニットまでの個別の接続とすることができる。バイパス手段を、例えば、ラスタライザによって発生したグリッドに対応するグリッドで再サンプリングが行われるテクスチャスペースリサンプラのモジュールとすることができる。
【００１６】
請求項７の例におけるラスタライゼーショングリッド選択ユニットは、プリミティブ上でグリッドを選択する。依存性なくアクセスされた２次元テクスチャをプリミティブに関連させる場合、選択ユニットは、これらから最高解像度（したがって、場合によっては最高のイメージ周波数）のテクスチャマップを選択する。これは最高品質を保証する。その理由は、このテクスチャをテクスチャスペースリサンプラによって再サンプリングする必要がないからである。適切な２次元テクスチャマップが存在しない場合、プリミティブ上の「ダミー」グリッドが、横切るためにラスタライザに対して構成され、画素シェーディングが実行される。このようにして、簡単なGourraudシェーディング、プロシージャルシェーディング、１次元テクスチャ、３次元テクスチャ等でシェーディングされるプリミティブのように、プリミティブは、（２次元テクスチャのアプリケーションに次いで）多種のシェーディング法によってサポートされる。
【００１７】
請求項８に記載したように最高解像度で利用できるテクスチャのグリッドを選択することによって、このグリッドに対して他のテクスチャデータを再サンプリングするときに最適な品質が取得される。
【００１８】
請求項９の例は、イメージ品質と演算の簡単さの最適な組合せを与える値に対してサンプリング距離を適合させることができるという利点を有する。これは、テクスチャデータがミップマップによって提供される例において特に有利である。サンプリング距離に整合するミップマップの部分を選択することができる。
【００１９】
本発明は、請求項１０によるコンピュータグラフィックイメージのレンダリング方法も含む。
【発明を実施するための最良の形態】
【００２０】
本発明のこれら及び他の態様を、図面を参照して更に詳細に説明する。
図１は、グラフィックスパイプラインとして配置された従来のコンピュータグラフィックスシステムを線形的に示す。既知のグラフィックスパイプラインは、ラスタライザＲＵにプリミティブを供給する、例えば、バーテックスシェーダを有するモデル情報検索ユニットＭＩＵを具える。各プリミティブは、三角形のような幾何学的な単位に関連したデータセットを具えることができる。データは、幾何学的なデータ、例えば、三角形の頂点の座標と、出現データとを具える。モデル情報検索ユニットを、例えば、OpenGL又はDirect3D APIを通じてプログラムすることができる。アプリケーションプログラムによって、バーテックスシェーダは、頂点ごとにプログラムを実行することができるとともに、各頂点に対する位置座標や、基準座標や、色座標や、テクスチャ座標のような幾何学的データ及び出現データをバーテックスシェーダに供給することができる。従来のバーテックスシェーダの詳細な説明を、“A user-programmable vertex engine”, Erick Lindholm, Mark J. Kilgard, and Henry Moreton, Proc. Siggraph pages 149-158, August 2001で見つけることができる。
【００２１】
ラスタライザＲＵは、これらプリミティブを横切って、一つ以上の関連のテクスチャマップ内のアドレスを表す情報をシェーディングユニットＳＵに供給する。一つ以上のテクスチャスペースリサンプラＴＳＲは、テクスチャデータを、ラスタライザによって表されたアドレスから順次取得する。テクスチャスペースリサンプラによって供給される色情報は、表示されるスペースすなわちディスプレイスペースに対応するグリッドに従って整列される。シェーディングユニットＳＵは、現在のシェーディングプログラムに従って色情報を組み合わせる。この組合せの結果は、次のパスにおいてテクスチャデータユニットＴＤＵのアドレスとして利用され、又はエッジアンチエイリアジング及び陰面消去ＥＡＡ＆ＨＳＲサブシステムに転送される。通常、ＥＡＡ＆ＨＳＲサブシステムは、エッジアンチエイリアジングに対してスーパーサンプリング又はマルチサンプリングを用いるとともに、陰面消去に対してｚバッファ法を用いる。ＥＡＡ＆ＨＳＲサブシステムによって供給された最終的なイメージは、表示のためにフレームバッファＦＢに格納される。
【００２２】
図２は、上記文献“Resample hardware for 3D Graphics”によるコンピュータグラフィックスシステムの一部を線形的に示す。プリミティブの入力フローに応答して、ラスタライザＲＵは、テクスチャデータユニットＴＤＵに対するテクスチャ座標のシーケンスを発生するとともに、マッピングされた再構成フィルタフットプリントをディスプレイスペースリサンプラＤＳＲに供給し、ディスプレイスペースリサンプラＤＳＲは、テクスチャデータユニットによって供給されたテクスチャデータを、ディスプレイスペースに対して再サンプリングする。テクスチャデータユニットＴＤＵを、４Ｄミップマップ再構成ユニット３Ｄ＞４Ｄを通じてディスプレイスペースリサンプラＤＳＲに結合することができる。ディスプレイスペースリサンプラＤＳＲは、画素データをエッジアンチエイリアジング及び陰面消去ユニットＥＡＡ＆ＨＳＲに転送する。
【００２３】
図１に示す既知のコンピュータグラフィックススステムにおいて、テクスチャスペースリサンプラＴＳＲは、シェーディングユニットＳＵに、ディスプレイスペースの画素グリッドの色及びデータを供給する。次いで、ディスプレイスペースでこれらを結合する。この教示を図２のコンピュータグラフィックスシステムに適用することは、シェーディングユニットＳＵをディスプレイスペースリサンプラＤＳＲの後方に配置すべきであることを意味する。これによって、図３に示す組合せアーキテクチャを導く。
【００２４】
図３に示す組合せアーキテクチャにおいて、ラスタライザＲＵは、非常に簡単なテクスチャフェッチユニットを制御する。アーキテクチャは、テクスチャデータユニットＴＤＵは別にして、ＩＢ０２／０５４６８としてＰＨＮＬ０１０９２４に記載されたようなテクスチャメモリに格納された標準的な３Ｄミップマップから４Ｄミップマップテクスチャデータを急速に再構成する簡単なフィルタ３Ｄ＞４Ｄを具えることができる。ラスタライザによって横切られるテクスチャグリッドの色を取得するために実行すべきフィルタ処理を他に必要としない。ディスプレイスペースリサンプラＤＳＲは、マッピングされたテクスチャ座標に従ってこれらの色を取り出すとともに、ディスプレイ上の画素グリッドにこれらの色を再サンプリングする。各テクスチャマップに対して、これは、ディスプレイスペースに色の「層」を提供する。シェーディングユニットは、全ての層を最終的な画素フラグメントに組み合わせることができる。実際には、このアプローチの結果、画素シェーディングに対するプリミティブごとのmulti-pass texturing法となる。これは、二つの主な不都合がある。
【００２５】
第一に、ディスプレイスペースリサンプラＤＳＲは、テクスチャに対する画素フラグメントの色を、テクスチャグリッドに対応する順番で送出し、この順番は、種々のテクスチャマップに対して互いに相違することがあるので、シェーディングユニットが現在の層から色を組み合わせることができる前に、以前の層からの（組み合わされた）色を格納するためにバッファＴＭＰを必要とする。この結果、要求される余分なメモリバンド幅の形態のオーバヘッドとなる。タイルに基づくレンダリングアーキテクチャは、この問題を緩和することができるが、複雑さが増大する。
【００２６】
第二に、このようなマルチパスのアプローチは、独立したテクスチャ化に対処することができず、これは、今日のＧＰＵの画素シェーディングユニットにおける致命的な特徴である。
【００２７】
図４は、これらの不都合を克服する本発明によるコンピュータグラフィックスシステムの実施の形態を示す。それは、モデル情報提供ユニットＭＩＵを具え、モデル情報提供ユニットＭＩＵは、場合によっては、プログラマブルバーテックスシェーダを具え、グラフィックスプリミティブのセットを表す情報を提供する。三角形の座標（ｕ１，ｖ１）０，（ｕ１，ｖ１）１，（ｕ１，ｖ１）２によって制限された整数の対を発生させることによりプリミティブに関連させる座標の第１シーケンスを発生することができる。他の実施の形態では、任意の多角形を用いることができる。平面の代わりに、図９に示すような湾曲したプリミティブを、ベジエ曲面として用いることができる。そのようなプリミティブは、１対のパラメータによって簡単にパラメータ化されることができ、これらパラメータの下限値及び上限値に対する境界を有する。図９は、４対の座標によって境界が設定された表面の例を示す。しかしながら、ベジエ三角形を表すには、３対で十分である。４より大きい数を用いることもできる。境界の各対に対して、テクスチャ座標（ｕ１，ｖ１）０，（ｕ１，ｖ１）１，（ｕ１，ｖ１）２及び（ｕ１，ｖ１）３を関連させることができる。同様に、前記テクスチャ座標によって境界が設定された整数値の対を発生することによりプリミティブに関連した座標の第１シーケンスを発生することができる。情報は、少なくとも（図示しない）頂点の表示座標のようなプリミティブの形状を規定する幾何学的な情報と、プリミティブの出現を規定する出現情報とを具える。出現情報は、例えばテクスチャ座標の形態のテクスチャ情報と、色情報、すなわち、散乱色及び／又は反射色とを具えることができる。さらに、煙をシミュレートするために煙色を用いることができる。一例として、第１及び第２テクスチャの座標を、図８Ａのプリミティブの頂点に関連して示す。第１テクスチャのグリッドは、基準グリッドとしての役割を果たす。第１テクスチャ及び第２テクスチャの座標はそれぞれ、（ｕ１，ｖ１）ｉ及び（ｕ２，ｖ２）ｉとなり、この場合、ｉは頂点の番号である。頂点の位置のプリミティブの規定値を表す情報を含めることもできる。
【００２８】
モデル情報提供ユニットは周知である。モデル情報提供ユニットで用いられるプログラマブル頂点シェーディングユニットは、例えば、Lindholm et al.の上記文献に更に詳細に記載されている。モデル情報提供ユニットＭＩＵを、OpenGL及びDirect3D APIを通じてプログラムすることができる。
【００２９】
本発明によるコンピュータグラフィックスシステムは、第１テクスチャのサンプルを指定するテクスチャサンプル座標の第１シーケンスを発生することができるラスタライザ（ＲＵ）も具え、第１テクスチャは、プリミティブに関連した基準グリッド、ここでは、第１テクスチャに一致するグリッドに一致する。第１シーケンスに関連した補間値の一つ以上のシーケンスを発生することができ、そのシーケンスは、第２テクスチャのサンプルを指定する座標の第２シーケンスを具える。ラスタライザＲＵは、ダミーグリッドにより座標の第１シーケンスを発生することもできる。これは、プリミティブに関連するテクスチャがない場合又はテクスチャが２次元グリッドに適さない場合に関連する。これは、例えば虹を描くのに用いることができる１次元パターンによって描かれるテクスチャに当てはまる。他の例は、３次元（容積）パターンとして格納されるテクスチャである。補間値の一つ以上のシーケンスを、座標の第１シーケンスに関連させ、この場合、ラスタライザは、第１シーケンスの各座標に対して補間値を発生する。補間値を、座標の第１シーケンスを発生するのと同時に発生することができるが、その後に発生することもできる。
【００３０】
そのように、ラスタライザは周知である。ラスタライザの詳細な説明は、“Algorithms for Division Free Perspective Correct Rendering” by B. Barenburg et al., pp7-13, Proceedings of Graphics Hardware 2000によって与えられる。
【００３１】
本発明によるコンピュータグラフィックスシステムは、プリミティブに関連した上記出現情報を用いて色を座標の上記第１シーケンスに割り当てる色発生器も具える。色発生器ＣＧは、テクスチャデータをテクスチャサンプル座標に割り当てるテクスチャデータユニットＴＤＵを具える。テクスチャデータユニットＴＤＵを、例えば、各座標に対してテクスチャ値を合成するテクスチャシンセサイザとする。それを、予め規定されたテクスチャが格納されるメモリとすることもできる。テクスチャを圧縮フォーマットで格納することができる。メモリは、互いに相違するスケールで格納された複数のテクスチャを有することもできる。これを実現する既知の方法は、例えば、３Ｄ及び４Ｄミップマップである。
【００３２】
色発生器ＣＧは、シェーディングユニットＳＵによって供給されるテクスチャサンプル座標ｕｆ，ｖｆに応答して出力テクスチャデータＴＷｕ，ｖを発生するように配置された（図５に更に詳細に説明する）テクスチャスペースリサンプラＴＳＲも具える。色発生器ＣＧは、出力テクスチャデータＴＷｕ，ｖを発生するために、第２テクスチャＴ２のグリッドに整列したテクスチャサンプル座標（ｕｉ，ｖｉ）を発生する。次いで、色発生器ＣＧは、その座標においてデータＴｕ，ｖを第２テクスチャＴ２からフェッチし、フェッチしたテクスチャデータＴｕ，ｖを第１テクスチャＴ１のグリッドに対して再サンプリングする。このようにして、同一グリッドを共有しないテクスチャマップを組み合わせることができる。従来知られているテクスチャスペースリサンプラＴＳＲに対して、本発明のコンピュータグラフィックスシステムのテクスチャスペースリサンプラＴＳＲは、第１テクスチャのグリッド位置に対応する座標で駆動され、ディスプレイ上のグリッド位置に対応するグリッド位置で駆動されない。
【００３３】
実際には、例えば８以上の任意の数のテクスチャマップを用いて、プリミティブの出現を規定することができる。これらテクスチャマップを順次再サンプリングすることができるが、色発生器は、再サンプリング工程の速度を上げるために２以上のテクスチャスペースリサンプラ及び２以上のテクスチャデータユニットを有することができる。
【００３４】
色発生器ＣＧは、上記出力テクスチャデータ及びラスタライザによって提供される出現データを用いて色を提供するシェーディングユニットＳＵも具える。テクスチャデータとは別に、シェーディングユニットは、補間された拡散色や反射の寄与を計算する規定値のような色を提供する種々のデータを用いることができる。
【００３５】
次いで、ディスプレイスペースリサンプラＤＳＲは、色発生器によって割り当てられた色を、ディスプレイに関連したグリッドの表示に対して再サンプリングする。色を表示グリッドに対してフォワードマッピングするこのプロセスは、好適には二つのパスで実行され、この場合、２回の１Ｄフィルタ処理動作が、互いに交差する方向で互いに実行される。しかしながら、表示座標に対するマッピングを単一の２次元フィルタ処理動作で行うこともできる。フォワードマッピング色データは、上記文献“Resample hardware for 3D Graphics”に詳細に記載されている。
【００３６】
ディスプレイスペースリサンプラＤＳＲによって提供されるデータは、アンチエイリアジング及び陰面消去ユニットＥＡＡ＆ＨＳＲによって処理される。その詳細を、出願番号ＥＰ０２０７５４２０．６を有する既に出願された特許出願ＰＨＮ０２０１００で見つけることができる。このユニットの出力データを、表示のためにフレームバッファに供給し、又は、破線で示したように後段で使用するためにテクスチャデータユニットＴＤＵに供給することができる。
【００３７】
図５は、本発明によるコンピュータグラフィックスシステムのラスタライザＲＵ及びテクスチャデータユニットＴＤＵ並びに更に詳細なテクスチャスペースリサンプラＴＳＲ及びシェーディングユニットＳＵを再び示す。
【００３８】
図５の実施の形態において、テクスチャスペースリサンプラＴＳＲは、座標（ｕｆ，ｖｆ）から整数座標（ｕｉ，ｖｉ）を発生するグリッド座標発生器ＧＣＧを具える。図示した実施の形態において、テクスチャが２次元座標で指定されているが、更に高い次元の座標又は１次元座標を代わりに用いることもできる。選択信号Ｓｅｌによって制御される選択素子Ｓ１によって、不変の座標（ｕｆ，ｖｆ）をテクスチャデータユニットＴＤＵに送出し又は再サンプリングされた座標（ｕｉ，ｖｉ）を選択することができる。
【００３９】
ラスタライザＲＵは、基準グリッドの座標（ｕ１，ｖ１）の規則的なシーケンスを発生するよう配置される。このシーケンスによって横切られる範囲は、プリミティブに関連したデータによって決定される。このために、テクスチャデータユニットＴＤＵは、この場合にはシェーディングユニットＳＵの選択素子Ｓ３及びテクスチャスペースリサンプラＴＳＲの選択素子Ｓ１を通じてラスタライザＲＵに結合される。
【００４０】
ラスタライザＲＵは、座標（ｕ１，ｖ１）の第１シーケンスによって横切られる基準グリッドを選択するラスタライゼーショングリッド選択ユニットＲＧＳＵを具える。
【００４１】
基準を、好適には他のテクスチャＴ１のグリッドとする。特に、二つ以上のテクスチャＴ１，Ｔ２をプリミティブに関連させる場合、ラスタライゼーショングリッド選択ユニットＲＧＳＵは、最高の解像度で利用できる関連のテクスチャＴ１のグリッドを選択する。
【００４２】
しかしながら、適切なテクスチャが利用できない場合、ダミーグリッドを基準グリッドとして選択する。ラスタライザＲＵは、プリミティブに関連したスペースとディスプレイに関連したスペースとの間の関係の関数としてステップ状のサンプリング距離に適合することができる。この場合、テクスチャは、３Ｄ又は４Ｄミップマップの形態で格納され、パースペクティブマッピングによってテクスチャの大きさが変化する。
【００４３】
ラスタライザＲＵは、一つ以上の他のテクスチャの座標のような、プリミティブに関連した他のデータを補間するようにも配置される。ラスタライザＲＵは、補間された他のテクスチャ座標（ｕ２，ｖ２）をテクスチャスペースリサンプラＴＳＲに供給する。これら補間された他のテクスチャ座標が第２テクスチャＴ２のグリッドに一致する場合、これらの座標は、選択素子Ｓ３及びＳ１を通じてテクスチャデータユニットＴＤＵに送出される。しかしながら、他のテクスチャ座標（ｕ２，ｖ２）が一致しない場合、テクスチャのグリッドに一致する整数値（ｕｉ，ｖｉ）を、グリッド座標発生器ＧＣＧによって計算することができる。これを、図８Ｂに線形的に示す。選択素子Ｓ１は、テクスチャデータユニットＴＤＵを指定する座標として、再サンプルされたテクスチャ座標（ｕｉ，ｖｉ）を選択する。図８Ｂに示すように、座標（ｕ２，ｖ２）は、第２テクスチャの４サンプルａ−ｄによって包囲される。テクスチャスペースリサンプラＴＳＲは、第２テクスチャＴ２の対応するテクスチャデータを、グリッド座標発生器ＧＣＧによって提供される座標からフェッチし、フィルタＦＬＴは、これらを、第１テクスチャＴ１のグリッドに対して再サンプリングする。再サンプリングを、例えば最近傍近似によって行うことができ、この場合、フィルタＦＬＴは、出力テクスチャ値ＴＷｕ，ｖとしてＧＣＧによって発生した最近テクスチャ座標ｕｉ，ｖｉの結果としてＴＤＵによって発生した一つの値Ｔｕｖのみを通過させる。フィルタＦＬＴの出力の代わりに、テクスチャデータユニットＴＤＵによって供給されるテクスチャデータＴｕ，ｖを選択することによって、フィルタが選択素子Ｓ２にこの機能を実行させることができる。再サンプリングを、補間、例えば、バイリニア補間によって行うこともできる。補間を用いる場合、指定されたテクスチャデータＴｕ，ｖは、グリッド座標発生器ＧＣＧによって制御されるフィルタＦＬＴによって重み付けされる。フィルタＦＬＴによって計算される値は、出力テクスチャ値ＴＷｕ，ｖとして、選択素子Ｓ２を通じてシェーディングユニットＳＵに供給される。テクスチャスペースリサンプラＴＳＲは、更に多くの出力座標（ｕｉ，ｖｉ）に基づいて出力テクスチャ値ＴＷｕ，ｖを計算することができる。
【００４４】
実際には、テクスチャデータは、しばしば３Ｄミップマップの形態で格納される。これは、テクスチャグリッドに一致するサンプル座標のシーケンスを見つけることができないという結果を有することがある。しかしながら、ＩＢ０２／０５４６８として出願されたＰＨＮＬ０１０９２４に記載した方法によって、３Ｄミップマップから４Ｄミップマップを迅速に計算することができる。バイリニア補間にも基づくこの計算を、テクスチャスペースリサンプラＴＳＲによって実行することができる。
【００４５】
ラスタライザＲＵは、補間された色値Ｃｉｐ及び補間された規定値ＮｉｐもシェーディングユニットＳＵに供給する。
【００４６】
図示したように、シェーディングユニットは、選択素子Ｓ３とは別に、シェーディングモジュールＳＨ及びプログラマブルコントローラＣＲＴＬを具える。破線で示すように、コントローラＣＴＲＬは、スイッチＳ１，Ｓ２及びＳ３と、シェーディングモジュールＳＨとを制御する。
【００４７】
シェーディングモジュールＳＨによって、ラスタライザからの補間された規定値Ｎｉｐや補間された色値Ｃｉｐのような複数の入力データ、テクスチャスペースリサンプラＴＳＲによって提供されたテクスチャデータＴＷｕ，ｖ及び（光源の位置及び特性についての情報のような）環境情報に応答して、色Ｃｕ，ｖを計算することができる。このために、シェーディングモジュールＳＨは、フォンシェーディングのような周知のシェーディング関数を用いることができる。
【００４８】
シェーディング法は、例えば、“The Pixel Flow Shading System, a shading language on graphics hardware:”, by M. Olano and A. Lastra, in proceedings Siggraph (July 1998), pp 159-168に記載されている。Microsoft DirectX Graphics Programmers Guide, DirectX8.1 ed. Microsoft Developer’s Network Library, 2001及び文献“Real-Time Shading”, by M. Olano, J.C. Hart, W. Heidrick, M. McCool, A K Peters, Natick, Massachusetts, 2002も参照のこと。
【００４９】
シェーディングユニットＳＵは、出力色値Ｃｕ，ｖをディスプレイスペースリサンプラＤＳＲに供給し、ディスプレイスペースリサンプラＤＳＲは、この値を、取得した表示座標に対して再サンプリングする。このために、ラスタライザＲＵは、表示座標に対して補間値を発生することができる。
【００５０】
図５に示すように、シェーディングモジュールＳＨの出力は、スイッチング素子Ｓ３を通じてテクスチャスペースリサンプラＴＳＲに結合される。他のテクスチャの座標を発生するために出力テクスチャ値ＴＷｕ，ｖを再利用する、例えば、これら出力テクスチャ値ＴＷｕ，ｖを入力座標（ｕｔ，ｖｔ）に追加し、又はこれら出力テクスチャ値ＴＷｕ，ｖをフィードバック座標（ｕｆ，ｖｆ）として用いることによって、フィードバックファシリティが、バンプ環境マッピングとして特別な効果を有することができる。通常、これらフィードバック座標はグリッドに整列されない。グリッド座標発生器ＧＣＧは、テクスチャグリッドに整列した値（ｕｉ，ｖｉ）を座標（ｕｆ，ｖｆ）から発生する。
【００５１】
本発明によるコンピュータグラフィックイメージのレンダリング方法を、図６のフローチャートに線形的に示す。ここに示すように、方法は、以下のステップを具える。
【００５２】
ステップＳ１において、プリミティブのセットを具えるグラフィックスモデルを表す情報が提供される。情報は、少なくともプリミティブの形状を表す幾何学的情報及びプリミティブの出現を表す出現情報を具える。
【００５３】
ステップＳ２において、プリミティブに関連した基準グリッドに一致する座標の第１シーケンスを発生する。
【００５４】
ステップＳ３において、第１シーケンスに関連するとともにテクスチャのサンプルを指定する座標の第２シーケンスを具える補間値の一つ以上のシーケンスを発生する。ステップＳ３を、フローチャートに示すようにステップＳ２の次に実行することができるが、ステップＳ２と並列に実行することもできる。基準グリッドを、ダミーグリッド又は他のテクスチャのグリッドとすることができる。
【００５５】
ステップＳ４において、テクスチャに整列した座標を第２シーケンスから発生し、これら座標でのテクスチャのデータをフェッチし、かつ、フェッチされたデータの関数として出力データを提供することによって、基準グリッドに整列した出力テクスチャデータが取得される。
【００５６】
ステップＳ５において、上記出力テクスチャデータ及び出現情報を用いて色を提供する。ステップＳ６において、そのようにして取得された色が、ディスプレイに関連したグリッドの表示に対して再サンプリングされる。
【００５７】
色発生器の動作を、図７のフローチャートを参照して詳細に説明する。ステップＳ１１において、プリミティブの出現が二つ以上のテクスチャによって決定されるか否か決定する。プリミティブの出現が二つ以上のテクスチャによって決定される場合、ステップＳ１２において、テクスチャカウンタｉが０に初期化される。
【００５８】
その後、ステップＳ１３において、現在のテクスチャｉのグリッドが、テクスチャサンプル座標のシーケンスによって横切られるグリッドに一致するか否か、確認される。現在のテクスチャｉのグリッドが、テクスチャサンプル座標のシーケンスによって横切られるグリッドに一致する場合、プログラムフローは、ステップＳ１４で継続し、その座標でテクスチャサンプルＴｕ，ｖをフェッチする。テクスチャｉのグリッドが、テクスチャサンプル座標のシーケンスに一致しない場合、テクスチャサンプルＴＷｕ，ｖは、ステップＳ１５の再サンプリングルーチンで取得され、これは、テクスチャサンプル座標を包囲するテクスチャ値から補間テクスチャ値を取得するために（バイリニアプローブや高次フィルタのような）フィルタを使用する。テクスチャｉの最近グリッド点でテクスチャ値Ｔｕ，ｖを簡単に取得することもできる。ステップＳ１５は、以前に計算したテクスチャデータ及び／又は補間された色Ｃｉや補間された規定値Ｎｉｐのような他の瞬時的に利用できるシェーディングデータを用いたサンプル座標の発生又は変更を含むことができる。このようにして、バンプ環境マッピングのような依存性のテクスチャ化の効果を取得することができる。
【００５９】
ステップＳ１４又はステップＳ１５の後、プログラムフローはステップＳ１６で継続し、この場合、補間された色Ｃｉｐや、補間された規定値Ｎｉｐや、テクスチャデータのような瞬時的に利用できるシェーディングデータを組み合わせる。
【００６０】
ステップＳ１６にはステップＳ１７が続き、この場合、プリミティブに関連した他のテクスチャが存在するか否か確認する。他のテクスチャが存在する場合、テクスチャカウンタが増分され、ステップＳ１３〜Ｓ１７が繰り返される。ステップＳ１７で最後のテクスチャが処理されたと決定した場合、組み合わされた色は、テクスチャ値ＴＷｕ，ｖ、補間された色、及び補間された規定値Ｎｉを用いて計算される。
【００６１】
プリミティブの最後のテクスチャが処理された後、ステップＳ１８において、次の処理段階、例えば、図４を参照して説明したような表示座標に対する計算された色値の再サンプリングを行うフォワードフィルタリング動作に対して、計算された色値Ｃｕ，ｖが入力値として用いられる。フォワードフィルタリング動作の前後で、アルファテスト手順や、デプステスト手順や、センシルテスト手順のような一つ以上の他の処理ステップを実行することができる。
【００６２】
プリミティブの出現を２未満のテクスチャによって決定したことがステップＳ１１において決定された場合、ステップＳ１９が実行される。ステップＳ１９は、一つのテクスチャだけが存在するか否か確認する。一つのテクスチャだけが存在する場合、現在のサンプル座標のテクスチャ値がステップＳ２０で検索される。このステップＳ２０は、サンプル座標がテクスチャのグリッドに一致するとき、ステップＳ１４のようにテクスチャサンプルを直接検索することができる。サンプル座標がテクスチャグリッドに一致しない場合、ステップＳ２０は、ステップＳ１５の手順と同様にテクスチャ値を計算することができる。その後、プログラムフローはステップＳ２１で継続する。プリミティブに関連したテクスチャが存在しないことがステップＳ１９で決定された場合、制御フローは、ステップＳ２１で直接継続する。ステップＳ２１において、例えば分散色Ｃｉｐ及び補間された規定値Ｎｉｐを用いて他の色演算が行われ、ステップＳ１８に進む。
【図面の簡単な説明】
【００６３】
【図１】従来のコンピュータグラフィックスシステムを線形的に示す。
【図２】従来の他のコンピュータグラフィックスシステムを線形的に示す。
【図３】図１に示すコンピュータグラフィックスシステム及び図２に示すコンピュータグラフィックスシステムを組み合わせることによって構成されたコンピュータグラフィックスシステムを線形的に示す。
【図４】本発明によるグラフィックスシステムを線形的に示す。
【図５】図４のコンピュータグラフィックスシステムの色発生ユニットを更に詳細に示す。
【図６】動作方法を線形的に示す。
【図７】動作の態様を線形的に示す。
【図８Ａ】プリミティブの第１例を示す。
【図８Ｂ】動作の他の態様を線形的に示す。
【図９】プリミティブの第２例を示す。
【図１】
2006517705.tif 000003
【図２】
2006517705.tif 000004
【図３】
2006517705.tif 000005
【図４】
2006517705.tif 000006
【図５】
2006517705.tif 000007
【図６】
2006517705.tif 000008
【図７】
2006517705.tif 000009
2006517705.tif 000010
【図９】
2006517705.tif 000011
【手続補正書】
【提出日】平成17年9月13日(2005.9.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
グラフィックスプリミティブのセットを表す情報を提供し、前記情報が、少なくとも前記プリミティブの形状を規定する幾何学的な情報及び前記プリミティブの出現を規定する出現情報を具えるモデル情報提供ユニットと、
前記プリミティブに関連した基準グリッドに一致する座標の第１シーケンスを発生することができ、かつ、前記第１シーケンスに関連した補間値の一つ以上のシーケンスを発生することができるラスタライザと、
前記出現情報を用いて座標の前記第１シーケンスに対して色を割り当てる色発生器とを具え、前記色発生器が、
テクスチャデータをテクスチャ座標に割り当てるテクスチャデータユニットと、
テクスチャ座標を発生し、発生したテクスチャ座標でデータを前記テクスチャからフェッチし、かつ、フェッチしたテクスチャデータを前記基準グリッドに対して再サンプリングすることによって、出力テクスチャデータを発生するように配置されたテクスチャスペースリサンプラと、
前記出力テクスチャデータ及び前記ラスタライザによって提供された前記出現データを用いて前記色を提供することができるシェーディングユニットとを具え、
前記基準グリッドにおいて前記色発生器によって割り当てられた色を、ディスプレイに関連したグリッドの表示に対して再サンプリングするディスプレイスペースリサンプラを更に具えるコンピュータグラフィックシステムにおいて、
前記第１シーケンスに関連した補間値の一つ以上のシーケンスが、テクスチャのサンプルを指定する座標の第２シーケンスを具え、前記テクスチャスペースリサンプラが、前記テクスチャデータユニットによって提供されたテクスチャデータを、前記基準グリッドに対して任意のグリッドから再サンプリングすることができることを特徴とするコンピュータグラフィックスシステム。
【請求項２】
前記基準グリッドを他のテクスチャのグリッドとしたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項３】
前記基準グリッドをダミーグリッドとしたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項４】
前記ラスタライザが、前記テクスチャ座標の第１シーケンスに関連したディスプレイスペースに座標のシーケンスを発生するようにも配置されたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項５】
前記出力テクスチャデータに応答して、他のテクスチャ座標を前記テクスチャスペースリサンプラに供給するフィードバックファシリティを設けたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項６】
前記ラスタライザが直接前記テクスチャデータユニットに前記テクスチャ座標を供給することができるようにするバイパスファシリティを設けたことを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項７】
前記ラスタライザが、前記テクスチャ座標の第１シーケンスによって横切られるグリッドを選択するラスタライゼーショングリッド選択ユニットを具えることを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項８】
二つ以上のテクスチャを前記プリミティブに関連させた場合、前記ラスタライゼーショングリッド選択ユニットが、最高の解像度で利用できる関連のテクスチャのグリッドを選択することを特徴とする請求項７記載のコンピュータグラフィックスシステム。
【請求項９】
前記ラスタライザが、前記プリミティブに関連したスペースと前記ディスプレイに関連したスペースとの間の関係の関数としてステップ状の距離サンプリングに適合することができることを特徴とする請求項１記載のコンピュータグラフィックスシステム。
【請求項１０】
プリミティブのセットを具えるグラフィックスモデルを表す情報を提供し、前記情報が、少なくとも前記プリミティブの形状を規定する幾何学的な情報及び前記プリミティブの出現を規定する出現情報を具えるステップと、
前記プリミティブに関連した基準グリッドに一致する座標の第１シーケンスを発生するステップと、
前記第１シーケンスに関連した補間値の一つ以上のシーケンスを発生するステップと、
前記テクスチャに整列したテクスチャ座標を、前記第２シーケンスから発生し、発生したテクスチャ座標で前記テクスチャのデータをフェッチし、かつ、フェッチしたデータの関数として出力テクスチャデータを提供することによって、前記基準グリッドに整列した出力テクスチャデータを提供するステップと、
前記出力テクスチャデータ及び前記出現情報を用いて色を提供するステップと、
そのようにして得られた色を、ディスプレイに関連したグリッドの表示に対して再サンプリングするステップとを具えるコンピュータグラフィックイメージのレンダリング方法において、
前記第１シーケンスに関連した補間値の一つ以上のシーケンスが、テクスチャのサンプルを指定する座標の第２シーケンスを具え、前記フェッチしたテクスチャデータが、前記基準グリッドに対して任意のグリッドから再サンプリングされることを特徴とするコンピュータグラフィックイメージのレンダリング方法。
【国際調査報告】
2006517705.tif 000012
2006517705.tif 000013
2006517705.tif 000014