(57)【要約】【課題】  ３次元グラフィックスデータを効率的にレンダリングする方法及び装置を提供する。【解決手段】  ３次元グラフィックスデータに適用される霧効果の強度を計算し、計算された霧効果の強度によって３次元グラフィックスデータに対するテクスチャーマッピングの実行如何を決定し、決定された結果によってテクスチャーマッチングを行うことによってテクスチャーを読み取るためのメモリ接近の回数を減少させることができる。【選択図】      図４
2008130091.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）グラフィックスデータに適用される霧効果の強度を計算するステップと、
（ｂ）前記計算された霧効果の強度によって前記グラフィックスデータに対するテクスチャーマッピングの実行如何を決定するステップと、
（ｃ）前記決定された結果によって前記テクスチャーマッチングを行うステップと、を含むことを特徴とするレンダリング方法。
【請求項２】
前記（ｂ）ステップは、前記計算された霧効果の強度と臨界値とを比較し、前記比較結果によって前記テクスチャーマッピングの実行如何を決定することを特徴とする請求項１に記載のレンダリング方法。
【請求項３】
前記（ａ）ステップは、グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれに適用される霧効果の強度を計算し、
前記（ｂ）ステップは、前記頂点それぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項１に記載のレンダリング方法。
【請求項４】
前記（ｃ）ステップは、前記（ｂ）ステップで前記ポリゴンの頂点すべてに対するテクスチャーマッピングを行わないと決定された場合、前記ポリゴンのピクセルそれぞれにテクスチャーをマッピングしないことを特徴とする請求項３に記載のレンダリング方法。
【請求項５】
前記（ａ）ステップは、グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンのピクセルそれぞれに適用される霧効果の強度を計算し、
前記（ｂ）ステップは、前記ピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項１に記載のレンダリング方法。
【請求項６】
前記（ｂ）ステップは、前記ポリゴンの頂点のうち深さ値の最も小さな頂点の霧因子の値が臨界値より大きければ、前記ポリゴンに対するテクスチャーマッピングを行うと決定することを特徴とする請求項５に記載のレンダリング方法。
【請求項７】
前記（ｂ）ステップは、前記ポリゴンの頂点のうち深さ値の最も大きい頂点の霧因子の値が臨界値より大きくなければ、前記ポリゴンに対するテクスチャーマッピングを行わないと決定することを特徴とする請求項５に記載のレンダリング方法。
【請求項８】
前記（ｂ）ステップは、前記ポリゴンの頂点のうち深さ値の最も小さな頂点の霧因子の値が臨界値より大きく、前記頂点のうち深さ値の最も大きい頂点の霧因子の値が前記臨界値より大きくなければ、前記ポリゴンのピクセルそれぞれの霧因子の値と前記臨界値とを比較し、前記比較結果によって前記ピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項５に記載のレンダリング方法。
【請求項９】
グラフィックスデータに適用される霧効果の強度を計算するステップと、
前記計算された霧効果の強度によって前記グラフィックスデータに対するテクスチャーマッピングの実行如何を決定するステップと、
前記決定された結果によって前記テクスチャーマッチングを行うステップと、を含むことを特徴とするレンダリング方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項１０】
グラフィックスデータに適用される霧効果の強度を計算する計算部と、
前記計算された霧効果の強度によって前記グラフィックスデータに対するテクスチャーマッピングの実行如何を決定する決定部と、
前記決定された結果によって前記テクスチャーマッチングを行うテクスチャーマッピング部と、を備えることを特徴とするレンダリング装置。
【請求項１１】
前記決定部は、前記計算された霧効果の強度と臨界値とを比較し、前記比較結果によって前記テクスチャーマッピングの実行如何を決定することを特徴とする請求項１０に記載のレンダリング装置。
【請求項１２】
前記計算部は、グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれに適用される霧効果の強度を計算し、
前記決定部は、前記頂点それぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項１０に記載のレンダリング装置。
【請求項１３】
前記テクスチャーマッピング部は、前記決定部により前記ポリゴンの頂点すべてに対するテクスチャーマッピングを行わないと決定された場合、前記ポリゴンのピクセルそれぞれにテクスチャーをマッピングしないことを特徴とする請求項１２に記載のレンダリング装置。
【請求項１４】
前記計算部は、グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンのピクセルそれぞれに適用される霧効果の強度を計算し、
前記決定部は、前記ピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項１０に記載のレンダリング装置。
【請求項１５】
前記決定部は、前記ポリゴンの頂点のうち深さ値の最も小さな頂点の霧因子の値が臨界値より大きければ、前記ポリゴンに対するテクスチャーマッピングを行うと決定することを特徴とする請求項１４に記載のレンダリング装置。
【請求項１６】
前記決定部は、前記ポリゴンの頂点のうち深さ値の最も大きい頂点の霧因子の値が臨界値より大きくなければ、前記ポリゴンに対するテクスチャーマッピングを行わないと決定することを特徴とする請求項１４に記載のレンダリング装置。
【請求項１７】
前記決定部は、前記ポリゴンの頂点のうち深さ値の最も小さな頂点の霧因子の値が臨界値より大きく、前記頂点のうち深さ値の最も大きい頂点の霧因子の値が前記臨界値より大きくなければ、前記ポリゴンのピクセルそれぞれの霧因子の値と前記臨界値とを比較し、前記比較結果によって前記ピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定することを特徴とする請求項１４に記載のレンダリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元グラフィックスデータをレンダリングする方法及び装置に係り、特に、３次元グラフィックスデータを効率的にレンダリングする方法及び装置に関する。
【背景技術】
【０００２】
３次元グラフィックスデータをレンダリングする過程は、３次元グラフィックスデータが表す客体の構成単位である三角形の頂点のパラメータ値を計算する頂点処理過程、三角形のピクセルのパラメータ値を計算するスキャン変換過程、メモリにあらかじめ保存された２次元イメージに該当するテクスチャーを客体に適用するテクスチャーマッピング過程、以上の過程で決定された値をブレンディングすることによってピクセルのパラメータの最終値を計算するブレンディング過程など多くの過程で構成されている。
【０００３】
特に、そのような３次元グラフィックスデータレンダリング過程の計算量は非常にぼう大であり、メモリ接近回数も非常に多い。これにより、携帯電話、ＰＤＡ（パーソナル  デジタル  アシスタント）のようにハードウェアの性能が低いモバイル端末では、３次元グラフィックスデータがリアルタイムでレンダリングされ得ないという問題点があった。さらに、ハードウェアの性能があまり高くないデスクトップＰＣ（パーソナル  コンピュータ）などでも３次元グラフィックスデータがリアルタイムでレンダリングされ得ないという問題点があった。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする技術的課題は、３次元グラフィックスデータをレンダリングする過程中にテクスチャーマッピングのためのメモリ接近の回数を最小化するための方法及び装置を提供するところにある。また、前記の方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供するところにある。
【０００５】
本発明が解決しようとする技術的課題は、前記のような技術的課題に限定されず、さらに他の技術的課題が存在できる。これは、当業者ならば下の記載から明確に理解できるであろう。
【課題を解決するための手段】
【０００６】
前記技術的課題を解決するための本発明によるレンダリング方法は、グラフィックスデータに適用される霧効果の強度を計算するステップと、前記計算された霧効果の強度によって前記グラフィックスデータに対するテクスチャーマッピングの実行如何を決定するステップと、前記決定された結果によって前記テクスチャーマッチングを行うステップとを含む。
【０００７】
前記他の技術的課題を解決するために、本発明は、前記のレンダリング方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
【０００８】
前記さらに他の技術的課題を解決するための本発明によるレンダリング装置は、グラフィックスデータに適用される霧効果の強度を計算する計算部と、前記計算された霧効果の強度によって前記グラフィックスデータに対するテクスチャーマッピングの実行如何を決定する決定部と、前記決定された結果によって前記テクスチャーマッチングを行うテクスチャーマッピング部とを備える。
【発明の効果】
【０００９】
本発明によれば、３次元グラフィックスデータに適用される霧効果の強度によってテクスチャーマッチングを行うことによって、テクスチャーを読み取るためのメモリ接近の回数を低減させることができる。そのようにテクスチャーを読み取るためのメモリ接近の回数が低減するにつれてメモリ接近に使われる計算及び消費電力を最小化でき、メモリ接近に必要な時間を短縮できる。結果的に、本発明によれば、３次元グラフィックスデータをレンダリングするのにかかる電力及び時間を最小化できて、ハードウェアの性能が低いモバイル端末、デスクトップＰＣなどで３次元グラフィックスデータをリアルタイムでレンダリングさせることができる。
【発明を実施するための最良の形態】
【００１０】
以下、添付した図面を参照して本発明の望ましい実施形態を詳細に説明する。
【００１１】
図１は、霧効果が適用された３次元グラフィックスデータのレンダリング画面を示す図である。図１を参照するに、遠くにある建物は霧のために非常に曇って見える。そのように、霧効果とは、遠くにある客体を曇るように表現することによって３次元映像の現実感をさらに加える効果をいい、３次元映像の視点、例えば、カメラから客体の距離が遠いほどその効果がさらに強くなる。ところで、客体の距離が特定距離以上になれば、霧によってその客体の本来のカラー及びテクスチャーが見えなくなるということが分かる。
【００１２】
本実施形態では、その点に鑑みて、客体が霧のためにその客体の本来のカラー及びテクスチャーをなくし、霧だけで表現される場合には、テクスチャーを読み取るためのメモリ接近を止めることで３次元グラフィックスデータを効率的にレンダリングし、レンダリングにかかる電力を最小化させようとした。
【００１３】
一般的に、霧効果はある客体のピクセルの霧因子（ｆｏｇ  ｆａｃｔｏｒ）ｆの値を計算し、これをピクセルのカラー値に適用させることによって具現されうる。あるピクセルの霧因子ｆとは、そのピクセルに適用される霧効果の強度をいう。次の式（１）ないし（３）は、霧因子ｆの値を求めるための公式である。“ｆ＝０”は、全霧（ｆｕｌｌ  ｆｏｇ）を意味し、“ｆ＝１”は無霧（ｎｏ  ｆｏｇ）を意味する。
【００１４】
【数１】
2008130091.tif 000003
式（１）で、“ｅｎｄ”は、霧が終わる地点を意味し、“ｓｔａｒｔ”は、霧が始まる地点を意味する。また、“ｄ”は、３次元グラフィックスデータが表す３次元映像の視点、例えば、カメラから霧が表現される地点間の距離である。
【００１５】
【数２】
2008130091.tif 000004
式（２）及び（３）で、“ｄ”は、式（１）でと同じ意味であり、“ｄｅｎｓｉｔｙ”は、霧の濃度を意味する。
【００１６】
図２は、３次元映像の視点と霧が表現される地点間の距離による霧因子ｆ値の変化を示すグラフである。図２を参照するに、式（１）ないし（３）での“ｄ”による霧因子ｆの値は、霧因子ｆの値を計算する数式の種類と霧の濃度によって色々な形態に変化されるということが分かる。ただし、あらゆる場合に３次元映像の視点と霧が表現される地点間の距離、すなわち、“ｄ”の距離が増加するほど霧の効果が益々強くなると同時に本来のカラー値が益々消えるということが分かる。
【００１７】
図３は、図２に示すグラフに本発明の望ましい一実施形態による臨界値を表示した図である。図３を参照するに、図２に示すグラフに矢印一つが挿入されている。その矢印は、あるピクセルの霧因子ｆの値がその矢印が指示する値より大きくなければ、そのピクセルに対するテクスチャーマッピングが行われる必要がないということを表す霧因子ｆの臨界値である。以下で記述される実施形態では、そのような臨界値と式（１）ないし（３）を利用して計算された霧因子ｆの値とを比較し、その比較結果によってテクスチャーマッピングを行う。
【００１８】
ところが、霧効果は、霧因子ｆの値計算を頂点処理過程で行うか、そうでなければ、ピクセル処理過程で行うかによって頂点霧とピクセル霧とに区分される。頂点霧での霧因子ｆの値は頂点処理過程で計算され、ピクセル霧での霧因子ｆの値は、スキャン変換過程でピクセルそれぞれの深さｚの値が計算された後に、その値を利用して計算される。
【００１９】
式（１）ないし（３）を利用して計算された霧因子ｆの値は次の式（４）に代入され、式（４）が計算されることによって霧効果が適用されたカラー値を得ることができる。
【００２０】
【数３】
2008130091.tif 000005
ここで、Ｃｉは、頂点のカラー値であり、Ｃｆは、霧のカラー値である。式（４）によれば、あるピクセルの霧因子ｆの値が小さくなるほどそのピクセルの本来のカラー値が益々消える。
【００２１】
図４は、本発明の望ましい一実施形態によって頂点霧効果を考慮して３次元グラフィックスデータをレンダリングする装置の構成図である。図４を参照するに、本実施形態によって頂点霧効果を考慮して、３次元グラフィックスデータレンダリング装置は、頂点処理部４１、ラスタライザ４２、霧因子テーブル４３、及びフレームバッファ４４で構成される。特に、図４に示す３次元グラフィックスレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点単位で霧効果を考慮して、３次元グラフィックスデータをレンダリングする。
【００２２】
頂点処理部４１は、３次元グラフィックスデータを入力され、入力された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれのパラメータの値を求めるための色々な処理を行う。ここで、パラメータは、３次元グラフィックスデータが表す少なくとも一つ以上の客体をレンダリングするためのピクセル単位情報であり、ピクセルそれぞれの座標ｘ、ｙの値、深さｚの値、カラーｒ、ｇ、ｂ、ａの値、そのピクセルそれぞれにマッピングされるテクスチャーの座標ｓ、ｔの値などを含む。ｒは赤色、ｇは緑色、ｂは青色、ａは透明度を意味する。
【００２３】
多様な形態の客体はいずれか一つの形態を持つポリゴンの集合で表現されうるが、レンダリング計算量を低減するためにいろいろな形態のポリゴンのうち最も単純な形態である三角形が主に利用される。以下ではポリゴンを三角形に特定して本実施形態を説明する。ただし、当業者ならば三角形以外の他の形態のポリゴンも本実施形態に適用されうるということを理解できるであろう。
【００２４】
図５は、図４に示す頂点処理部４１の詳細構成図である。図５を参照するに、図４に示す頂点処理部４１は、変換部５１、計算部５２、及び決定部５３で構成される。
【００２５】
変換部５１は、モデルビュー行列、投影行列などを含む変換行列を利用して入力された３次元グラフィックスデータを、２次元平面の３次元グラフィックスデータに変換する。ここで、モデルビュー行列は、２次元平面での客体の位置及び方向を決定するための行列であり、投影行列は、２次元平面での客体の大きさ及び形態を決定するための行列である。
【００２６】
計算部５２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれについての光計算を行うことによって、その頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に光源効果を適用する。計算部５２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれの霧因子ｆの値を計算する。より詳細に説明すると、計算部５２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体を構成する頂点それぞれの深さｚの値を、前記式（１）ないし（３）のうちいずれか一つの“ｄ”に代入し、これを計算することによって霧因子ｆの値を得る。式（１）ないし（３）のうち、どちらが使われるかは、本実施形態による３次元グラフィックスデータレンダリング装置の性能、ユーザにより要求される霧効果の強度により決定される。
【００２７】
また、計算部５２は、そのように計算された霧因子ｆの値に基づいて、３次元グラフィックスデータが表す少なくとも一つの客体の構成単位であるポリゴンの頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に霧効果を適用する。より詳細に説明すると、計算部５２は、そのように計算された霧因子ｆの値を前記の式（４）に代入し、これを計算することによって霧効果が適用されたカラーｒ、ｇ、ｂ、ａの値を得る。その場合、Ｃｉは、光源効果が適用されたカラー値になる。ただし、計算部５２により処理された霧因子ｆの計算及び霧効果適用のうち、霧効果適用は、ラスタライザ４２によるテクスチャーマッピング後に行われうるということを、当業者ならば理解できるであろう。その場合、Ｃｉは、光源効果及びテクスチャーマッピングが適用されたカラー値になる。
【００２８】
決定部５３は、霧因子テーブル４３に保存された霧因子の臨界値のうちいずれか一つを抽出し、計算部５２により計算された頂点の霧因子ｆと抽出された臨界値とを比較し、比較結果によってその頂点それぞれに対するテクスチャーマッピングの実行如何を決定する。すなわち、決定部５３は、いずれか一つの頂点の霧因子ｆの値が抽出された臨界値より大きければ、その頂点に対するテクスチャーマッピングを行うと決定し、大きくなければ、その頂点に対するテクスチャーマッピングを行わないと決定する。前者は、頂点のカラーに霧効果を適用する場合にほぼ霧カラーになる場合であり、後者は、頂点のカラーに霧効果を適用する場合にもその頂点に適用されたテクスチャーが見える場合である。
【００２９】
特に、決定部５３は、霧因子ｆの計算に使われた数式の種類、ユーザの選択、図４に示す３次元グラフィックスレンダリング装置の性能に基づいて霧因子テーブル４３に保存された臨界値のうちいずれか一つを抽出する。例えば、ユーザにより３次元グラフの画質が低く表示されるように選択された場合ならば、決定部５３は、そのようなユーザの選択によって複数の臨界値のうち最も大きい臨界値を抽出する。もし、図４に示す３次元グラフィックスレンダリング装置の性能が高いならば、３次元グラフの画質が高く表示されるように、決定部５３は、複数の臨界値のうち最も小さな臨界値を抽出する。
【００３０】
ラスタライザ４２は、頂点処理部４１から３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の頂点それぞれのパラメータの値を入力され、その頂点それぞれのパラメータの値から三角形のピクセルそれぞれのパラメータの最終値を計算する。特に、本実施形態によれば、ラスタライザ４２は、頂点処理部４１からテクスチャーマッピング実行如何についての決定結果を入力され、これに基づいてテクスチャーマッピングを行う。
【００３１】
図６は、図４に示すラスタライザ４２の詳細構成図である。図６を参照するに、図４に示すラスタライザ４２は、スキャン変換部６１、テクスチャーマッピング部６２、及びブレンディング部６３で構成される。
【００３２】
スキャン変換部６１は、頂点処理部４１により処理された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形のピクセルそれぞれのパラメータの値を決定する。より詳細に説明すると、スキャン変換部６１は、三角形の三つの頂点それぞれのパラメータの値から三角形の頂点以外の他のピクセルそれぞれのパラメータの値を補間することで、その三角形のピクセルそれぞれのパラメータの値を決定する。
【００３３】
テクスチャーマッピング部６２は、頂点処理部４１の決定部５３により決定された結果によって３次元グラフィックスデータに対するテクスチャーマッピングを行う。特に、本実施形態によれば、テクスチャーマッピング部６２は、頂点処理部４１の決定部５３により決定された結果によって、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形に対するテクスチャーマッピングを行う。より詳細に説明すると、頂点処理部４１の決定部５３によりある三角形の頂点すべてに対するテクスチャーマッピングを行わないと決定された場合、テクスチャーマッピング部６２は、その三角形のピクセルそれぞれにメモリ（図示せず）に保存されたテクスチャーをマッピングしない。そのようなテクスチャーマッピング省略の回数ほど、テクスチャーマッピングのためのメモリ接近回数が消える。もし、頂点処理部４１の決定部５３によりある三角形の頂点のうちいずれか一つでもテクスチャーマッピングを行うと決定された場合ならば、テクスチャーマッピング部６２は、その三角形のピクセルそれぞれにメモリ（図示せず）に保存されたテクスチャーをマッピングする。
【００３４】
ブレンディング部６３は、テクスチャーマッピング部６２によりテクスチャーがマッピングされたピクセルそれぞれのカラーｒ、ｇ、ｂの値に、そのピクセルそれぞれの透明度ａの値をブレンディングする。ブレンディング部６３から出力されたピクセルそれぞれのパラメータの最終値はフレームバッファ４４に保存される。特に、当業者ならば、図４に示すラスタライザ４２は、前記構成要素以外にもαテスト部、深さテスト部のような他の構成要素をさらに含みうるということが分かる。以下の他の実施形態でも同じである。
【００３５】
図７は、本発明の望ましい一実施形態によってピクセル霧効果を考慮して３次元グラフィックスデータをレンダリングする装置の構成図である。図７を参照するに、本実施形態によってピクセル霧効果を考慮して３次元グラフィックスデータレンダリング装置は、頂点処理部７１、ラスタライザ７２、霧因子テーブル７３、及びフレームバッファ７４で構成される。特に、図４に示す３次元グラフィックスレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンのピクセル単位で、霧効果を考慮して３次元グラフィックスデータをレンダリングする。
【００３６】
頂点処理部７１は３次元グラフィックスデータを入力され、入力された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の頂点それぞれのパラメータの値を求めるための色々な処理を行う。
【００３７】
図８は、図７に示す頂点処理部７１の詳細構成図である。図８を参照するに、図４に示す頂点処理部７１は、変換部８１及び計算部８２で構成される。
【００３８】
変換部８１は、モデルビュー行列、投影行列などを含む変換行列を利用して入力された３次元グラフィックスデータを２次元平面の３次元グラフィックスデータに変換する。
【００３９】
計算部８２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれについての光計算を行うことによってその頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に光源効果を適用する。
【００４０】
ラスタライザ７２は、頂点処理部７１から３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の頂点それぞれのパラメータの値を入力され、その頂点それぞれのパラメータの値から三角形のピクセルそれぞれのパラメータの最終値を計算する。
【００４１】
図９は、図７に示すラスタライザ７２の詳細構成図である。図９を参照するに、図７に示すラスタライザ７２は、スキャン変換部９１、計算部９２、決定部９３、テクスチャーマッピング部９４、及びブレンディング部９５で構成される。
【００４２】
変換部８１は、頂点処理部７１により処理された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形のピクセルそれぞれのパラメータの値を決定する。より詳細に説明すると、変換部８１は、三角形の三つの頂点それぞれのパラメータの値から三角形の頂点以外の他のピクセルそれぞれのパラメータの値を補間することによって、その三角形のピクセルそれぞれのパラメータの値を決定する。
【００４３】
計算部９２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形のピクセルそれぞれの霧因子ｆの値を計算する。より詳細に説明すると、計算部９２は、３次元グラフィックスデータが表す少なくとも一つ以上の客体を構成するピクセルそれぞれの深さｚの値を前記式（１）ないし（３）のうちいずれか一つの“ｄ”に代入し、これを計算することによって霧因子ｆの値を得る。
【００４４】
また、計算部９２は、そのように計算された霧因子ｆの値に基づいて３次元グラフィックスデータが表す少なくとも一つの客体の構成単位であるポリゴンのピクセルそれぞれのカラー値に霧効果を適用する。より詳細に説明すると、計算部９２は、そのように計算された霧因子ｆの値を前記式（４）に代入し、これを計算することによって霧効果が適用されたカラーｒ、ｇ、ｂ、ａの値を得る。その場合、Ｃｉは、光源効果が適用されたカラー値になる。ただし、計算部９２により処理された霧因子ｆ計算及び霧効果適用のうち、霧効果適用は、テクスチャーマッピング部９４によるテクスチャーマッピング後に行われることもあるということを、当業者ならば理解できるであろう。その場合、Ｃｉは光源効果及びテクスチャーマッピングが適用されたカラー値になる。
【００４５】
決定部９３は、霧因子テーブル７３に保存された霧因子の臨界値のうちいずれか一つを抽出し、計算部９２により計算されたピクセルの霧因子ｆの値と抽出された臨界値とを比較し、比較結果によってそのピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定する。より詳細に説明すると、決定部９３は、いずれか一つの三角形の三つの頂点のうち、深さｚの値が最も小さな頂点の霧因子ｆの値と抽出された臨界値とを比較し、比較結果によってその三角形に対するテクスチャーマッピングの実行如何を決定する。すなわち、決定部９３は、三角形の三つの頂点のうち深さｚの値が最も小さな頂点の霧因子ｆの値が抽出された臨界値より大きければ、その三角形に対するテクスチャーマッピングを行うと決定する。その場合は、三角形のあらゆるピクセルの霧因子ｆの値が臨界値より大きい場合に該当する。
【００４６】
また、決定部９３は、三角形の三つの頂点のうち深さｚの値が最も小さな頂点の霧因子ｆの値が抽出された臨界値より大きくなければ、その三角形の三つの頂点のうち深さｚの値が最も大きい頂点の霧因子ｆの値と抽出された臨界値とを比較し、比較結果によってその三角形に対するテクスチャーマッピングの実行如何を決定する。すなわち、決定部９３は、その三角形の三つの頂点のうち深さｚの値が最も大きい頂点の霧因子ｆの値が抽出された臨界値より大きくなければ、その三角形に対するテクスチャーマッピングを行わないと決定する。その場合は、三角形のあらゆるピクセルの霧因子ｆの値が臨界値より大きくない場合に該当する。
【００４７】
また、決定部９３は、その三角形の三つの頂点のうち深さｚの値が最も小さな頂点の霧因子ｆの値が抽出された臨界値より大きく、その三角形の三つの頂点のうち深さｚの値が最も大きい頂点の霧因子ｆの値が抽出された臨界値より大きければ、その三角形のピクセルそれぞれの霧因子ｆの値と抽出された臨界値とを比較し、比較結果によってそのピクセルそれぞれに対するテクスチャーマッピングの実行如何を決定する。すなわち、決定部９３は、いずれか一つのピクセルの霧因子ｆの値が抽出された臨界値より大きければ、そのピクセルに対するテクスチャーマッピングを行うと決定し、大きくなければ、そのピクセルに対するテクスチャーマッピングを行わないと決定する。
【００４８】
特に、決定部９３は、霧因子ｆの計算に使われた数式の種類、ユーザの選択、図４に示す３次元グラフィックスレンダリング装置の性能に基づいて、霧因子テーブル７３に保存された臨界値のうちいずれか一つを抽出する。例えば、ユーザにより３次元グラフの画質が低く表示されるように選択された場合ならば、決定部９３は、そのようなユーザの選択によって複数の臨界値のうち最も大きい臨界値を抽出する。もし、図４に示す３次元グラフィックスレンダリング装置の性能が高いならば、３次元グラフの画質が高く表示されるように、決定部９３は、複数の臨界値のうち最も小さな臨界値を抽出する。
【００４９】
テクスチャーマッピング部９４は、決定部９３により決定された結果によって３次元グラフィックスデータに対するテクスチャーマッピングを行う。特に、本実施形態によれば、テクスチャーマッピング部９４は、決定部９３により決定された結果によって３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形に対するテクスチャーマッピングを行う。より詳細に説明すると、テクスチャーマッピング部９４は、決定部９３によりある三角形に対するテクスチャーマッピングを行わないと決定された場合、その三角形のピクセルそれぞれにメモリに保存されたテクスチャーをマッピングしない。もし、決定部９３によりその三角形に対するテクスチャーマッピングを行うと決定された場合ならば、テクスチャーマッピング部９４は、その三角形のピクセルそれぞれにメモリに保存されたテクスチャーをマッピングする。
【００５０】
また、テクスチャーマッピング部９４は、決定部９３によりあるピクセルに対するテクスチャーマッピングを行わないと決定された場合、そのピクセルにメモリに保存されたテクスチャーをマッピングしない。もし、決定部９３によりそのピクセルに対するテクスチャーマッピングを行うと決定された場合ならば、テクスチャーマッピング部９４はそのピクセルに、メモリに保存されたテクスチャーをマッピングする。
【００５１】
ブレンディング部９５は、テクスチャーマッピング部９４によりテクスチャーがマッピングされたピクセルそれぞれのカラーｒ、ｇ、ｂの値に、そのピクセルそれぞれの透明度ａの値をブレンディングする。特に、当業者ならば、図４に示すラスタライザ７２は、前記構成要素以外にもαテスト部、深さテスト部のような他の構成要素をさらに含むことができるということが分かる。以下の他の実施形態でも同じである。
【００５２】
図１０は、本発明の望ましい一実施形態によって頂点霧効果を考慮して３次元グラフィックスデータをレンダリングする方法を示すフローチャートである。図１０を参照するに、本実施形態によって頂点霧効果を考慮して、３次元グラフィックスデータレンダリング方法は、図４に示す３次元グラフィックスデータレンダリング装置で時系列的に処理されるステップで構成される。したがって、以下省略された内容であっても、図４に示す３次元グラフィックスデータレンダリング装置に関して以上で記述された内容は、本実施形態による３次元グラフィックスレンダリング方法にも適用される。
【００５３】
１０１ステップで、３次元グラフィックスデータレンダリング装置は、モデルビュー行列、投影行列などを含む変換行列を利用して入力された３次元グラフィックスデータを２次元平面の３次元グラフィックスデータに変換する。
【００５４】
１０２ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の頂点それぞれについての光計算を行うことによって、その頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に光源効果を適用する。
【００５５】
１０３ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位であるポリゴンの頂点それぞれの霧因子ｆの値を計算し、そのように計算された霧因子ｆの値に基づいて、３次元グラフィックスデータが表す少なくとも一つの客体の構成単位であるポリゴンの頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に霧効果を適用する。
【００５６】
１０４ステップで３次元グラフィックスデータレンダリング装置は、霧因子テーブル４３に保存された霧因子の臨界値のうちいずれか一つを抽出し、１０３ステップで計算された頂点の霧因子ｆと抽出された臨界値とを比較し、比較結果によってその頂点それぞれに対するテクスチャーマッピングの実行如何を決定する。
【００５７】
１０５ステップで３次元グラフィックスデータレンダリング装置は、１０１ないし１０３ステップで処理された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の三つの頂点それぞれのパラメータの値から、三角形の頂点以外の他のピクセルそれぞれのパラメータの値を補間することによって、その三角形のピクセルそれぞれのパラメータの値を決定する。
【００５８】
１０６ステップで３次元グラフィックスデータレンダリング装置は、１０４ステップである三角形の頂点すべてに対するテクスチャーマッピングを行わないと決定された場合、１０８ステップに進み、その三角形の頂点いずれか一つでもテクスチャーマッピングを行うと決定された場合ならば、１０７ステップに進行する。
【００５９】
１０７ステップで３次元グラフィックスデータレンダリング装置は、その三角形のピクセルそれぞれに、メモリに保存されたテクスチャーをマッピングする。
【００６０】
１０８ステップで３次元グラフィックスデータレンダリング装置は、１０７ステップでテクスチャーがマッピングされたピクセルそれぞれのカラーｒ、ｇ、ｂの値に、そのピクセルそれぞれの透明度ａの値をブレンディングする。
【００６１】
１０９ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の三角形すべてについて１０２ないし１０８ステップが完了したならば終了し、三角形すべてについて完了していなければ、既に１０２ないし１０８ステップが完了した三角形以外のいずれか一つの三角形について１０２ないし１０８ステップを行うために、１０１ステップに戻る。
【００６２】
図１１Ａ及び図１１Ｂは、本発明の望ましい一実施形態によってピクセル霧効果を考慮して、３次元グラフィックスデータをレンダリングする方法のフローチャートである。図１１Ａ及び図１１Ｂを参照するに、本実施形態によってピクセル霧効果を考慮した３次元グラフィックスデータレンダリング方法は、図７に示す３次元グラフィックスデータレンダリング装置で時系列的に処理されるステップで構成される。したがって、以下省略された内容であっても、図７に示す３次元グラフィックスデータレンダリング装置に関して以上で記述された内容は、本実施形態による３次元グラフィックスレンダリング方法にも適用される。
【００６３】
１１１ステップで３次元グラフィックスデータレンダリング装置は、モデルビュー行列、投影行列などを含む変換行列を利用して、入力された３次元グラフィックスデータを２次元平面の３次元グラフィックスデータに変換する。
【００６４】
１１２ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の頂点それぞれについての光計算を行うことによって、その頂点それぞれのカラーｒ、ｇ、ｂ、ａの値に光源効果を適用する。
【００６５】
１１３ステップで３次元グラフィックスデータレンダリング装置は、１１１−１１２ステップで処理された３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形の三つの頂点それぞれのパラメータの値から、三角形の頂点以外の他のピクセルそれぞれのパラメータの値を補間することによって、その三角形のピクセルそれぞれのパラメータの値を決定する。
【００６６】
１１４ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の客体の構成単位である三角形のピクセルそれぞれの霧因子ｆの値を計算し、そのように計算された霧因子ｆの値に基づいて３次元グラフィックスデータが表す少なくとも一つの客体の構成単位であるポリゴンのピクセルそれぞれのカラー値に霧効果を適用する。
【００６７】
１１５ステップで３次元グラフィックスデータレンダリング装置は、霧因子テーブル７３に保存された霧因子の臨界値のうちいずれか一つを抽出し、いずれか一つの三角形の三つの頂点のうち深さｚの値が最も小さな頂点の霧因子ｆの値と抽出された臨界値とを比較する。また、１１５ステップで３次元グラフィックスデータレンダリング装置は、比較結果、深さｚの値が最も小さな頂点の霧因子ｆの値が抽出された臨界値より大きければ、その三角形に対するテクスチャーマッピングを行うと決定し、１１６ステップに進む。もし、臨界値より大きくなければ、１１５ステップで３次元グラフィックスデータレンダリング装置は１１７ステップに進む。
【００６８】
１１６ステップで３次元グラフィックスデータレンダリング装置は、その三角形のピクセルそれぞれにメモリに保存されたテクスチャーをマッピングする。
【００６９】
１１７ステップで３次元グラフィックスデータレンダリング装置は、その三角形の三つの頂点のうち、深さｚの値が最も大きい頂点の霧因子ｆの値と抽出された臨界値とを比較し、比較結果、深さｚの値が最も大きい頂点の霧因子ｆの値が抽出された臨界値より大きくなければ、その三角形に対するテクスチャーマッピングを行わないと決定し、１１９ステップに進む。もし、臨界値より大きければ、１１７ステップで３次元グラフィックスデータレンダリング装置は１１８ステップに進む。
【００７０】
１１８ステップで３次元グラフィックスデータレンダリング装置は、その三角形のいずれか一つのピクセルの霧因子ｆの値と抽出された臨界値とを比較し、比較結果、そのピクセルの霧因子ｆの値が抽出された臨界値より大きければ、そのピクセルに対するテクスチャーマッピングを行うと決定し、１１９ステップに進む。もし、臨界値より大きくなければ、１１８ステップで３次元グラフィックスデータレンダリング装置は、そのピクセルに対するテクスチャーマッピングを行わないと決定し、１２０ステップに進む。
【００７１】
１１９ステップで３次元グラフィックスデータレンダリング装置は、そのピクセルにメモリに保存されたテクスチャーをマッピングする。
【００７２】
１２０ステップで３次元グラフィックスデータレンダリング装置は、三角形の全ピクセルについて１１８及び１１９ステップが完了したならば、１２１ステップに進み、全ピクセルについて完了していなければ、既に１１８及び１１９ステップが完了したピクセル以外のいずれか一つのピクセルについて１１８及び１１９ステップを行うために１１８ステップに戻る。
【００７３】
１２１ステップで３次元グラフィックスデータレンダリング装置は、１１６、１１９ステップでテクスチャーがマッピングされたピクセルそれぞれのカラーｒ、ｇ、ｂの値に、そのピクセルそれぞれの透明度ａの値をブレンディングする。
【００７４】
１２２ステップで３次元グラフィックスデータレンダリング装置は、３次元グラフィックスデータが表す少なくとも一つ以上の三角形すべてについて１１２ないし１２１ステップが完了したならば終了し、三角形すべてについて完了していなければ、既に１１２ないし１２１ステップが完了した三角形以外のいずれか一つの三角形について１１２ないし１２１ステップを行うために１１１ステップに戻る。
【００７５】
一方、前述した本発明の実施形態はコンピュータで実行できるプログラムで作成でき、コンピュータで読み取り可能な記録媒体を利用して前記プログラムを動作させる汎用ディジタルコンピュータで具現できる。また、詳述した本発明の実施形態で使われたデータの構造は、コンピュータで読み取り可能な記録媒体にいろいろな手段を通じて記録されうる。
【００７６】
前記コンピュータで読み取り可能な記録媒体はマグネチック記録媒体（例えば、ロム、フロッピー（登録商標）ディスク、ハードディスクなど）、光学的判読媒体（例えば、ＣＤ−ＲＯＭ、ＤＶＤなど）及びキャリアウェーブ（例えば、インターネットを通じる伝送）のような記録媒体を含む。
【００７７】
これまで本発明についてその望ましい実施形態を中心に説明した。当業者ならば、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現されうるということを理解できるであろう。したがって、開示された実施形態は限定的な観点ではなく説明的な観点で考慮されねばならない。本発明の範囲は前述した説明ではなく特許請求の範囲に現れており、それと同等な範囲内にあるあらゆる差異点は本発明に含まれていると解釈されねばならない。
【産業上の利用可能性】
【００７８】
本発明は、３次元グラフィックスデータをレンダリングする機能が搭載されたモバイル端末、デスクトップＰＣなどに適用できる。
【図面の簡単な説明】
【００７９】
【図１】霧効果が適用された３次元グラフィックスデータのレンダリング画面を示す図である。
【図２】３次元映像の視点と霧が表現される地点間の距離による霧因子ｆ値の変化を示すグラフである。
【図３】図２に示すグラフに本発明の望ましい一実施形態による臨界値を表示した図である。
【図４】本発明の望ましい一実施形態によって頂点霧効果を考慮して３次元グラフィックスデータをレンダリングする装置の構成図である。
【図５】図４に示す頂点処理部４１の詳細構成図である。
【図６】図４に示すラスタライザ４２の詳細構成図である。
【図７】本発明の望ましい一実施形態によってピクセル霧効果を考慮して３次元グラフィックスデータをレンダリングする装置の構成図である。
【図８】図７に示す頂点処理部７１の詳細構成図である。
【図９】図７に示すラスタライザ７２の詳細構成図である。
【図１０】本発明の望ましい一実施形態によって頂点霧効果を考慮して３次元グラフィックスデータをレンダリングする方法を示すフローチャートである。
【図１１Ａ】本発明の望ましい一実施形態によってピクセル霧効果を考慮して３次元グラフィックスデータをレンダリングする方法のフローチャートである。
【図１１Ｂ】本発明の望ましい一実施形態によってピクセル霧効果を考慮して３次元グラフィックスデータをレンダリングする方法のフローチャートである。
【符号の説明】
【００８０】
４１、７１  頂点処理部
４２、７２  ラスタライザ
４３、７３  霧因子テーブル
４４、７４  フレームバッファ
５１、８１  変換部
５２、８２、９２  計算部
５３、９３  決定部
６１、９１  スキャン変換部
６２、９４  テクスチャーマッピング部
６３、９５  ブレンディング部
【図２】
2008130091.tif 000006
【図３】
2008130091.tif 000007
【図４】
2008130091.tif 000008
【図５】
2008130091.tif 000009
【図６】
2008130091.tif 000010
【図７】
2008130091.tif 000011
【図８】
2008130091.tif 000012
【図９】
2008130091.tif 000013
【図１０】
2008130091.tif 000014
【図１１Ａ】
2008130091.tif 000015
【図１１Ｂ】
2008130091.tif 000016
【図１】
2008130091.tif 000017