JP4170283B2 - 描画処理装置および描画処理方法 - Google Patents

描画処理装置および描画処理方法 Download PDF

Info

Publication number
JP4170283B2
JP4170283B2 JP2004318362A JP2004318362A JP4170283B2 JP 4170283 B2 JP4170283 B2 JP 4170283B2 JP 2004318362 A JP2004318362 A JP 2004318362A JP 2004318362 A JP2004318362 A JP 2004318362A JP 4170283 B2 JP4170283 B2 JP 4170283B2
Authority
JP
Japan
Prior art keywords
normal
normal vector
level
luminance value
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004318362A
Other languages
English (en)
Other versions
JP2006127412A (ja
Inventor
章男 大場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2004318362A priority Critical patent/JP4170283B2/ja
Priority to PCT/JP2005/013181 priority patent/WO2006048961A1/ja
Priority to EP05766471A priority patent/EP1816606B1/en
Priority to ES05766471T priority patent/ES2394046T3/es
Priority to US11/328,431 priority patent/US7692662B2/en
Publication of JP2006127412A publication Critical patent/JP2006127412A/ja
Application granted granted Critical
Publication of JP4170283B2 publication Critical patent/JP4170283B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Description

この発明はコンピュータグラフィックスにおける描画処理技術に関し、特に描画処理対象の表面に法線ベクトルを写像するための描画処理装置および描画処理方法に関する。
3次元コンピュータグラフィックスでは、一般的に3次元空間のオブジェクトを多数のポリゴンにより表現するポリゴンモデルが利用される。ポリゴンモデルの描画処理において、光源、視点位置、物体表面の反射率などを考慮してポリゴン表面に陰影をつけるシェーディングが行われる。また、写実性の高い画像を生成するために、ポリゴンモデルの表面にテクスチャ画像を貼り付けるテクスチャマッピングが行われる。
テクスチャマッピングにより生成される画像は、色に関する表現力を大幅に向上させることはできるが、オブジェクトの表面の凹凸を表現することはできない。オブジェクトの表面に凹凸を簡易に表現する方法として、テクスチャマッピングの考えを応用したバンプマッピングと呼ばれる方法がある。バンプマッピングでは、オブジェクトの表面にテクスチャの代わりに法線ベクトルをマッピングしてオブジェクトの表面に擬似的な法線ベクトルを生成する。こうして生成された疑似法線ベクトルがオブジェクトの表面の法線方向であると仮定してシェーディング処理を行、表面の輝度値を求め、陰影付けを行う。これによってオブジェクト表面上に擬似的に凹凸が表現される。
一方、テクスチャマッピングにおいて、テクスチャ画像のデータ量を少なくするために、テクスチャの各ピクセルにカラー値をもたせるのではなく、カラー値のインデックスをもたせておき、テクスチャマッピングの際にカラールックアップテーブルを参照して、実際のカラー値に変換するインデックスカラー方式がとられることがある。この方式では、あらかじめカラー値を定義した色見本をカラールックアップテーブルとして用意しておき、テクスチャの各ピクセルには、カラールックアップテーブルを参照するインデックス情報だけを格納する。たとえば、使用する色見本が256色の場合、テクスチャ画像の各ピクセルに8ビット分のインデックスを格納するだけでよいため、テクスチャ画像のデータ量を大幅に削減することができ、テクスチャマッピングの際に使用するメモリ量を節約することができる。
本出願人は、特許文献1において、テクスチャマッピングにおいて色変換に用いられるカラールックアップテーブルを法線ベクトルの参照テーブルとして利用したバンプマッピング手法を提案した。
特開2002−203255号公報
バンプマッピングによれば、オブジェクトの表面の微細なモデリングをすることなく、凹凸を簡易に表現することができるが、オブジェクト表面のピクセル毎に法線ベクトルをマッピングし、すべての法線ベクトルについて輝度計算をする必要があり、計算コストが大きく、処理に時間がかかる。また、ピクセル毎に法線ベクトルの値を格納するため、メモリ量も多くなる。そこで、特許文献1において提案したカラールックアップテーブルを利用したバンプマッピング手法では、法線ベクトルをより数の少ない基準法線ベクトルに量子化するため、計算コストを抑え、メモリ量も少なくすることができる。法線ベクトルの量子化により、処理速度とメモリ容量の面の問題を解決することができたが、画質面でさらに改善を図る余地があった。
本発明はこうした課題に鑑みてなされたものであり、その目的は、処理効率が良く、画質面でも良好なバンプマッピングによる描画処理技術を提供することにある。
上記課題を解決するために、本発明のある態様の描画処理装置は、法線ベクトルを要素としてもつ解像度の異なる複数の法線マップを解像度レベル別に格納した法線マップ記憶部と、描画対象物体の表面の描画詳細度に応じた解像度レベルの前記法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成する法線ベクトル写像部と、前記表面の法線方向を量子化した基準法線ベクトルの組であって、前記解像度レベル毎に異なるベクトル値の組み合わせとなるものを格納した解像度レベル別の複数の量子化テーブルと、前記描画詳細度に応じた解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された前記擬似法線ベクトルをその量子化テーブル内のいずれかの前記基準法線ベクトルに置換する法線ベクトル置換部とを含む。
この態様によると、法線ベクトルを格納した法線マップを解像度レベル毎に複数用意し、ポリゴン表面の描画詳細度に適した解像度レベルを選択して法線マップを描画対象物体の表面に写像することができる。また、解像度レベル毎に異なる量子化テーブルを用いて疑似法線ベクトルを量子化することにより、輝度計算の計算量を減らすとともに、量子化誤差を抑えて画質を向上させることができる。
前記解像度レベル毎に、前記量子化テーブルに格納された各基準法線ベクトルのインデックスと、前記描画対象物体の表面の法線方向がその基準法線ベクトルで与えられた場合の前記表面の輝度値とを対応づけて格納した解像度レベル別の複数のルックアップテーブルと、前記描画詳細度に応じた解像度レベルの前記ルックアップテーブルを参照して、前記表面上に形成された前記基準法線ベクトルに対する輝度値を取得する輝度値取得部とをさらに含んでもよい。
ルックアップテーブルを用いることにより、基準法線ベクトルの値を法線マップとして格納する必要がなくなり、処理に必要なメモリ容量を減らすことができる。また、解像度レベルによって異なるルックアップテーブルを用意し、描画対象物体の描画詳細度に応じた解像度レベルのルックアップテーブルに切り替えることで、描画対象物体の描画詳細度に合った画質で画像を生成することができる。
前記法線ベクトル写像部は、前記描画詳細度に応じた少なくとも2つの異なる解像度レベルの前記法線マップを選択して、それぞれの法線マップを前記表面に写像することにより、前記表面上に各解像度レベルの疑似法線ベクトルを生成し、前記法線ベクトル置換部は、前記少なくとも2つの異なる解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された各解像度レベルの前記擬似法線ベクトルを各解像度レベルの量子化テーブル内のいずれかの前記基準法線ベクトルに置換し、前記輝度値取得部は、前記少なくとも2つの異なる解像度レベルの前記ルックアップテーブルを参照して、前記表面上の各解像度レベルの前記基準法線ベクトルに対する輝度値を解像度レベル毎に取得し、取得された輝度値を前記少なくとも2つの異なる解像度レベル間で補間することにより、前記表面の最終的な輝度値を取得してもよい。
解像度レベル間で異なる量子化テーブルを用い、解像度レベル間で輝度値を補間することにより、疑似法線ベクトルの量子化誤差による影響を軽減し、画質を向上させることができる。
本発明の別の態様は、描画処理方法である。この方法は、法線ベクトルを要素としてもつ解像度の異なる複数の法線マップの内、描画対象物体の表面の描画詳細度に応じた解像度レベルの法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成するステップと、前記表面上に生成された前記擬似法線ベクトルに対して前記解像度レベルに応じた量子化を施し、前記疑似法線ベクトルを量子化された基準法線ベクトルに置換するステップと、前記表面の法線方向が前記表面上に形成された前記基準法線ベクトルであると仮定した場合の前記表面の輝度値を取得するステップとを含む。
本発明のさらに別の態様は、プログラムである。このプログラムは、法線ベクトルを要素としてもつ解像度の異なる複数の法線マップの内、描画対象物体の表面の描画詳細度に応じた解像度レベルの法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成するステップと、前記表面の法線方向を量子化した基準法線ベクトルの組であって、前記解像度レベル毎に異なるベクトル値の組み合わせとなるものを格納した解像度レベル別の複数の量子化テーブルの内、前記描画詳細度に応じた解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された前記擬似法線ベクトルをその量子化テーブル内のいずれかの前記基準法線ベクトルに置換するステップと、前記解像度レベル毎に、前記量子化テーブルに格納された各基準法線ベクトルのインデックスと、前記描画対象物体の表面の法線方向がその基準法線ベクトルで与えられた場合の前記表面の輝度値とを対応づけて格納した解像度レベル別の複数のルックアップテーブルの内、前記描画詳細度に応じた解像度レベルの前記ルックアップテーブルを参照して、前記表面上に形成された前記基準法線ベクトルに対する輝度値を取得するステップとをコンピュータに実行させる。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、バンプマッピングの処理効率を上げるとともに、バンプマッピングによる描画の画質を高めることができる。
図1は、実施の形態に係る描画処理装置100の構成図である。描画処理装置100は、3次元オブジェクトのモデル情報をもとに表示装置に表示するための描画データを生成するものであり、必要に応じて3次元オブジェクトの表面に擬似的な凹凸をもたせるためにバンプマッピング処理を行う。
ジオメトリ処理部102は、3次元オブジェクトのジオメトリ処理を行い、ポリゴンの形状やその座標位置、ポリゴンを描画する際の詳細度を示すLOD(Level of Detail)値などのポリゴン定義情報からなるディスプレイリストを生成する。バンプマッピングが行われるポリゴンについては、バンプマッピングの対象となることを示すデータが付加される。バンプマッピングを行うかどうかは、オブジェクトのモデリングの際にあらかじめ決めてもよく、描画処理の際に動的に決めてもよい。
バンプマッピング処理部106は、ジオメトリ処理部102からディスプレイリストを受け取り、バンプマッピングの対象となるポリゴンについて、ポリゴン表面に擬似的な凹凸をもたさせるためにバンプマッピング処理を行う。バンプマッピング処理は、ポリゴン表面に擬似的な凹凸をもたせるための法線ベクトルを画素要素としてもつテクスチャをあらかじめ用意し、そのテクスチャをテクスチャマッピングの方法にしたがってポリゴン表面にマッピングし、擬似的な法線ベクトルをポリゴン表面に生成し、ポリゴン表面の輝度値を取得することにより行われる。
描画処理部104は、描画データ記憶部124に設けられたフレームバッファ126に対して描画データの読み書きを行う。描画処理部104は、テクスチャをポリゴン面にマッピングしてポリゴン面の各ピクセルのRGB値を求め、バンプマッピング処理部106によりバンプマッピングがなされたポリゴンについては、求められたRGB値にバンプマッピング処理部106により取得された輝度値をブレンディングして陰影を付けて最終的なRGB値を決定し、フレームバッファ126に書き込む。
このようにしてフレームバッファ126に描画された画像データは、ビデオ出力に変換されて表示装置に入力され、バンプマッピングにより表面に凹凸が擬似的に表現されたオブジェクトの画像が表示される。
本実施の形態のバンプマッピング処理部106は、ポリゴン表面に生成された疑似法線ベクトルをベクトル量子化により基準法線ベクトルに置換し、基準法線ベクトルに対してのみ輝度計算を行う「量子化バンプマッピング」の手法を利用する。
さらに、本実施の形態のバンプマッピング処理部106は、解像度の異なる複数のテクスチャを用意し、ポリゴン表面の描画詳細度に応じた解像度レベルのテクスチャを選択して、ポリゴン表面にマッピングする「ミップマップ」の手法を利用する。
ミップマップでは、サイズの異なる複数のテクスチャを用意しておき、ポリゴンのLOD値に合った解像度のテクスチャを選択してマッピングする。一般に、テクスチャマッピングを行う際、ポリゴンのピクセル面積とテクスチャのサイズが大きく異なり、テクスチャを縮小してポリゴンに貼り付けることになる場合、描画結果にエイリアスが生じて、画質が著しく低下する。そこでミップマップでは、あらかじめ元のテクスチャの1/2、1/4、1/8、…といったサイズのテクスチャを用意しておき、たとえば、視点から遠いポリゴンほど解像度の低いテクスチャをマッピングする。これにより、通常のテクスチャマッピングよりも精密なちらつきの少ない画像表現が可能になる。
以下、バンプマッピング処理部106の構成を詳しく説明する。
法線ベクトルマッピング部108は、ジオメトリ処理部102により生成されたディスプレイリストに基づいて、バンプマッピングを行うポリゴンを特定し、特定されたポリゴンの表面に擬似的な凹凸をもたせるために法線ベクトルをマッピングする。
ポリゴン表面に擬似的な凹凸をもたせるための法線ベクトルのデータは、法線マップ記憶部116にテクスチャ118の形式で格納されている。テクスチャ118は、通常のテクスチャマッピングで利用される場合は、各ピクセルの色データを格納したものであるが、ここではピクセル毎に法線ベクトルの値を格納した法線マップ(バンプマップともいう)として利用される。法線マップは、2次元表面の凹凸を示す高さデータを微分処理して各ピクセルの法線方向を示す法線ベクトルを求めることにより得られる。
本実施の形態では、ミップマップ処理を行うため、テクスチャ118はミップマップの解像度レベル(以下、ミップマップレベルという)毎に複数用意され、ポリゴンのLOD値に応じてミップマップレベルが選択され、そのミップマップレベルのテクスチャ118がバンプマッピングに利用される。
法線ベクトルマッピング部108は、法線マップ記憶部116からポリゴンのLOD値に応じたミップマップレベルのテクスチャ118を読み出し、通常のテクスチャマッピングの方法によって、テクスチャ118に格納された法線ベクトルをポリゴン面に貼り付ける。これによりポリゴン面の本来の垂直方向を示す法線ベクトルに対してバンプマップによる揺らぎが加わり、ポリゴン表面上に擬似的な法線ベクトルが生成される。
法線ベクトル置換部110は、法線ベクトルマッピング部108によりポリゴン表面上に生成された疑似法線ベクトルに対してベクトル量子化の処理を施し、基準法線ベクトルに置換する。ベクトル量子化は、3次元オブジェクトの表面上で取りうる任意の疑似法線ベクトルに対して、所定の個数の基準法線ベクトルを代表ベクトルとして定めておき、与えられた疑似法線ベクトルをそれに最も近い基準法線ベクトルで近似することにより行われる。ここで、基準法線ベクトルの個数は、3次元オブジェクトの表面上に生成される疑似法線ベクトルの個数よりも少なく設定する。
基準法線ベクトルの組み合わせは、ミップマップレベル別にVQ(Vector Quantization)テーブル121の形で量子化ベクトル記憶部120に格納されている。VQテーブル121は、基準法線ベクトルのインデックスに基準法線ベクトルの座標値を対応づけたテーブルである。
VQテーブル121内の基準法線ベクトルの組み合わせは、たとえば、球面を256分割し、256面の多面体で近似したときの各分割面の垂直方向を示す256個の法線ベクトルから構成される。256個の基準法線ベクトルの選び方には任意性があり、球面を256分割するときの多面体の位相をずらせば、異なる256個の基準法線ベクトルが得られる。そこで、ミップマップレベル毎に異なる基準法線ベクトルの組み合わせを選択し、ミップマップレベル別にVQテーブル121を設ける。たとえば、ミップマップレベルがレベル0からレベル7までの8段階である場合、8種類のVQテーブル121が設けられる。ここでレベル0は最も解像度が高く、レベル1、2、…、7の順に解像度が低くなるとする。
図2は、ミップマップレベル0のVQテーブル121を説明する図である。基準法線ベクトルのインデックス1〜256の各々に対して、基準法線ベクトルの3次元座標値(x1,y1,z1)〜(x256,y256,z256)が対応づけられている。他のミップマップレベル1〜7についても同様に基準ベクトルの各インデックスに対して基準法線ベクトルの3次元座標値を対応したVQテーブル121が設定されるが、ミップマップレベルによって基準法線ベクトルの座標値は異なっている。ミップマップレベルによって異なる基準法線ベクトルの組み合わせを用いることにより、ベクトル量子化に伴う量子化誤差を吸収することが可能になる。
なお、ミップマップレベルによって基準法線ベクトルの個数を変えてもよい。たとえば、ミップマップレベル0のVQテーブル121は256個の基準法線ベクトルをもつが、ミップマップレベル1のVQテーブル121は128個、ミップマップレベル2のVQテーブル121は64個など、解像度が低くなるにつれ、基準法線ベクトルの個数を減らして、精度を落とすようにしてもよい。たとえば、遠くにあるオブジェクトや注目度の低いオブジェクトについては画質を落としてかまわないから、低い解像度レベルのVQテーブル121を選び、より少ない基準法線ベクトルを利用することで、画質を犠牲にして処理コストを下げ、近くにあるオブジェクトや注目度の高いオブジェクトについては、高い解像度レベルのVQテーブル121を選び、より多い基準法線ベクトルを利用することで、精細な凹凸表現により画質を高めるようにすることができる。
法線ベクトル置換部110は、ポリゴンのLOD値に対応したミップマップレベルを選択し、そのミップマップレベルのVQテーブル121を参照し、ポリゴン表面上に生成された疑似法線ベクトルをその疑似法線ベクトルに最も近い基準法線ベクトルに変換する。
量子化ベクトル記憶部120には、VQテーブル121内の基準法線ベクトルのインデックスに輝度値を対応づけて格納したカラールックアップテーブル(以下、CLUTと呼ぶ)122が記憶されている。オブジェクトの表面の法線方向がVQテーブル121内の基準法線ベクトルであるとした場合、その表面の輝度値は、光源の種類と位置を仮定してシェーディング処理を行うことにより算出することができる。CLUT122は、そのようにして計算された輝度値を基準法線ベクトルのインデックスに対応づけたテーブルである。VQテーブル121がミップマップレベル別に設けられたことに対応して、CLUT122もミップマップレベル別に設けられることになる。
図3は、ミップマップレベル0のCLUT122を説明する図である。基準法線ベクトルのインデックス1〜256に輝度値α1〜α256が対応づけられて格納されている。図2のミップマップレベル0のVQテーブル121内の基準法線ベクトルの座標値に基づいて、各基準法線ベクトルに対して輝度計算が行われ、得られた輝度値が基準法線ベクトルのインデックスに対応づけて格納されている。このCLUT122は、ミップマップレベル0の基準法線ベクトルのインデックスから対応する輝度値を取得するために参照される。他のミップマップレベル1〜7についても同様に各基準法線ベクトルに対する輝度値が計算され、インデックスと対応づけて格納される。
輝度値取得部112は、ポリゴンのLOD値に対応するミップマップレベルのCLUT122を参照し、ポリゴン表面に形成された基準法線ベクトルに対応する輝度値を取得する。輝度値取得部112は、バンプマッピングにより決定されたポリゴン表面の輝度値に関するデータを描画処理部104に与える。
ミップマップによるテクスチャマッピングを行う際、ミップマップレベルが離散的であるために、オブジェクト表面においてミップマップレベルが変わるとき、マップされるテクスチャの解像度が急に切り替わるため、画質が劣化することがある。また、テクスチャを貼り付けたオブジェクトが奥行き方向に移動すると、ミップマップレベルが奥行きに応じて切り替わり、貼り付けられるテクスチャの解像度が急に変わるため、オブジェクトの表面にちらつきが生じ、見づらくなることがある。
このような問題を回避するため、ミップマップでは、異なるミップマップレベルのテクスチャをミップマップレベル間で滑らかに補間して中間のテクスチャを作成するのが通常である。このように、ミップマップによるテクスチャマッピングでは、テクスチャの縦横の方向のピクセル値の線形補間だけでなく、ミップマップの解像度の階層レベル間の線形補間も行うトライリニアフィルタリングが利用される。
本実施の形態では、トライリニアフィルタリングによるミップマップ処理を量子化バンプマッピングに適用する。従来のバンプマッピングは、法線ベクトルを直接操作するものであったため、ミップマップレベル間の補間を行うためには、法線ベクトル同士を直接演算処理する必要があり、処理が複雑で扱いにくかった。しかしながら、量子化バンプマッピングは、量子化された基準法線ベクトルに輝度値を対応づけたCLUT122を利用する手法であるため、通常のテクスチャマッピングと構成が全く同じであり、ミップマップのようなテクスチャマップの関連技術をそのまま利用することができる。以下、トライリニアフィルタリングによるミップマップ処理を行う場合のバンプマッピング処理部106の動作を説明する。
バンプマッピング処理部106は、ポリゴンのLOD値を参照して、そのLOD値に対応するミップマップレベルを2つ選び、2つのミップマップレベルのテクスチャを用いてトライリニア補間を行う。
たとえばLOD値が0〜63までの値をとる場合、64段階のLOD値を8段階のミップマップレベル0〜7に対応させることになる。8の倍数のLOD値0、8、16、…、56をそれぞれミップマップレベル0、1、2、…、7に対応させるとすると、8の倍数でないLOD値は、2つの隣接するミップマップレベルの中間にあることになる。そこで、あるLOD値が与えられると、そのLOD値が中間に属することになる2つの隣接するミップマップレベルを選択する。
法線ベクトルマッピング部108は、ポリゴンのLOD値に応じた2つの隣接するミップマップレベルのテクスチャ118を選択し、それぞれのテクスチャ118をポリゴン表面にマッピングし、ポリゴン表面に2つのミップマップレベルの疑似法線ベクトルを生成する。
法線ベクトル置換部110は、ポリゴンのLOD値に応じた2つの隣接するミップマップレベルのVQテーブル121のそれぞれを用いて、ポリゴン表面に生成された各ミップマップレベルの疑似法線ベクトルを基準法線ベクトルに置換する。これによりポリゴン表面には2つの隣接するミップマップレベルの基準法線ベクトルが形成される。
輝度値取得部112は、ポリゴンのLOD値に応じた2つの隣接するミップマップレベルのCLUT122のそれぞれを用いて、ポリゴン表面に形成された各ミップマップレベルの基準法線ベクトルのインデックスに対応する輝度値を取得する。これにより、2つのミップマップレベルにおいてバンプマッピング先のピクセルの輝度値が取得されることになる。
輝度値取得部112は、さらに、2つのミップマップレベルの輝度値をミップマップレベル間で線形補間することにより、ポリゴンのLOD値に対応した最終的な輝度値を求める。たとえば、LOD値が3の場合、LOD値0がミップマップレベル0に、LOD値8がミップマップレベル1に対応するから、ミップマップレベル0で求めた輝度値とミップマップレベル1で求めた輝度値の間を3:5の比で内分することによって、LOD値3に対する輝度値を求める。
このようにミップマップレベル間で輝度値の補間を行うことにより、ミップマップレベルがオブジェクトの表面上で変化する場合やオブジェクトが奥行き方向に移動した場合の画質の劣化を抑えることができる。また、ミップマップレベルによって異なるVQテーブル121を利用してミップマップレベル間で補間を行うため、疑似法線ベクトルをベクトル量子化した際の量子化誤差による影響を軽減することができる。
図4は、以上の構成の描画処理装置100によるバンプマッピングによる描画処理手順を説明するフローチャートである。フローチャートの説明にあたって、図5および図6を適宜参照する。
バンプマッピング処理部106は、ポリゴン定義情報からなるディスプレイリストをジオメトリ処理部102から取得する(S10)。
バンプマッピング処理部106は、取得したディスプレイリストにバンプマッピングの対象となるポリゴンがあれば(S12のY)、バンプマッピング処理S14〜S22を行う。バンプマッピングの対象となるポリゴンが複数ある場合には、それらのポリゴンのすべてについてバンプマッピング処理を行う。バンプマッピングの対象となるポリゴンがない場合(S12のN)、バンプマッピング処理は行われず、通常の描画処理S24のみが行われる。
ポリゴンに対してバンプマッピングを行うかどうかは、ポリゴンのLOD値をもとに決定してもよい。たとえば、LOD値が比較的小さい場合、すなわち詳細度を上げて描画する必要がある場合は、バンプマッピングを行い、LOD値が比較的大きい場合、すなわち詳細度を下げて描画してもよい場合は、バンプマッピングを省略するようにしてもよい。
バンプマッピング処理部106は、ポリゴンのLOD値に合ったミップマップレベルを選択する(S14)。ミップマップレベル間の補間を行う場合は、LOD値が中間に属する2つの隣接するミップマップレベルが選択される。ミップマップレベル間の補間を行わない場合は、LOD値に最も近い1つのミップマップレベルが選択される。
法線ベクトルマッピング部108は、法線マップ記憶部116から該当するミップマップレベルのテクスチャ118を読み出し、テクスチャマッピングの方法によって、テクスチャ118に格納された法線ベクトルをポリゴン面にマッピングする(S16)。
図5(a)は、ピクセル単位で法線ベクトルがマッピングされたポリゴン面を説明する図である。この例では、ポリゴン面は、縦横6ピクセル、合計36ピクセルからなる四角形である。各ピクセルには、テクスチャ118に格納された法線ベクトルがマッピングされ、ポリゴン面の本来の法線ベクトルNと合成されることにより、各ピクセルの擬似的な法線ベクトルN'が決まる。同図は、ポリゴン面の各ピクセルの疑似法線ベクトルN'を表している。疑似法線ベクトルN'の具体的な算出方法を以下に示す。
ポリゴン面上の点P(x,y,z)をパラメータ座標(s,t)で表すと、点P=[x(s,t),y(s,t),z(s,t)]とかける。ポリゴン面のs方向、t方向の折線ベクトルは、P,Pであるから、点Pにおける法線ベクトルNはN=P×Pで与えられる。ここで、P,Pはそれぞれ点Pのs、tに関する偏微分、記号×はベクトルの外積を示す。
バンプマップの値をBとし、ポリゴン面上の点P(s,t)にマッピングされるバンプマップの点の座標(u,v)とすると、バンプマッピング後の点Pの疑似法線ベクトルN'は、次式のように計算される。
N'=N+D
D={B(N×P)−B(N×P)}/|N|
ここで、B、Bはバンプマップの値Bのu、v方向の偏微分である。
次に、法線ベクトル置換部110は、該当するミップマップレベルのVQテーブル121を参照して、ポリゴン表面に生成された疑似法線ベクトルN'を基準法線ベクトルに量子化し、その基準法線ベクトルのインデックスを各ピクセルに割り当てる(S18)。法線ベクトル置換部110は、疑似法線ベクトルN'をVQテーブル121内の最も近い基準法線ベクトルN に置き換えることで量子化を行う。最も近い基準法線ベクトルN は、疑似法線ベクトルN'とVQテーブル121内の各基準法線ベクトルNとの内積(N',N)を求め、その内積値を正規化した(N',N)/|N'|/|N|の値が最も小さいものを選ぶことにより、求められる。
図5(b)は、基準法線ベクトルN のインデックスが各ピクセルにマッピングされたポリゴン面を説明する図である。ポリゴン面の各ピクセルには基準法線ベクトルN のインデックスが割り付けられている。基準法線ベクトルN の座標値はVQテーブル121にもたせ、ポリゴン面には基準法線ベクトルN のインデックスの情報しか与えないため、ポリゴン情報を格納するためのメモリ容量を少なくすることができる。
次に、輝度値取得部112は、該当するミップマップレベルのCLUT122を参照し、ポリゴン面上に形成された基準法線ベクトルN のインデックスに対応する輝度値αを読み出し、各ピクセルにその輝度値αを割り付ける(S20)。
図5(c)は、各ピクセルに輝度値αがマッピングされたポリゴンを説明する図である。各ピクセルには基準法線ベクトルN のインデックスに対応した輝度値αが割り付けられている。
輝度値取得部112は、さらに必要に応じてミップマップレベル間で輝度値の補間を行う(S22)。2つのミップマップレベルが選択された場合、ステップS16〜S20において、2つのミップマップレベルのそれぞれについて、疑似法線ベクトルの生成、基準法線ベクトルへの変換、基準法線ベクトルのインデックスに対応する輝度値の取得がなされている。輝度値取得部112は、2つのミップマップレベルにおいて取得された輝度値をLOD値に関する内分比で線形補間して最終的な輝度値を算出する。
図6(a)〜(c)は、ミップマップ処理によるバンプマッピングを説明する図である。図6(a)は、ミップマップレベル0のテクスチャを用いたバンプマッピングの様子を示したものである。ポリゴン面130aには、ミップマップレベル0のテクスチャがマッピングされることにより、縦横6ピクセルの疑似法線ベクトルN'が生成されている。各ピクセルの疑似法線ベクトルN'は、ミップマップレベル0のVQテーブル121を用いて基準法線ベクトルN に量子化される。さらに、各ピクセルの基準法線ベクトルN はミップマップレベル0のCLUT122aを用いて輝度値αに変換され、各ピクセルに輝度値が割り付けられた輝度値マップ132aが生成される。
図6(b)は、ミップマップレベル1のテクスチャを用いたバンプマッピングの様子を示す。ポリゴン面130bには、ミップマップレベル1のテクスチャがマッピングされることにより、縦横4ピクセルの疑似法線ベクトルN'が生成されている。各ピクセルの疑似法線ベクトルN'は、ミップマップレベル1のVQテーブル121を用いて基準法線ベクトルN に量子化される。さらに、各ピクセルの基準法線ベクトルN はミップマップレベル1のCLUT122bを用いて輝度値αに変換され、各ピクセルに輝度値が割り付けられた輝度値マップ132bが生成される。
図6(c)は、ミップマップレベル2のテクスチャを用いたバンプマッピングの様子を示す。ポリゴン面130cには、ミップマップレベル2のテクスチャがマッピングされることにより、縦横2ピクセルの疑似法線ベクトルN'が生成されている。各ピクセルの疑似法線ベクトルN'は、ミップマップレベル2のVQテーブル121を用いて基準法線ベクトルN に量子化される。さらに、各ピクセルの基準法線ベクトルN はミップマップレベル2のCLUT122cを用いて輝度値αに変換され、各ピクセルに輝度値が割り付けられた輝度値マップ132cが生成される。
輝度値取得部112は、たとえば、ポリゴンのLOD値がミップマップレベル0とミップマップレベル1の中間にある場合、ミップマップレベル0の輝度値マップ132aとミップマップレベル1の輝度値マップ132bの間でLOD値に関する内分比で線形補間を行い、中間の輝度値マップを生成することにより、ポリゴン表面の輝度値を求める。
ミップマップレベルが異なると、疑似法線ベクトルN'の量子化に用いるVQテーブル121が異なり、同じ疑似法線ベクトルN'であっても量子化された基準法線ベクトルN の値は異なることになる。したがって、ミップマップレベルによって輝度値も少しずつ異なるものとなっている。ミップマップレベル間で輝度値の補間を行うことにすれば、疑似法線ベクトルN'を量子化したことによる量子化誤差を減らすことができる。複数のミップマップレベルを用いることで異なる基準法線ベクトルの組み合わせを利用したことになり、実質的に基準法線ベクトルの個数を増やして量子化粒度をより細かくしたことに相当するからである。
バンプマッピングの対象となるポリゴンについて、バンプマッピング処理が終了すると、描画処理部104は、ディスプレイリストに基づいて、ポリゴンの描画データをフレームバッファ126に書き込む(S24)。このとき、バンプマッピングにより輝度値がマッピングされているポリゴンでは、ポリゴンのテクスチャは、その輝度値が反映されたものとなり、輝度値に応じた陰影が付けられ、凹凸が擬似的に表現される。なお、描画処理部104は、ポリゴン面にテクスチャをマッピングしない場合は、バンプマッピング処理部106から得られた輝度値をそのままRGB値として直接フレームバッファ126に描画するように構成してもよい。
以上述べたように、本実施の形態によれば、ピクセル毎に法線ベクトルをマッピングしてバンプマッピングが行われているので、ポリゴンの画像は凹凸が精細に表現されたものとなる。また、量子化バンプマッピングの利用により、マッピングされる法線ベクトルの数よりも少ない基準法線ベクトルについてのみ輝度値を導出すればよいため、シェーディング処理の計算コストを大幅に減らすことができ、バンプマッピング処理を高速化することができる。また、基準法線ベクトルのインデックスをキーとして対応する輝度値を参照することのできるCLUTを用いることで、バンプマッピングの際に必要なメモリ容量を減らすことができる。
また、本実施の形態によれば、ミップマップレベル別の法線マップをあらかじめ用意し、ポリゴン表面のLOD値に応じたミップマップレベルの法線マップを選択してバンプマッピングを行うことにより、LOD値に応じた解像度でバンプマッピングによる画像を生成することができる。
さらには、本実施の形態によれば、トライリニアフィルタリングによるミップマップ処理を用いているため、ミップマップレベルの切り替わりによる量子化ノイズを抑えることができる。また異なるミップマップレベルにおいては異なる基準法線ベクトルの組み合わせを利用して疑似法線ベクトルを量子化するため、ミップマップレベル間でテクスチャの補間をすることにより、ベクトル量子化に伴う量子化誤差による画質の劣化を抑えることができる。量子化バンプマッピングにより計算量を減らして処理を高速化すると同時に、量子化誤差をミップマップレベル間の補間により吸収して、画質を向上させることができる。
このように、本実施の形態の量子化バンプマッピングによれば、マッピングする法線ベクトルを十分に精細に設定していても、バンプマッピング処理の負荷は、基準法線ベクトルの数により決まるために、画像の精細さを保ちつつ高速に処理を行うことができる。これにより、オブジェクトが移動したり、光源位置が変わったりしても、リアルタイムにバンプマッピング処理を行うことができる。
また、CLUTを利用した量子化バンプマッピングは、ミップマップ処理との整合性が良く、トライリニアフィルタリングによるミップマップ処理を量子化バンプマッピングに適用することにより、ベクトル量子化に伴う量子化誤差による影響を軽減し、バンプマッピングの画質を向上させることができる。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
上記の実施の形態では、ポリゴンの面単位でバンプマッピングを行ったが、より大きな単位、たとえばオブジェクト単位で、オブジェクト表面に対してバンプマッピングの処理を行ってもよい。
上記の実施の形態では、球面を256分割したときの分割面の法線方向を示す基準法線ベクトルの組み合わせを用意しておき、その基準法線ベクトルの組み合わせに対して輝度値をあらかじめ計算してCLUTに格納したが、基準法線ベクトルはバンプマッピングの際に動的に生成してもよい。バンプマップをポリゴン面にマッピングして疑似法線ベクトルを求める時点で、その都度、疑似法線ベクトルを量子化し、基準法線ベクトルを求め、その基準法線ベクトルに対して輝度計算してCLUTに格納するようにしてもよい。ポリゴン毎に量子化と輝度計算の手間がかかるが、ポリゴン毎に最適化した処理が可能になり、画質が向上する。
また、上記の実施の形態では、光源の種類や位置に変化がないとして、あらかじめ輝度計算した後のCLUTを利用して輝度値を取得したが、光源の種類や位置に変化がある場合は、その都度輝度計算をやり直して、CLUTを更新してもよい。
基準法線ベクトルの個数は、量子化バンプマッピングに求められる精度や最終的な画像の品質に対する要求などに応じて、オブジェクトのモデリング時に設計することができる。一般には、基準法線ベクトルの個数は、計算量と画質のトレードオフによって決まる。また、状況に応じて画質のニーズが変わる場合には、動的に基準法線ベクトルの個数を変更してもよい。また、LOD値に応じて基準法線ベクトルの個数を変えてもよい。たとえば、ポリゴンの描画詳細度が上がるにつれて、基準法線ベクトルの個数を増やすことにより、バンプマッピングの精度を調整することができる。
上記の説明では、2つのミップマップレベル間で輝度値の補間を行ったが、3つ以上のミップマップレベルで得られた輝度値を補間することにより、ポリゴンのLOD値に対応した最終的な輝度値を求めてもよい。またミップマップレベル間の補間機能は、オプションであるから、画質の要求や処理性能などの要因に応じてミップマップレベル間の補間を適宜省いてもよい。
実施の形態に係る描画処理装置の構成図である。 図1のVQテーブルを説明する図である。 図1のCLUTを説明する図である。 実施の形態に係るバンプマッピングによる描画処理手順を説明するフローチャートである。 バンプマッピングによりポリゴン表面に輝度値がマッピングされる様子を説明する図である。 ミップマップ処理によるバンプマッピングによりポリゴン表面に輝度値がマッピングされる様子を説明する図である。
符号の説明
100 描画処理装置、 102 ジオメトリ処理部、 104 描画処理部、 106 バンプマッピング処理部、 108 法線ベクトルマッピング部、 110 法線ベクトル置換部、 112 輝度値取得部、 116 法線マップ記憶部、 118 テクスチャ、 120 量子化ベクトル記憶部、 121 VQテーブル、 122 CLUT、 124 描画データ記憶部、 126 フレームバッファ。

Claims (9)

  1. 法線ベクトルを要素としてもつ解像度の異なる複数の法線マップを解像度レベル別に格納した法線マップ記憶部と、
    描画対象物体の表面の描画詳細度に応じた解像度レベルの前記法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成する法線ベクトル写像部と、
    前記表面の法線方向を量子化した基準法線ベクトルの組であって、前記解像度レベル毎に異なるベクトル値の組み合わせとなるものを格納した解像度レベル別の複数の量子化テーブルと、
    前記描画詳細度に応じた解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された前記擬似法線ベクトルをその量子化テーブル内のいずれかの前記基準法線ベクトルに置換する法線ベクトル置換部とを含むことを特徴とする描画処理装置。
  2. 前記量子化テーブルに格納される前記基準法線ベクトルの個数は、前記描画対象物体の前記表面上に生成される異なる前記疑似法線ベクトルの数よりも少なく設定されることを特徴とする請求項1に記載の描画処理装置。
  3. 前記解像度レベル毎に、前記量子化テーブルに格納された各基準法線ベクトルのインデックスと、前記描画対象物体の表面の法線方向がその基準法線ベクトルで与えられた場合の前記表面の輝度値とを対応づけて格納した解像度レベル別の複数のルックアップテーブルと、
    前記描画詳細度に応じた解像度レベルの前記ルックアップテーブルを参照して、前記表面上に形成された前記基準法線ベクトルに対する輝度値を取得する輝度値取得部とをさらに含むことを特徴とする請求項1または2に記載の描画処理装置。
  4. 前記法線ベクトル写像部は、前記描画詳細度に応じた少なくとも2つの異なる解像度レベルの前記法線マップを選択して、それぞれの法線マップを前記表面に写像することにより、前記表面上に各解像度レベルの疑似法線ベクトルを生成し、
    前記法線ベクトル置換部は、前記少なくとも2つの異なる解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された各解像度レベルの前記擬似法線ベクトルを各解像度レベルの量子化テーブル内のいずれかの前記基準法線ベクトルに置換し、
    前記輝度値取得部は、前記少なくとも2つの異なる解像度レベルの前記ルックアップテーブルを参照して、前記表面上の各解像度レベルの前記基準法線ベクトルに対する輝度値を解像度レベル毎に取得し、取得された輝度値を前記少なくとも2つの異なる解像度レベル間で補間することにより、前記表面の最終的な輝度値を取得することを特徴とする請求項3に記載の描画処理装置。
  5. 前記解像度レベル別の前記量子化テーブルに格納される前記基準法線ベクトルの個数は、前記解像度レベルが高いほど多くなるように設定されることを特徴とする請求項1から4のいずれかに記載の描画処理装置。
  6. 法線ベクトルを要素としてもつ解像度の異なる複数の法線マップの内、描画対象物体の表面の描画詳細度に応じた解像度レベルの法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成するステップと、
    前記表面上に生成された前記擬似法線ベクトルに対して前記解像度レベルに応じた量子化を施し、前記疑似法線ベクトルを量子化された基準法線ベクトルに置換するステップと、
    前記表面の法線方向が前記表面上に形成された前記基準法線ベクトルであると仮定した場合の前記表面の輝度値を取得するステップとを含むことを特徴とする描画処理方法。
  7. 前記輝度値を取得するステップは、量子化された各基準法線ベクトルのインデックスと、前記描画対象物体の表面の法線方向がその基準法線ベクトルで与えられた場合の前記表面の輝度値とを対応づけて格納したルックアップテーブルを参照して、前記表面上に形成された前記基準法線ベクトルに対する輝度値を取得することを特徴とする請求項6に記載の描画処理方法。
  8. 前記疑似法線ベクトルを生成するステップは、前記描画詳細度に応じた少なくとも2つの異なる解像度レベルの前記法線マップを選択して、それぞれの法線マップを前記表面に写像することにより、前記表面上に各解像度レベルの疑似法線ベクトルを生成し、
    前記基準法線ベクトルに置換するステップは、前記表面上に生成された前記少なくとも2つの異なる解像度レベルの前記擬似法線ベクトルに対して各解像度レベルで異なる量子化を施し、各解像度レベルの前記疑似法線ベクトルを前記基準法線ベクトルに置換し、
    前記輝度値を取得するステップは、前記表面の法線方向が前記表面上に生成された前記少なくとも2つの異なる解像度レベルの前記基準法線ベクトルであると仮定した場合の前記表面の輝度値を各解像度レベルについて取得し、取得された輝度値を前記少なくとも2つの異なる解像度レベル間で補間することにより、前記表面の最終的な輝度値を取得することを特徴とする請求項6または7に記載の描画処理方法。
  9. 法線ベクトルを要素としてもつ解像度の異なる複数の法線マップの内、描画対象物体の表面の描画詳細度に応じた解像度レベルの法線マップを前記表面に写像することにより、前記表面上に疑似法線ベクトルを生成するステップと、
    前記表面の法線方向を量子化した基準法線ベクトルの組であって、前記解像度レベル毎に異なるベクトル値の組み合わせとなるものを格納した解像度レベル別の複数の量子化テーブルの内、前記描画詳細度に応じた解像度レベルの前記量子化テーブルを参照して、前記表面上に生成された前記擬似法線ベクトルをその量子化テーブル内のいずれかの前記基準法線ベクトルに置換するステップと、
    前記解像度レベル毎に、前記量子化テーブルに格納された各基準法線ベクトルのインデックスと、前記描画対象物体の表面の法線方向がその基準法線ベクトルで与えられた場合の前記表面の輝度値とを対応づけて格納した解像度レベル別の複数のルックアップテーブルの内、前記描画詳細度に応じた解像度レベルの前記ルックアップテーブルを参照して、前記表面上に形成された前記基準法線ベクトルに対する輝度値を取得するステップとをコンピュータに実行させることを特徴とするプログラム。
JP2004318362A 2004-11-01 2004-11-01 描画処理装置および描画処理方法 Expired - Fee Related JP4170283B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004318362A JP4170283B2 (ja) 2004-11-01 2004-11-01 描画処理装置および描画処理方法
PCT/JP2005/013181 WO2006048961A1 (ja) 2004-11-01 2005-07-15 描画処理装置および描画処理方法
EP05766471A EP1816606B1 (en) 2004-11-01 2005-07-15 Drawing device and drawing method
ES05766471T ES2394046T3 (es) 2004-11-01 2005-07-15 Dispositivo de dibujo y método de dibujo
US11/328,431 US7692662B2 (en) 2004-11-01 2006-01-09 Graphic processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004318362A JP4170283B2 (ja) 2004-11-01 2004-11-01 描画処理装置および描画処理方法

Publications (2)

Publication Number Publication Date
JP2006127412A JP2006127412A (ja) 2006-05-18
JP4170283B2 true JP4170283B2 (ja) 2008-10-22

Family

ID=36318978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004318362A Expired - Fee Related JP4170283B2 (ja) 2004-11-01 2004-11-01 描画処理装置および描画処理方法

Country Status (5)

Country Link
US (1) US7692662B2 (ja)
EP (1) EP1816606B1 (ja)
JP (1) JP4170283B2 (ja)
ES (1) ES2394046T3 (ja)
WO (1) WO2006048961A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100229533B1 (ko) * 1996-08-30 1999-11-15 전주범 개선된 영상 복호화 시스템
KR100229795B1 (ko) * 1996-08-30 1999-11-15 전주범 개선된 영상 복호화 시스템

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4170283B2 (ja) * 2004-11-01 2008-10-22 株式会社ソニー・コンピュータエンタテインメント 描画処理装置および描画処理方法
US8300059B2 (en) * 2006-02-03 2012-10-30 Ati Technologies Ulc Method and apparatus for selecting a mip map level based on a min-axis value for texture mapping
US8314811B2 (en) * 2006-03-28 2012-11-20 Siemens Medical Solutions Usa, Inc. MIP-map for rendering of an anisotropic dataset
US8164594B2 (en) * 2006-05-23 2012-04-24 Panasonic Corporation Image processing device, image processing method, program, storage medium and integrated circuit
JP5147287B2 (ja) * 2006-05-23 2013-02-20 パナソニック株式会社 画像処理装置、画像処理方法、プログラム、記録媒体および集積回路
US8009903B2 (en) * 2006-06-29 2011-08-30 Panasonic Corporation Image processor, image processing method, storage medium, and integrated circuit that can adjust a degree of depth feeling of a displayed high-quality image
JP4031509B1 (ja) 2006-09-21 2008-01-09 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理装置の制御方法及びプログラム
JP4079378B2 (ja) * 2006-09-21 2008-04-23 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理装置の制御方法及びプログラム
US7948500B2 (en) 2007-06-07 2011-05-24 Nvidia Corporation Extrapolation of nonresident mipmap data using resident mipmap data
US7944453B1 (en) 2007-06-07 2011-05-17 Nvidia Corporation Extrapolation texture filtering for nonresident mipmaps
WO2011077623A1 (ja) * 2009-12-24 2011-06-30 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
JP5395273B2 (ja) * 2010-09-08 2014-01-22 パナソニック株式会社 立体画像処理装置、立体撮像装置、立体撮像方法およびプログラム
JP6049327B2 (ja) * 2011-08-11 2016-12-21 キヤノン株式会社 画像処理装置およびその制御方法
US9483868B1 (en) * 2014-06-30 2016-11-01 Kabam, Inc. Three-dimensional visual representations for mobile devices
US10922878B2 (en) * 2017-10-04 2021-02-16 Google Llc Lighting for inserted content
CN108062758B (zh) * 2018-02-27 2019-06-28 山东师范大学 一种基于图像分割算法的人群生成仿真方法及系统
US11120605B2 (en) 2020-01-09 2021-09-14 Samsung Electronics Co., Ltd. Approximate trilinear filtering

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5880736A (en) * 1997-02-28 1999-03-09 Silicon Graphics, Inc. Method system and computer program product for shading
US6525740B1 (en) * 1999-03-18 2003-02-25 Evans & Sutherland Computer Corporation System and method for antialiasing bump texture and bump mapping
US6580425B1 (en) * 2000-02-28 2003-06-17 Mitsubishi Electric Research Laboratories, Inc. Hierarchical data structures for surface elements
JP2002203255A (ja) 2000-10-24 2002-07-19 Sony Computer Entertainment Inc 画像処理方法、画像処理装置、コンピュータプログラム、半導体デバイス
JP2004252603A (ja) * 2003-02-18 2004-09-09 Canon Inc 三次元データ処理方法
JP4170283B2 (ja) * 2004-11-01 2008-10-22 株式会社ソニー・コンピュータエンタテインメント 描画処理装置および描画処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100229533B1 (ko) * 1996-08-30 1999-11-15 전주범 개선된 영상 복호화 시스템
KR100229795B1 (ko) * 1996-08-30 1999-11-15 전주범 개선된 영상 복호화 시스템

Also Published As

Publication number Publication date
US7692662B2 (en) 2010-04-06
EP1816606B1 (en) 2012-08-22
EP1816606A1 (en) 2007-08-08
ES2394046T3 (es) 2013-01-16
EP1816606A4 (en) 2009-11-18
JP2006127412A (ja) 2006-05-18
WO2006048961A1 (ja) 2006-05-11
US20060170681A1 (en) 2006-08-03

Similar Documents

Publication Publication Date Title
JP4170283B2 (ja) 描画処理装置および描画処理方法
US10867434B2 (en) Variable rate shading
US20050243101A1 (en) Image generation apparatus and image generation method
US8319789B2 (en) Image generation device and image generation method
US8526726B2 (en) Method and apparatus for compressing and decompressing data
US7348996B2 (en) Method of and system for pixel sampling
US6518974B2 (en) Pixel engine
JP5722761B2 (ja) 動画圧縮装置、画像処理装置、動画圧縮方法、画像処理方法、および動画圧縮ファイルのデータ構造
KR102444240B1 (ko) 텍스쳐 처리 방법 및 장치
JP4522996B2 (ja) テクスチャマッピングにおける適応リサンプリングのためのシステム
JP2006244426A (ja) テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法
US9111328B2 (en) Texture compression and decompression
US20070097145A1 (en) Method and system for supersampling rasterization of image data
JP4265791B2 (ja) 法線マップデータ生成方法、描画処理方法および描画処理装置
US6744440B1 (en) Image processing apparatus, recording medium, and program
US6522337B1 (en) Image processing apparatus, image processing method, and recording medium
US8212835B1 (en) Systems and methods for smooth transitions to bi-cubic magnification
JP2005332195A (ja) テクスチャユニット、画像描画装置、テクセル転送方法
JP2006127368A (ja) 奥行き値によるガンマ補正機能を備えたグラフィックス描画装置
US20030142107A1 (en) Pixel engine
KR100927131B1 (ko) 안티 알리어싱 방법 및 장치
JP2000322596A (ja) 画像生成装置及び記録媒体
JPH0636049A (ja) 図形のハイライト表示方法及びグラフィックス装置
JP2010263427A (ja) プログラム、情報記憶媒体及び画像生成システム

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080805

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080806

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4170283

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120815

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120815

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130815

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees