JPH09231402A - バンプマッピング方法及び画像生成装置 - Google Patents

バンプマッピング方法及び画像生成装置

Info

Publication number
JPH09231402A
JPH09231402A JP4017096A JP4017096A JPH09231402A JP H09231402 A JPH09231402 A JP H09231402A JP 4017096 A JP4017096 A JP 4017096A JP 4017096 A JP4017096 A JP 4017096A JP H09231402 A JPH09231402 A JP H09231402A
Authority
JP
Japan
Prior art keywords
normal vector
calculated
vector
bump mapping
partial differential
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.)
Withdrawn
Application number
JP4017096A
Other languages
English (en)
Inventor
Yuji Yamaguchi
裕司 山口
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 Corp
Original Assignee
Sony Corp
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 Corp filed Critical Sony Corp
Priority to JP4017096A priority Critical patent/JPH09231402A/ja
Publication of JPH09231402A publication Critical patent/JPH09231402A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 小規模のハードウェアでバンプマッピングを
高速に実行することができるバンプマッピング方法を提
供する。 【解決手段】 先ず、2つの変数u及びvを用いて定義
されるパッチを多角形の集合で近似して、上記パッチの
変数u及びv各々に対する偏微分を算出する(S1)。
次に、上記偏微分を用いて対象描画ピクセルに対する法
線ベクトルを算出する(S2)。次に、テクスチャ関数
を用いて上記法線ベクトルの変化分を算出する(S
3)。そして、上記法線ベクトルと上記法線ベクトルの
変化分を用いて、対象描画ピクセルのカラー値を算出す
るための変換後法線ベクトルを算出する(S4)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータを用
いた映像機器であるコンピュータグラフィックスシステ
ム、特殊効果装置、ビデオゲーム機等において、物体上
の小さな凹凸をシェージングによる陰影ずけにより表現
するためのバンプマッピング方法、及び上記バンプマッ
ピング方法を採用した画像生成装置装置に関するもので
ある。
【0002】
【従来の技術】例えば、コンピュータグラフィックスシ
ステムは、計算機とグラフィックス周辺装置により、画
像や映像を作成して表示するシステムであり、機械、電
気、建築等における設計支援のためのCADシステム、
化学、航空、制御等における反応や応答のシュミレーシ
ョン、教育、芸術、及びビデオゲーム等、多くの分野に
おいて活用されている。
【0003】コンピュータグラフィックスシステムとし
て、主として計算機の数値計算能力を活用して立体的な
画像を作成する画像生成装置を備えたシステム(以下、
3次元グラフィックスシステムと言う。)があり、この
3次元グラフィックスシステムは、計算機中にある立体
モデルを、回転、移動、拡大/縮小という座標変換を頻
繁に行って画面表示するシステムであり、2次元グラフ
ィックシステムに比べ、座標変換、透視変換、陰影処
理、及び隠線/隠面消去処理等、高度な技術を必要とす
るシステムである。
【0004】上述のような3次元グラフィックスシステ
ムの応用分野は、近年において、急激に拡大しており、
CADのみならず、映像制作やビデオゲーム等において
も広く利用されている。
【0005】このため、3次元グラフィックスシステム
が備える画像生成装置には、単に物体の3次元の形状を
2次元の画面上に表示するだけではなく、よりリアリテ
ィの高い画像を生成する能力が要求されている。
【0006】そこで、グラフィックスの表現力を向上さ
せた画像を得るために、上記画像生成装置では、テクス
チャマッピングと呼ばれる手法が採用されている。この
テクスチャマッピングとは、テクスチャソース画像とし
て別に用意された2次元画像(絵柄)、すなわちテクス
チャパターンを物体を構成する三角形や四角形等の基本
的な単位図形(ポリゴン)の表面に張り付ける技術であ
り、3次元グラフィックスシステムの中には、テクスチ
ャマッピングをハードウェアで高速に実行する画像生成
装置を備えるものもある。
【0007】しかし、上述したようなテクスチャマッピ
ングは、色に関する表現力を大幅に向上させることはで
きるが、テクスチャマッピングにより得られた画像は、
物体の表面が滑らかすぎてリアリティに欠けるという問
題があった。
【0008】そこで、この問題を解決するために、テク
スチャマッピングを発展させたバンプマッピングと呼ば
れる手法を採用した画像生成装置がある。このバンプマ
ッピングとは、法線ベクトルをマッピングして、物体上
の小さな凹凸をシェージングによる陰影ずけによって表
現することにより、物体表面上の不均質さや凹凸を疑似
的に表現するという技術である。
【0009】図5は、バンプマッピングの処理を示すフ
ローチャートである。以下、上記図5を用いて、バンプ
マッピングの処理について説明する。
【0010】例えば、物体が2つの変数u,vの多項式
で表される曲線でモデリングされている場合、先ず、ス
テップS101では、フレームメモリ上に描画するピク
セル(以下、描画ピクセルと言う。)に対応する物体上
の点Pにおける位置ベクトルPを、
【0011】
【数1】
【0012】なる式(1)により算出する。
【0013】そして、式(1)により得られた位置ベク
トルPの“u”及び“v”に対する偏微分Pu,Pv
を、
【0014】
【数2】
【0015】
【数3】
【0016】なる式(2)及び(3)により算出する。
【0017】ここで、式(2)及び(3)により得られ
た偏微分Pu,Pvは、物体上の点Pにおける接平面上
に存在する。
【0018】そこで、次のステップS102では、点P
における法線ベクトルNを、式(1)により得られた偏
微分Pu及びPvの外積により求める。すなわち、ステ
ップS102では、法線ベクトルNを、
【0019】
【数4】
【0020】なる式(4)により算出する。
【0021】次に、ステップS103では、まず、物体
の面上の凹凸(以下、バンプとも言う。)の高さを与え
る関数を“F(u,v)”とし、“F”の“u”及び
“v”に対する偏微分Fu及びFvをテクスチャとす
る。
【0022】そして、物体上の点Pにおける“u”及び
“v”の各値から対応するテクスチャの値を参照し、ス
テップS101で得られた偏微分Pu,Pvと、ステッ
プS102で得られた法線ベクトルNとを用いて、法線
ベクトルNの変化分Dを、
【0023】
【数5】
【0024】なる式(5)により求める。
【0025】尚、式(5)において、法線ベクトルN
が、 N = (Nx,Ny,Nz) であるとき、“|N|”は、
【0026】
【数6】
【0027】なる式(6)で与えられる。
【0028】次に、ステップS104では、ステップS
102で得られた法線ベクトルNと、ステップS103
で得られた法線ベクトルNの変化分Dとを、
【0029】
【数7】
【0030】なる式(7)に示すように、加算すること
により、バンプが付いた面の法線ベクトルNdを求め
る。
【0031】次に、ステップS105では、ステップS
104で得られた法線ベクトルNdを、
【0032】
【数8】
【0033】なる式(8)により正規化することによ
り、正規化法線ベクトルNnを求める。
【0034】尚、式(8)において、法線ベクトルNd
が、 Nd=(Ndx,Ndy,Ndz) であるとき、“|Nd|”は、
【0035】
【数9】
【0036】なる式(9)で与えられる。
【0037】次に、ステップS106では、ステップS
105で得られた正規化法線ベクトルNnを用いて、ラ
イティング計算を行い、対象描画ピクセルの色を決定す
る。
【0038】すなわち、ステップS106では、ライテ
ィング計算を、環境光(Ambient Light)のカラーI
a、照明のカラーIp、ポジションライト(Position L
ight)の減衰率fatt、環境反射係数(Ambient-refl
ection Coefficient)ka、拡散反射係数(Diffuse-re
flection Coefficient)kd、鏡面反射係数(Specular
-reflection Coefficient)ks、物体の拡散カラー(D
iffuse Color)Od、物体のスペキュラーカラー(Spec
ular Color)Os、法線ベクトルN、視線ベクトルV、
ライトに対する反射ベクトルR、ライトベクトルL、及
びスペキュラーのべき指数(Specular-reflection Expo
nent)nを持って、
【0039】
【数10】
【0040】なる式(10)により行うことにより、対
象描画ピクセルの色を決定する。
【0041】ここで、式(10)において、“λ”は、
各カラーコンポーネント毎に値を持つことを示す。
【0042】また、ライトに対する反射ベクトルRは、
【0043】
【数11】
【0044】なる式(11)で与えられる。
【0045】また、式(10)及び式(11)におい
て、法線ベクトルN、視線ベクトルV、ライトに対する
反射ベクトルR、及びライトベクトルLは、各々、正規
化されているものとする。
【0046】尚、上述したライティング計算について
は、“Computer Graphics principlesand practice(Fo
ly,VanDam他著)”や“ADDISON WESLEY”の文献等に記
載されているため、その詳細な説明は省略する。
【0047】次に、ステップS107では、ステップS
101〜ステップS106の各処理が全ての描画ピクセ
ルに対して行われたか否かを判断する。そして、全ての
描画ピクセルへの処理が終了するまで、ステップS10
1〜ステップS106の各処理を描画ピクセル毎に行
う。
【0048】ところで、上記図5に示したようなバンプ
マッピングの処理により得られた画像において、物体表
面の疑似的な凹凸の見え方は、バンプマッピングを施さ
れる物体の大きさに依存する。すなわち、上記バンプマ
ッピングの処理では、バンプマッピングを施される物体
を大きくしていくと、物体表面の凹凸が平坦化されてい
く。
【0049】しかし、3次元グラフィックスシステムの
応用分野によっては、物体表面の疑似的な凹凸の見え方
が物体の大きさに依存すると都合が悪い場合がある。
【0050】そこで、このような場合には、ステップS
103において、式(5)を、
【0051】
【数12】
【0052】なる式(12)に置き換えて、法線ベクト
ルNの変化分Dを求める。これにより、物体の大きさに
依存しないバンプマッピングを実現することができる。
【0053】尚、上述したバンプマッピングについて
は、“SIMULATION OF WRINCLED SURFACES(James F. Bl
inn著)”や“Proceed of SIGGRAPH ’78”の論文等に
記載されているため、その詳細な説明は省略する。
【0054】
【発明が解決しようとする課題】しかし、上述したよう
な従来のバンプマッピング方法では、ステップS101
で述べたように、描画ピクセルに対応する位置ベクトル
を描画ピクセル毎に求めると共に、上記位置ベクトルの
偏微分を描画ピクセル毎に求める必要があった。このた
め、上記バンプマッピング方法では、バンプマッピング
の処理を行う際の計算量が大きくなってしまっていた。
【0055】また、上記バンプマッピング方法では、ス
テップS102で述べたように、ステップS101で得
られた位置ベクトルの偏微分を用いて、法線ベクトルを
描画ピクセル毎に求める必要があった。このため、上記
バンプマッピング方法では、バンプマッピングの処理を
行う際の計算量が大きくなってしまっていた。
【0056】また、上記バンプマッピング方法では、ス
テップS103の式(5)又は式(12)に示したよう
に、描画ピクセル毎の法線ベクトルの変化分を算出する
際、ルートの計算、除算、及びベクトルの外積等の計算
が必要であった。このため、上記バンプマッピング方法
では、バンプマッピングの処理を行う際の計算量が大き
くなってしまっていた。
【0057】また、上記バンプマッピング方法では、ス
テップS106で述べたように、描画ピクセル毎のライ
ティング計算を行う際、法線ベクトル、視線ベクトル、
ライトベクトル、及びライトに対する反射ベクトルの正
規化が必要であり、且つ式(10)に示したように、べ
き乗の計算も必要であった。このため、上記バンプマッ
ピング方法では、バンプマッピングの処理を行う際の計
算量が大きくなってしまっていた。
【0058】したがって、上述のようなバンプマッピン
グをハードウェア化しようとした場合、ハードウェア規
模が非常に大きくなってしまうため、バンプマッピング
をハードウェアで実現することが困難であった。すなわ
ち、バンプマッピングを採用した従来の画像生成装置
は、バンプマッピングをハードウェアで実行することが
できなかった。
【0059】そこで、本発明は、上述の如き従来の実情
に鑑みてなされたものであり、次のような目的を有する
ものである。
【0060】即ち、本発明の目的は、小規模のハードウ
ェアでバンプマッピングを高速に実行することができる
バンプマッピング方法を提供することにある。
【0061】また、本発明の目的は、小規模のハードウ
ェアでバンプマッピングを高速に実行する画像生成装置
を提供することにある。
【0062】
【課題を解決するための手段】上述の課題を解決するた
めに、本発明に係るバンプマッピング方法は、2つの変
数u及びvを用いて定義されるパッチを描画する際に、
対象描画ピクセルに対する法線ベクトルをテクスチャ関
数により変換し、変換して得られた変換後法線ベクトル
を用いて対象描画ピクセルのカラー値を算出するバンプ
マッピング方法であって、先ず、上記パッチを多角形の
集合で近似する。次に、上記パッチの変数u及びv各々
に対する偏微分を算出する。次に、上記偏微分を用いて
対象描画ピクセルに対する法線ベクトルを算出する。次
に、テクスチャ関数を用いて上記法線ベクトルの変化分
を算出する。そして、上記法線ベクトルと上記法線ベク
トルの変化分を用いて上記変換後法線ベクトルを算出す
ることを特徴とする。
【0063】また、本発明に係るバンプマッピング方法
は、上記偏微分は多角形内部で一定であると近似して、
多角形の各頂点における変数u及びvの値と座標値から
上記偏微分を算出することを特徴とする。
【0064】また、本発明に係るバンプマッピング方法
は、上記法線ベクトルを多角形の各頂点における法線ベ
クトルから算出することを特徴とする。
【0065】また、本発明に係るバンプマッピング方法
は、上記変数uに対する偏微分と上記変数vに対する偏
微分が直交していると近似して、上記法線ベクトルの変
化分を算出することを特徴とする。
【0066】また、本発明に係るバンプマッピング方法
は、上記変数uに対する偏微分と上記変数vに対する偏
微分の外積により得られる多角形内部で一定の法線ベク
トルにより、上記法線ベクトルの変化分を算出すること
を特徴とする。
【0067】また、本発明に係るバンプマッピング方法
は、ライティング計算における拡散反射に関わる項を予
め算出し、その算出結果を拡散反射テーブルに格納す
る。また、ライティング計算における鏡面反射に関わる
項を予め算出し、その算出結果を鏡面反射テーブルに格
納する。そして、上記変換後法線ベクトルで上記拡散反
射テーブルを参照し、視線に対する反射ベクトルで上記
鏡面反射テーブルを参照して上記カラー値を算出するこ
とを特徴とする。
【0068】上述の課題を解決するために、本発明に係
る画像生成装置は、2つの変数u及びvを用いて定義さ
れるパッチを描画する際に、対象描画ピクセルに対する
法線ベクトルをテクスチャ関数により変換し、変換して
得られた変換後法線ベクトルを用いて対象描画ピクセル
のカラー値を算出するバンプマッピング方法を採用した
画像生成装置であって、上記パッチを多角形の集合で近
似して上記パッチの変数u及びv各々に対する偏微分を
算出する偏微分算出手段と、上記偏微分算出手段で得ら
れた偏微分を用いて対象描画ピクセルに対する法線ベク
トルを算出する法線算出手段と、上記法線算出手段で得
られた法線ベクトルの変化分をテクスチャ関数を用いて
算出する変化分算出手段と、上記法線算出手段で得られ
た法線ベクトルと上記変化分算出手段で得られた法線ベ
クトルの変化分を用いて上記変換後法線ベクトルを算出
する変換後法線算出手段とを備えることを特徴とする。
【0069】また、本発明に係る画像生成装置は、上記
偏微分算出手段は、上記偏微分は多角形内部で一定であ
ると近似して、多角形の各頂点における変数u及びvの
値と座標値から上記偏微分を算出することを特徴とす
る。
【0070】また、本発明に係る画像生成装置は、上記
法線算出手段は、上記法線ベクトルを多角形の各頂点に
おける法線ベクトルから算出することを特徴とする。
【0071】また、本発明に係る画像生成装置は、上記
変化分算出手段は、上記変数uに対する偏微分と上記変
数vに対する偏微分が直交していると近似して、上記法
線ベクトルの変化分を算出することを特徴とする。
【0072】また、本発明に係る画像生成装置は、上記
変化分算出手段は、上記変数uに対する偏微分と上記変
数vに対する偏微分の外積により得られる多角形内部で
一定の法線ベクトルにより、上記法線ベクトルの変化分
を算出することを特徴とする。
【0073】また、本発明に係る画像生成装置は、予め
算出されたライティング計算における拡散反射に関わる
項が格納される拡散反射テーブルと、予め算出されたラ
イティング計算における鏡面反射に関わる項が格納され
る鏡面反射テーブルと、上記変換後法線算出手段で得ら
れた変換後法線ベクトルで上記拡散反射テーブルを参照
し、視線に対する反射ベクトルで上記鏡面反射テーブル
を参照して上記カラー値を算出するカラー値算出手段と
を備えることを特徴とする。
【0074】
【発明の実施の形態】以下、発明の実施の形態につい
て、図面を参照して詳細に説明する。
【0075】まず、本発明に係るバンプマッピング方法
について説明する。
【0076】例えば、2つの変数u,vを用いて定義さ
れるパッチに分割された物体を描画する際、先ず、上記
パッチを多角形の集合で近似する。このとき、多角形の
各頂点のモデリング座標系における座標値と法線ベクト
ル、及び(u,v)座標を頂点データとする。
【0077】次に、上記頂点データを多角形単位に座標
変換することにより、プリミティブデータを生成する。
そして、生成したプリミティブデータに対してバンプマ
ッピングの処理を行う。
【0078】図1は、上記バンプマッピングの処理を示
すフローチャートであり、上記バンプマッピングの処理
は、本発明に係るバンプマッピング方法を適用したもの
である。
【0079】以下、上記図1を用いて、上記バンプマッ
ピングの処理について、具体的に説明する。
【0080】例えば、三角形のプリミティブデータに対
してバンプマッピングの処理を行う場合、先ず、ステッ
プS1では、上記プリミティブデータを用いて、ステッ
プS2におけるベクトルの補間処理、及びステップS3
における法線ベクトルの変化分の算出処理に必要なパラ
メータを求める。
【0081】ステップS1の処理について具体的に説明
すると、まず、三角形の各頂点のワールド座標系におけ
る座標P1,P2,P3が、
【0082】
【数13】
【0083】
【数14】
【0084】
【数15】
【0085】なる式(13)〜(15)、ワールド座標
系における法線ベクトルN1,N2,N3が、
【0086】
【数16】
【0087】
【数17】
【0088】
【数18】
【0089】なる式(16)〜(18)、(u,v)の
パラメータT1,T2,T3が、
【0090】
【数19】
【0091】
【数20】
【0092】
【数21】
【0093】なる式(19)〜(21)、クリップ座標
系における座標Pc1,Pc2,Pc3が、
【0094】
【数22】
【0095】
【数23】
【0096】
【数24】
【0097】なる式(22)〜(24)で各々与えら
れ、位置ベクトルの“u”及び“v”に対する偏微分P
u及びPvが、三角形内部で一定であると近似する。こ
のとき、三角形の平面上の点(X,Y,Z)は、
【0098】
【数25】
【0099】
【数26】
【0100】
【数27】
【0101】なる式(25)〜(27)で表される。
【0102】また、位置ベクトルの“u”及び“v”に
対する偏微分Pu及びPvは、
【0103】
【数28】
【0104】
【数29】
【0105】なる式(28)、(29)で表される。
【0106】したがって、偏微分Pu及びPvは、式
(25)〜(27)の連立方程式に式(13)〜(1
5)と、式(19)〜(21)とを代入することにより
算出することができる。
【0107】すなわち、このステップS1では、ステッ
プS3で用いる偏微分Pu及びPvを、
【0108】
【数30】
【0109】
【数31】
【0110】
【数32】
【0111】
【数33】
【0112】
【数34】
【0113】
【数35】
【0114】なる式(30)〜(35)により算出す
る。
【0115】また、ステップS1では、式(30)〜
(35)により得られた偏微分Pu及びPvを用いて、
ステップS3で用いるパラメータGu及びGvを算出す
る。
【0116】ここで、パラメータGu及びGvを算出す
る際、物体の大きさに依存するバンプマッピングを行う
場合には、
【0117】
【数36】
【0118】
【数37】
【0119】なる式(36)及び(37)を用いる。
【0120】また、物体の大きさに依存しないバンプマ
ッピングを行う場合には、
【0121】
【数38】
【0122】
【数39】
【0123】なる式(38)及び(39)を用いる。
【0124】また、ステップS1では、ステップS2で
用いるパラメータを求める際に、まず、ワールド座標系
における視点の座標と、式(13)〜(15)で与えら
れるワールド座標系における三角形の各頂点の座標とか
ら得られる各頂点における視線ベクトルE1,E2,E
3が、
【0125】
【数40】
【0126】
【数41】
【0127】
【数42】
【0128】なる式(40)〜(42)、クリップ座標
系における座標が(x,y,z,w)である点における
(u,v)パラメータMが、
【0129】
【数43】
【0130】なる式(43)、法線ベクトルNが、
【0131】
【数44】
【0132】なる式(44)、視線ベクトルEが、
【0133】
【数45】
【0134】なる式(45)で与えられるものとする。
【0135】また、(u,v)パラメータM、法線ベク
トルN、及び視線ベクトルEを各々“w”で割ったもの
を“Ms”、“Ns”、及び“Es”で表すものとす
る。すなわち、“Ms”、“Ns”、及び“Es”が、
【0136】
【数46】
【0137】
【数47】
【0138】
【数48】
【0139】なる式(46)〜(48)で与えられるも
のとする。
【0140】したがって、ステップS1では、ステップ
S2で用いるパラメータ、すなわち三角形の描画開始点
における“Ms”、“Ns”、及び“Es”の各値と、
“Ms”、“Ns”、及び“Es”の三角形の描画開始
辺方向の増分と走査線方向の増分とを、式(16)〜
(24)、及び式(40)〜(42)を用いて算出す
る。
【0141】尚、ステップS2で用いるパラメータの算
出方法は、三角形の描画処理におけるカラー値やZ座標
の値に対して行われる算出方法と同様であるため、その
詳細な説明は省略する。
【0142】次に、ステップS2では、ステップS1で
得られたパラメータを用いて、テクスチャ座標、法線ベ
クトル、及び視線ベクトルの補間処理を行う。
【0143】ステップS2の処理について具体的に説明
すると、先ず、ステップS1で得られた三角形の描画開
始点における“Ms”、“Ns”、及び“Es”の各値
と、“Ms”、“Ns”、及び“Es”の三角形の描画
開始辺方向の増分と走査線方向の増分とを用いて線形補
間することにより、三角形内部の各描画ピクセル毎のテ
クスチャ座標Mk、法線ベクトルNk、及び視線ベクト
ルEkを、
【0144】
【数49】
【0145】
【数50】
【0146】
【数51】
【0147】なる式(49)〜(51)により算出す
る。
【0148】尚、線形補間の処理については、三角形の
描画処理におけるカラー値やZ座標の値に対して行われ
る処理と同様であるため、その詳細な説明は省略する。
【0149】次に、式(49)により得られたテクスチ
ャ座標Mkを用いて、ステップS3においてテクスチャ
を参照する際に必要なパラメータ(s,t)を、
【0150】
【数52】
【0151】なる式(52)により算出する。
【0152】また、式(50)により得られた法線ベク
トルNkを用いて、ステップS4における法線ベクトル
dの算出に必要なベクトルnを、
【0153】
【数53】
【0154】なる式(53)により算出する。
【0155】次に、ステップS3では、ステップS1で
得られた偏微分Pu,Pv、及びパラメータGu,Gv
と、ステップS2で得られたパラメータ(s,t)を用
いて、法線ベクトルNの変化分Dを求める。
【0156】ステップS3の処理について具体的に説明
すると、まず、物体の大きさに依存するバンプマッピン
グでは、上述したように、法線ベクトルNの変化分D
は、式(5)により求められる。
【0157】そこで、ここでは、偏微分Pu及びPv
は、互いに直交しいると近似する。したがって、偏微分
Pu及びPvは、
【0158】
【数54】
【0159】
【数55】
【0160】なる式(54)及び(55)で与えられ
る。
【0161】また、法線ベクトルNとしては、三角形内
で一定の値を使用する。したがって、法線ベクトルN
は、
【0162】
【数56】
【0163】なる式(56)で与えられる。
【0164】これらの式(54)〜(56)に示したよ
うにして、近似を行うことにより、式(5)は、
【0165】
【数57】
【0166】なる式(57)に示すように、簡略化する
ことができる。
【0167】一方、物体の大きさに依存しないバンプマ
ッピングでは、上述したように、法線ベクトルNの変化
分Dは、式(12)により求められる。
【0168】そこで、ここでは、物体の大きさに依存す
るバンプマッピングの場合と同様にして、式(54)〜
(56)に示したようにして、近似することにより、式
(12)は、
【0169】
【数58】
【0170】なる式(58)に示すように、簡略化する
ことができる。
【0171】ここで、式(57)及び(58)におい
て、“Fu”と“Fu”は、ステップS2の式(52)
で得られたパラメータ(s,t)を用いて、対象描画ピ
クセルに対応するテクスチャを参照することにより求め
る。
【0172】したがって、ステップS3では、上述のよ
うにして得られた“Fu”と“Fu”、及びステップS
1の式(36)〜(39)で得られた三角形内で一定の
パラメータGu,Gvを用いて、ベクトルdを、
【0173】
【数59】
【0174】なる式(59)により算出する。
【0175】次に、ステップS4では、ステップS2で
得られた法線ベクトルNと、ステップS3で得られた法
線ベクトルNの変化分Dとを用いて、バンプが付いた面
の法線ベクトルNdを求める。
【0176】ステップS4の処理について具体的に説明
すると、まず、ステップS2で得られたベクトルnと、
ステップS3で得られたベクトルdとを用いた場合、バ
ンプが付いた面の法線ベクトルNdは、
【0177】
【数60】
【0178】なる式(60)に示すように、近似するこ
とができる。
【0179】ここで、式(60)において、ベクトルn
の大きさが「1」であると近似する。これにより、式
(60)は、
【0180】
【数61】
【0181】なる式(61)に示すように、さらに、簡
略化することができる。
【0182】また、ステップS5のライティング計算に
おいては、詳細は後述するが、法線ベクトルNdの方向
のみを使用し、ベクトルの大きさを無視することができ
る。
【0183】したがって、ステップS4では、法線ベク
トルNdを、
【0184】
【数62】
【0185】なる式(62)により算出する。
【0186】次に、ステップS5では、ステップS2で
得られた視線ベクトルEkと、ステップS4で得られた
法線ベクトルNdとを用いて、ライティング計算を行
い、対象描画ピクセルの色を決定する。
【0187】ステップS5で行うライティング計算につ
いて具体的に説明すると、まず、一般的に、ライティン
グ計算は、上述した式(10)により行われる。
【0188】ここで、視線に対する反射ベクトルR
dは、
【0189】
【数63】
【0190】なる式(63)で与えられ、式(63)に
おいて、“N”は法線ベクトルであり、“V”は視線ベ
クトルである。
【0191】また、図2に示すように、反射ベクトルR
dとライトベクトルLの成す角度(=α)は、視線ベク
トルVとライトに対する反射ベクトルRの成す角度(=
α)に等しい。
【0192】したがって、視線ベクトルV、ライトに対
する反射ベクトルR、反射ベクトルRd、及びライトベ
クトルLの関係は、
【0193】
【数64】
【0194】なる式64により表される。
【0195】この式(64)により、式(10)は、
【0196】
【数65】
【0197】なる式(65)に書き換えることができ
る。
【0198】ここで、ライトベクトルLは、平行光源の
場合には、光源毎に一定であるが、点光源の場合には、
物体上の位置に依存する。
【0199】そこで、点光源においては、描画点のワー
ルド座標に関わらず、物体中心と光源を結ぶベクトルで
近似し、式(65)において、
【0200】
【数66】
【0201】なる式(66)で表される拡散反射の項を
求めるための係数(以下、拡散反射係数と言う。)と、
【0202】
【数67】
【0203】なる式(67)で表される鏡面反射の項を
求めるための係数(以下、鏡面反射係数と言う。)とを
予め算出する。そして、拡散反射係数用のテーブル(以
下、拡散反射テーブルと言う。)、及び鏡面反射係数用
のテーブル(以下、鏡面反射テーブルと言う。)に、式
(66)及び(67)により得られた各係数を対応する
テーブルに各々格納する。
【0204】以下、拡散反射テーブル及び鏡面反射テー
ブルの作成方法及び参照方法について、具体的に説明す
る。
【0205】まず、拡散反射テーブル及び鏡面反射テー
ブルは、図3に示すような立方体200の各面に対応す
る2次元配列[i,j]として定義する。また、各2次
元配列[i,j]の幅と高さの各サイズSIZEが、
【0206】
【数68】
【0207】なる式(68)で与えられるものとする。
【0208】このとき、2次元配列[i,j]の要素
と、立方体の各面のインデックスI(=(Ix,I
y))との対応は、
【0209】
【数69】
【0210】
【数70】
【0211】なる式(69)及び(70)で与えられ
る。
【0212】そこで、先ず、インデックスI(=(I
x,Iy))で与えられる点と、立方体200の中心O
を結ぶベクトルを正規化する。次に、正規化したベクト
ルを、式(66)及び(67)における法線ベクトルN
及び反射ベクトルRdとして、立方体200の各面に対
する2次元配列[i,j]の全要素について算出する。
そして、その算出結果を、拡散反射テーブル及び鏡面反
射テーブルに各々格納する。
【0213】上述のようにして予め作成した拡散反射テ
ーブル及び鏡面反射テーブルを参照する際には、ベクト
ル方向の線分と、立方体200との交点を求め、求めた
交点の座標値からインデックスI(=(Ix,Iy))
を求める。
【0214】すなわち、ベクトルのメジャー軸で立方体
200の面を選択し、マイナー軸の値をメジャー軸の値
で割ることにより、インデックスI(=(Ix,I
y))を求める。
【0215】例えば、ベクトルが、
【0216】
【数71】
【0217】なる式(71)により表される場合には、
−X面を選択する。したがって、上記図3において、−
X面を選択した場合、インデックスI(=(Ix,I
y))は、
【0218】
【数72】
【0219】なる式(72)により算出される。
【0220】上述のように、予め作成した拡散反射テー
ブル及び鏡面反射テーブルを参照する際には、ベクトル
の大きさは無関係であり、正規化する必要もない。
【0221】したがって、ステップS5では、ステップ
S4で得られた正規化されていない法線ベクトルNd
用いて、拡散反射テーブルを参照することにより得られ
た拡散反射係数Dcと、法線ベクトルNdとステップS
2で得られた正規化されていない視線ベクトルEkを式
(63)に代入して得られた視線に対する反射ベクトル
dを用いて、鏡面反射テーブルを参照することにより
得られた鏡面反射係数Scとを用いて、対象描画ピクセ
ルの色Iλを、
【0222】
【数73】
【0223】なる式(73)により算出する。
【0224】ここで、式(73)において、“Aλ”、
“Kdλ”、及び“Ksλ”は、各々、
【0225】
【数74】
【0226】
【数75】
【0227】
【数76】
【0228】なる式(74)〜(76)により表され、
描画している物体に固有の値である。
【0229】次に、ステップS6では、ステップS2〜
ステップS5の各処理が全ての描画ピクセルに対して行
われたか否かを判断し、全ての描画ピクセルへの処理が
終了するまで、ステップS2〜ステップS5の各処理を
描画ピクセル毎に行う。そして、全ての描画ピクセルへ
の処理が終了した場合に、次のステップS7の処理に進
む。
【0230】ステップS7では、ステップS1〜ステッ
プS5の各処理が描画する物体を構成する全ての三角形
に対して行われたか否かを判断し、全ての三角形への処
理が終了するまで、ステップS1〜ステップS5の各処
理を三角形毎に行う。そして、全ての三角形への処理が
終了した場合に、本バンプマッピングの処理を終了とす
る。
【0231】上述のように、上記図1に示したバンプマ
ッピング方法では、描画する物体を三角形等の多角形の
集合に近似すると共に、位置ベクトルの偏微分が多角形
内部で一定であると近似するため、描画ピクセル毎に位
置ベクトルを算出する必要はなく、1個の多角形に対し
て1回のみ、位置ベクトルの偏微分を算出すればよい。
したがって、上記バンプマッピング方法は、バンプマッ
ピングを行う際の計算量を削減することができる。
【0232】また、上記バンプマッピング方法では、バ
ンプが付いた面の法線ベクトルを算出する際に必要なベ
クトルの算出を描画ピクセル毎に線形補間と式(53)
により行い、テクスチャを参照する際に必要なパラメー
タの算出を式(52)により行うが、式(52)及び
(53)では、“1/Q”を求めているため、式(5
3)の算出処理は、3回の乗算で行うことができる。ま
た、式(53)により得られたベクトルを用いて上記法
線ベクトルを算出する際に、位置ベクトルの偏微分が多
角形内部で一定であると近似し、多角形の各頂点におけ
る“u”及び“v”の各値と座標値から上記法線ベクト
ルを算出するため、描画ピクセル毎に位置ベクトルの偏
微分を算出する必要はなく、1個の多角形に対して1回
のみ位置ベクトルの偏微分を算出すればよい。したがっ
て、上記バンプマッピング方法は、バンプマッピングを
行う際の計算量を削減することができる。
【0233】また、上記バンプマッピング方法では、変
換前の法線ベクトルを多角形の各頂点における法線ベク
トルの線形補間により算出し、法線ベクトルの変化分を
求める際には、位置ベクトルの偏微分が互いに直交して
いると近似し、法線ベクトルとして式(56)で与えら
れる多角形内で一定の値を使用しているため、法線ベク
トルの変化分の算出を式(59)に示したような簡略化
した式で行うことができる。すなわち、法線ベクトルの
変化分の算出処理は、従来のバンプマッピング方法で
は、式(5)に示したように、8回の加算処理、3回の
減算処理、21回の乗算処理、1回の除算処理、及び1
回のルート計算処理が必要であるが、上記図1に示した
バンプマッピング方法では、式(59)に示したよう
に、3回の加算処理、及び6回の乗算処理のみで行うこ
とができる。したがって、上記バンプマッピング方法
は、画質を落とすことなく、バンプマッピングを行う際
の計算量を大幅に削減することができる。
【0234】また、上記バンプマッピング方法では、ラ
イティング計算処理において、式(66)の算出処理を
予め行うことにより作成した立方体の各面に対応する2
次元配列として定義した拡散反射テーブルと、式(6
7)の算出処理を予め行うことにより作成した立方体の
各面に対応する2次元配列として定義した鏡面反射テー
ブルとを用いて、バンプが付いた面の法線ベクトルで拡
散反射テーブルを参照し、視線に対する反射ベクトルで
鏡面反射テーブルを参照することにより、対象描画ピク
セルのカラー値を算出するため、ベクトルの正規化やべ
き乗の計算処理を行う必要がない。したがって、上記バ
ンプマッピング方法は、バンプマッピングを行う際の計
算量を削減することができる。
【0235】上述のことにより、上記図1に示したバン
プマッピング方法は、従来と比べ、バンプマッピングの
処理を行う際の計算量を大幅に削減することができるた
め、バンプマッピングを小規模のハードウェアで容易に
実現することができる。したがって、上記バンプマッピ
ング方法は、小規模のハードウェアで、画質を落とすこ
となく、高速にバンプマッピングの処理を行うことがで
きる。
【0236】つぎに、本発明に係る画像生成装置につい
て説明する。
【0237】例えば、図1に示すように、上記画像生成
装置100は、レジスタ7と、レジスタ7の出力が供給
される補間処理回路1と、補間処理回路1の出力が各々
供給される除算器2及び反射ベクトル算出回路4と、除
算器2及びレジスタ7の各出力が供給される法線算出回
路3と、反射ベクトル算出回路4及び法線算出回路3の
各出力が供給されるカラー算出回路5とを備えている。
【0238】また、画像生成装置100は、法線算出回
路3及びカラー算出回路5と各々接続されたメモリイン
ターフェース6と、メモリインターフェース6と接続さ
れたメモリ8とを備えている。
【0239】さらに、除算器2とカラー算出回路5は、
接続された構成としており、出力端子Ioutからは、カ
ラー算出回路5の出力が供給されるようになされてい
る。
【0240】まず、画像生成装置100は、上記図1に
示したフローチャートに従ってバンプマッピングの処理
を行うようになされている。
【0241】すなわち、画像生成装置100は、例え
ば、2つの変数u,vを用いて定義されるパッチに分割
された物体を描画する際、先ず、図示していない前処理
回路により、上記パッチを多角形の集合で近似する。こ
のとき、多角形の各頂点のモデリング座標系における座
標値と法線ベクトル、及び(u,v)座標を頂点データ
とする。
【0242】次に、画像生成装置100は、上記前処理
回路により、上記頂点データを多角形単位に座標変換し
てプリミティブデータを生成する。そして、画像生成装
置100は、上記図4に示した各構成要素により、上記
前処理回路で生成されたプリミティブデータに対してバ
ンプマッピングの処理を行う。
【0243】以下、画像生成装置100におけるバンプ
マッピングの処理時の動作について、上記図1及び上記
図4を用いて具体的に説明する。
【0244】画像生成装置100において、例えば、三
角形のプリミティブデータに対してバンプマッピングの
処理を行う場合、先ず、レジスタ7には、上述のように
して、上記前処理回路により生成された三角形のプリミ
ティブデータから求められた補間処理回路1及び法線算
出回路3で用いられる三角形毎のパラメータが格納され
る。
【0245】すなわち、レジスタ7には、ステップS1
の式(30)〜(35)により、三角形のプリミティブ
データに対して一意に算出された偏微分Pu及びPvを
用いて、物体の大きさに依存するバンプマッピングを行
う場合には、式(36)及び(37)により、物体の大
きさに依存しないバンプマッピングを行う場合には、式
(38)及び(39)により算出されたパラメータGu
及びGvが格納される。
【0246】また、レジスタ7には、ステップS1の式
(16)〜(24)、及び式(40)〜(42)により
算出された三角形の描画開始点における“Ms”、“N
s”、及び“Es”の各値と、“Ms”、“Ns”、及
び“Es”の三角形の描画開始辺方向の増分と走査線方
向の増分とが格納される。
【0247】一方、メモリ8には、法線算出回路3で用
いられるテクスチャ、及びカラー算出回路5で用いられ
る上述のようにして予め作成された拡散反射テーブルと
鏡面反射テーブルが格納される。
【0248】補間処理回路1は、レジスタ7に格納され
た三角形の描画開始点における“Ms”、“Ns”、及
び“Es”の各値と、“Ms”、“Ns”、及び“E
s”の三角形の描画開始辺方向の増分と走査線方向の増
分とを用いて、線形補間を行い、ステップS1の式(4
9)〜(51)で定義される三角形内部の各描画ピクセ
ル毎のテクスチャ座標Mk、法線ベクトルNk、及び視
線ベクトルEkを求める。
【0249】除算器2は、補間処理回路1で得られた各
描画ピクセル毎のテクスチャ座標Mk、法線ベクトルN
k、及び視線ベクトルEkのうちの、対象描画ピクセル
に対するテクスチャ座標Mk、法線ベクトルNk、及び
視線ベクトルEkを用いて、ステップS1の式(52)
及び(53)の算出処理を行うことにより、テクスチャ
を参照する際に必要なパラメータ(s,t)、及び法線
ベクトルNdの算出に必要なベクトルncを求める。
【0250】法線算出回路3は、除算器2で得られた対
象描画ピクセルに対するパラメータ(s,t)から、テ
クスチャに対する2次元アドレス(u,v)を求める。
【0251】メモリインターフェース6は、法線算出回
路3で得られた2次元アドレス(u,v)を、メモリ8
に格納されたテクスチャに対する物理アドレスaddr
に変換し、変換して得られた物理アドレスaddrを用
いて、メモリ8の物理アドレスaddrに格納されてい
る対象描画ピクセルに対するステップS3で示した“F
u”及び“Fu”を信号線dataを介して読み出し、
読み出した“Fu”及び“Fu”を読出データTDとし
て法線算出回路3に供給する。
【0252】法線算出回路3は、メモリインターフェー
ス6からの読出データTD、すなわち対象描画ピクセル
に対する“Fu”及び“Fu”と、レジスタ7に格納さ
れているパラメータGu及びGvと、除算器2で得られ
た対象描画ピクセルに対するベクトルnを用いて、ステ
ップS3の式(59)及びステップS4で示した式(6
2)の算出処理を行うことにより、バンプが付いた面の
法線ベクトルNdを求める。
【0253】反射ベクトル算出回路4は、補間処理回路
1で得られた対象描画ピクセルに対する法線ベクトルN
k及び視線ベクトルEkを用いて、ステップS5で示し
た式(63)の算出処理を行うことにより、対象描画ピ
クセルの視線に対する反射ベクトルRdを求める。
【0254】カラー算出回路5は、法線算出回路3で得
られた法線ベクトルNdにおいて、メジャー軸の値をM
AJ、マイナー軸の値をMIN1及びMIN2として、
除算器2に供給する。
【0255】除算器2は、ステップS5で述べたよう
に、カラー算出回路5からのマイナー軸の値MIN1及
びMIN2を、カラー算出回路5からのメジャー軸の値
MAJで割る算出処理を行うことにより、対象描画ピク
セルの拡散テーブルに対するインデックスI(=(I
x,Iy))を求める。そして、除算器2は、求めたイ
ンデックスI(=(Ix,Iy))をカラー算出回路5
に供給する。
【0256】カラー算出回路5は、除算器2からのイン
デックスI(=(Ix,Iy))を用いて、ステップS
5の式(69)及び(70)の算出処理を行うことによ
り、拡散反射テーブルに対する2次元アドレス(i,
j)を求め、求めた2次元アドレス(i,j)をメモリ
インターフェース6に供給する。また、カラー算出回路
5は、メジャー軸により決定された立方体の面を示す信
号pln、及び拡散反射テーブルに対するアクセスであ
るか、又は鏡面反射テーブルに対するアクセスであるか
を示す信号dsもメモリインターフェース6に供給す
る。
【0257】メモリインターフェース6は、カラー算出
回路5からの2次元アドレス(i,j)、信号pln、
及び信号dsから、メモリ8に格納された拡散反射テー
ブルに対する物理アドレスを求め、その物理アドレスに
格納されているステップS5の式(73)における拡散
反射係数Dcを信号線dataを介して読み出す。そし
て、メモリインターフェース6は、メモリ8から読み出
した拡散反射係数Dcを読出データTDdとしてカラー
算出回路5に供給する。
【0258】また、メモリインターフェース6は、拡散
反射係数Dcの読出処理と同様にして、カラー算出回路
5からの2次元アドレス(i,j)、信号pln、及び
信号dsから、メモリ8に格納された鏡面反射テーブル
に対する物理アドレスを求め、その物理アドレスに格納
されているステップS5の式(73)における鏡面反射
係数Scを信号線dataを介して読み出す。そして、
メモリインターフェース6は、メモリ8から読み出した
鏡面反射係数Scを読出データTDdとしてカラー算出
回路5に供給する。
【0259】カラー算出回路5は、メモリインターフェ
ース6から順次供給された読出データTDd、すなわち
拡散反射係数Dc、及び鏡面反射係数Scを用いて、ス
テップS5の式(73)の算出処理を行うことにより、
対象描画ピクセルの色を決定し、決定した色に対応した
カラー信号colorを出力端子Ioutを介して出力す
る。
【0260】上述のように、画像生成装置100は、上
記図1に示したフローチャートに従って、バンプマッピ
ングを行うため、上記バンプマッピングを小規模なハー
ドウェアで高速にバンプマッピングを行うことができる
と共に、良好な画質を得ることができる。
【0261】尚、上述した画像生成装置100では、パ
ラメータ(s,t)、ベクトルnc、及びインデックス
I(=(Ix,Iy))を除算器2を用いて求めること
としたが、除算器2を近似多項式を用いた加減算器に置
き換えて、パラメータ(s,t)、ベクトルnc、及び
インデックスI(=(Ix,Iy))を求めることとし
てもよい。これにより、画像生成装置100は、さらに
小規模のハードウェアで高速にバンプマッピングを行う
ことができる。
【0262】また、画像生成装置100では、テクスチ
ャ、拡散反射テーブル、及び鏡面反射テーブルを同一の
メモリ8に格納することとしたが、3つのメモリを設
け、テクスチャ、拡散反射テーブル、及び鏡面反射テー
ブルを対応したメモリに各々格納することとしてもよ
い。これにより、画像生成装置100は、メモリアクセ
スを並列的に行うことができるため、処理性能をさらに
向上させることができる。
【0263】
【発明の効果】本発明に係るバンプマッピング方法で
は、先ず、2つの変数u及びvを用いて定義されるパッ
チを多角形の集合で近似する。次に、上記パッチの変数
u及びv各々に対する偏微分を算出する。次に、上記偏
微分を用いて対象描画ピクセルに対する法線ベクトルを
算出する。次に、テクスチャ関数を用いて上記法線ベク
トルの変化分を算出する。そして、上記法線ベクトルと
上記法線ベクトルの変化分を用いて、対象描画ピクセル
のカラー値を算出するための変換後法線ベクトルを算出
する。これにより、上記バンプマッピング方法では、描
画ピクセル毎に、位置ベクトルを算出する必要はない。
このため、上記バンプマッピング方法は、バンプマッピ
ングを行う際の計算量を削減することができるため、バ
ンプマッピングを小規模のハードウェアで容易に実現す
ることができる。したがって、上記バンプマッピング方
法は、小規模のハードウェアでバンプマッピングを高速
に実行することができる。
【0264】また、本発明に係るバンプマッピング方法
では、上記偏微分は多角形内部で一定であると近似し
て、多角形の各頂点における変数u及びvの値と座標値
から上記偏微分を算出する。これにより、上記バンプマ
ッピング方法では、描画ピクセル毎に、位置ベクトルを
算出する必要はなく、1個の多角形に対して1回のみ、
位置ベクトルの偏微分を算出すればよい。したがって、
上記バンプマッピング方法は、バンプマッピングを行う
際の計算量を削減することができる。
【0265】また、本発明に係るバンプマッピング方法
では、上記法線ベクトルを多角形の各頂点における法線
ベクトルから算出する。これにより、描画ピクセル毎
に、位置ベクトルを算出する必要はなく、1個の多角形
に対して1回のみ、位置ベクトルの偏微分を算出すれば
よい。したがって、上記バンプマッピング方法は、バン
プマッピングを行う際の計算量を削減することができ
る。
【0266】また、本発明に係るバンプマッピング方法
では、上記変数uに対する偏微分と上記変数vに対する
偏微分が直交していると近似して、上記法線ベクトルの
変化分を算出する。これにより、上記バンプマッピング
方法は、法線ベクトルの変化分の算出を簡略化した式に
より行うことができる。したがって、上記バンプマッピ
ング方法は、バンプマッピングを行う際の計算量を削減
することができる。
【0267】また、本発明に係るバンプマッピング方法
では、上記変数uに対する偏微分と上記変数vに対する
偏微分の外積により得られる多角形内部で一定の法線ベ
クトルにより、上記法線ベクトルの変化分を算出する。
これにより、上記バンプマッピング方法は、法線ベクト
ルの変化分の算出を簡略化した式により行うことができ
る。したがって、上記バンプマッピング方法は、バンプ
マッピングを行う際の計算量を削減することができる。
【0268】また、本発明に係るバンプマッピング方法
では、ライティング計算における拡散反射に関わる項を
予め算出し、その算出結果を拡散反射テーブルに格納す
る。また、ライティング計算における鏡面反射に関わる
項を予め算出し、その算出結果を鏡面反射テーブルに格
納する。そして、上記変換後法線ベクトルで上記拡散反
射テーブルを参照し、視線に対する反射ベクトルで上記
鏡面反射テーブルを参照して対象描画ピクセルのカラー
値を算出する。これにより、上記バンプマッピング方法
では、ベクトルの正規化べき乗の計算が不要となる。し
たがって、上記バンプマッピング方法は、バンプマッピ
ングを行う際の計算量を削減することができる。
【0269】本発明に係る画像生成装置は、偏微分算出
手段は、2つの変数u及びvを用いて定義されるパッチ
を多角形の集合で近似して、上記パッチの変数u及びv
各々に対する偏微分を算出する。法線算出手段は、上記
偏微分算出手段で得られた偏微分を用いて対象描画ピク
セルに対する法線ベクトルを算出する。変化分算出手段
は、上記法線算出手段で得られた法線ベクトルの変化分
をテクスチャ関数を用いて算出する。変換後法線算出手
段は、上記法線算出手段で得られた法線ベクトルと上記
変化分算出手段で得られた法線ベクトルの変化分を用い
て、対象描画ピクセルのカラー値を算出するための変換
後法線ベクトルを算出する。これにより、上記画像生成
装置では、描画ピクセル毎に、位置ベクトルを算出する
必要はない。このため、上記画像生成装置は、バンプマ
ッピングを行う際の計算量を削減することができるた
め、バンプマッピングを小規模のハードウェアで容易に
実現することができる。したがって、上記画像生成装置
は、小規模のハードウェアでバンプマッピングを高速に
実行することができる。
【0270】また、本発明に係る画像生成装置では、上
記偏微分算出手段は、上記偏微分は多角形内部で一定で
あると近似して、多角形の各頂点における変数u及びv
の値と座標値から上記偏微分を算出する。これにより、
上記画像生成装置では、描画ピクセル毎に、位置ベクト
ルを算出する必要はなく、1個の多角形に対して1回の
み、位置ベクトルの偏微分を算出すればよい。したがっ
て、上記画像生成装置は、バンプマッピングを行う際の
計算量を削減することができる。
【0271】また、本発明に係る画像生成装置では、上
記法線算出手段は、上記法線ベクトルを多角形の各頂点
における法線ベクトルから算出する。これにより、上記
画像生成装置では、描画ピクセル毎に、位置ベクトルを
算出する必要はなく、1個の多角形に対して1回のみ、
位置ベクトルの偏微分を算出すればよい。したがって、
上記画像生成装置は、バンプマッピングを行う際の計算
量を削減することができる。
【0272】また、本発明に係る画像生成装置では、上
記変化分算出手段は、上記変数uに対する偏微分と上記
変数vに対する偏微分が直交していると近似して、上記
法線ベクトルの変化分を算出する。これにより、上記画
像生成装置は、法線ベクトルの変化分の算出を簡略化し
た式により行うことができる。したがって、上記画像生
成装置は、バンプマッピングを行う際の計算量を削減す
ることができる。
【0273】また、本発明に係る画像生成装置では、上
記変化分算出手段は、上記変数uに対する偏微分と上記
変数vに対する偏微分の外積により得られる多角形内部
で一定の法線ベクトルにより、上記法線ベクトルの変化
分を算出する。これにより、上記画像生成装置は、法線
ベクトルの変化分の算出を簡略化した式により行うこと
ができる。したがって、上記画像生成装置は、バンプマ
ッピングを行う際の計算量を削減することができる。
【0274】また、本発明に係る画像生成装置では、拡
散反射テーブルには、予め算出されたライティング計算
における拡散反射に関わる項が格納される。また、鏡面
反射テーブルには、予め算出されたライティング計算に
おける鏡面反射に関わる項が格納される。そして、カラ
ー値算出手段は、上記変換後法線算出手段で得られた変
換後法線ベクトルで上記拡散反射テーブルを参照し、視
線に対する反射ベクトルで上記鏡面反射テーブルを参照
して上記カラー値を算出する。これにより、上記画像生
成装置では、ベクトルの正規化べき乗の計算が不要とな
る。したがって、上記画像生成装置は、バンプマッピン
グを行う際の計算量を削減することができる。
【図面の簡単な説明】
【図1】本発明に係るバンプマッピング方法を示すフロ
ーチャートである。
【図2】ライティング計算において、法線ベクトル、視
線ベクトル、視線に対する反射ベクトル、ライトベクト
ル、及びライトに対する反射ベクトルの関係を説明する
ための図である。
【図3】拡散反射テーブル及び鏡面反射テーブルの作成
処理を説明するための図である。
【図4】本発明に係る画像生成装置の構成を示すブロッ
ク図である。
【図5】従来のバンプマッピング方法を示すフローチャ
ートである。
【符号の説明】
1 補間処理回路、2 除算器、3 法線算出回路、4
反射ベクトル算出回路、5 カラー算出回路、6 メ
モリインターフェース、7 レジスタ、8 メモリ、1
00 画像生成装置

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 2つの変数u及びvを用いて定義される
    パッチを描画する際に、対象描画ピクセルに対する法線
    ベクトルをテクスチャ関数により変換し、変換して得ら
    れた変換後法線ベクトルを用いて対象描画ピクセルのカ
    ラー値を算出するバンプマッピング方法であって、 上記パッチを多角形の集合で近似し、 上記パッチの変数u及びv各々に対する偏微分を算出
    し、 上記偏微分を用いて対象描画ピクセルに対する法線ベク
    トルを算出し、 テクスチャ関数を用いて上記法線ベクトルの変化分を算
    出し、 上記法線ベクトルと上記法線ベクトルの変化分を用いて
    上記変換後法線ベクトルを算出することを特徴とするバ
    ンプマッピング方法。
  2. 【請求項2】 上記偏微分は多角形内部で一定であると
    近似して、多角形の各頂点における変数u及びvの値と
    座標値から上記偏微分を算出することを特徴とする請求
    項1記載のバンプマッピング方法。
  3. 【請求項3】 上記法線ベクトルを多角形の各頂点にお
    ける法線ベクトルから算出することを特徴とする請求項
    1記載のバンプマッピング方法。
  4. 【請求項4】 上記変数uに対する偏微分と上記変数v
    に対する偏微分が直交していると近似して、上記法線ベ
    クトルの変化分を算出することを特徴とする請求項1記
    載のバンプマッピング方法。
  5. 【請求項5】 上記変数uに対する偏微分と上記変数v
    に対する偏微分の外積により得られる多角形内部で一定
    の法線ベクトルにより、上記法線ベクトルの変化分を算
    出することを特徴とする請求項1記載のバンプマッピン
    グ方法。
  6. 【請求項6】 ライティング計算における拡散反射に関
    わる項を予め算出し、その算出結果を拡散反射テーブル
    に格納し、 ライティング計算における鏡面反射に関わる項を予め算
    出し、その算出結果を鏡面反射テーブルに格納し、 上記変換後法線ベクトルで上記拡散反射テーブルを参照
    し、 視線に対する反射ベクトルで上記鏡面反射テーブルを参
    照して上記カラー値を算出することを特徴とする請求項
    1記載のバンプマッピング方法。
  7. 【請求項7】 2つの変数u及びvを用いて定義される
    パッチを描画する際に、対象描画ピクセルに対する法線
    ベクトルをテクスチャ関数により変換し、変換して得ら
    れた変換後法線ベクトルを用いて対象描画ピクセルのカ
    ラー値を算出するバンプマッピング方法を採用した画像
    生成装置であって、 上記パッチを多角形の集合で近似して上記パッチの変数
    u及びv各々に対する偏微分を算出する偏微分算出手段
    と、 上記偏微分算出手段で得られた偏微分を用いて対象描画
    ピクセルに対する法線ベクトルを算出する法線算出手段
    と、 上記法線算出手段で得られた法線ベクトルの変化分をテ
    クスチャ関数を用いて算出する変化分算出手段と、 上記法線算出手段で得られた法線ベクトルと上記変化分
    算出手段で得られた法線ベクトルの変化分を用いて上記
    変換後法線ベクトルを算出する変換後法線算出手段とを
    備えることを特徴とする画像生成装置。
  8. 【請求項8】 上記偏微分算出手段は、上記偏微分は多
    角形内部で一定であると近似して、多角形の各頂点にお
    ける変数u及びvの値と座標値から上記偏微分を算出す
    ることを特徴とする請求項7記載の画像生成装置。
  9. 【請求項9】 上記法線算出手段は、上記法線ベクトル
    を多角形の各頂点における法線ベクトルから算出するこ
    とを特徴とする請求項7記載の画像生成装置。
  10. 【請求項10】 上記変化分算出手段は、上記変数uに
    対する偏微分と上記変数vに対する偏微分が直交してい
    ると近似して、上記法線ベクトルの変化分を算出するこ
    とを特徴とする請求項7記載の画像生成装置。
  11. 【請求項11】 上記変化分算出手段は、上記変数uに
    対する偏微分と上記変数vに対する偏微分の外積により
    得られる多角形内部で一定の法線ベクトルにより、上記
    法線ベクトルの変化分を算出することを特徴とする請求
    項7記載の画像生成装置。
  12. 【請求項12】 予め算出されたライティング計算にお
    ける拡散反射に関わる項が格納される拡散反射テーブル
    と、 予め算出されたライティング計算における鏡面反射に関
    わる項が格納される鏡面反射テーブルと、 上記変換後法線算出手段で得られた変換後法線ベクトル
    で上記拡散反射テーブルを参照し、視線に対する反射ベ
    クトルで上記鏡面反射テーブルを参照して上記カラー値
    を算出するカラー値算出手段とを備えることを特徴とす
    る請求項7記載の画像生成装置。
JP4017096A 1996-02-27 1996-02-27 バンプマッピング方法及び画像生成装置 Withdrawn JPH09231402A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4017096A JPH09231402A (ja) 1996-02-27 1996-02-27 バンプマッピング方法及び画像生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4017096A JPH09231402A (ja) 1996-02-27 1996-02-27 バンプマッピング方法及び画像生成装置

Publications (1)

Publication Number Publication Date
JPH09231402A true JPH09231402A (ja) 1997-09-05

Family

ID=12573302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4017096A Withdrawn JPH09231402A (ja) 1996-02-27 1996-02-27 バンプマッピング方法及び画像生成装置

Country Status (1)

Country Link
JP (1) JPH09231402A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188409B1 (en) 1998-09-24 2001-02-13 Vlsi Solution Oy 3D graphics device
KR100420859B1 (ko) * 2001-08-11 2004-03-02 학교법인연세대학교 범프 매핑 처리 장치 및 방법
WO2004095376A3 (en) * 2003-04-15 2005-01-20 Imagination Tech Ltd Efficient bump mapping using height maps
JP2011023834A (ja) * 2009-07-13 2011-02-03 Canon Inc 色処理方法、色処理装置及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188409B1 (en) 1998-09-24 2001-02-13 Vlsi Solution Oy 3D graphics device
KR100420859B1 (ko) * 2001-08-11 2004-03-02 학교법인연세대학교 범프 매핑 처리 장치 및 방법
WO2004095376A3 (en) * 2003-04-15 2005-01-20 Imagination Tech Ltd Efficient bump mapping using height maps
US7733352B2 (en) 2003-04-15 2010-06-08 Imagination Technologies Limited Efficient bump mapping using height maps
JP2011023834A (ja) * 2009-07-13 2011-02-03 Canon Inc 色処理方法、色処理装置及びプログラム

Similar Documents

Publication Publication Date Title
US7532213B2 (en) Bicubic surface real time tesselation unit
El-Hakim et al. A multi-sensor approach to creating accurate virtual environments
US7586489B2 (en) Method of generating surface defined by boundary of three-dimensional point cloud
CN102289845B (zh) 一种三维模型绘制方法以及装置
Welsh Parallax mapping with offset limiting: A per-pixel approximation of uneven surfaces
US20040075655A1 (en) 3D computer graphics processing apparatus and method
CN109685891A (zh) 基于深度图像的建筑物三维建模与虚拟场景生成系统
US7843463B1 (en) System and method for bump mapping setup
KR100888528B1 (ko) 3D 오브젝트의 셀프 셰도우(self-shadow)를만들기 위해 데이터를 미리-저장할 수 있는 장치, 방법,응용프로그램 및 컴퓨터 판독가능한 매체
EP3379495B1 (en) Seamless fracture in an animation production pipeline
US10593096B2 (en) Graphics processing employing cube map texturing
JPH09231404A (ja) 物体を表示するための画像処理方法および装置
CN112530005B (zh) 一种三维模型直线结构识别与自动修复方法
Merlo et al. 3D model visualization enhancements in real-time game engines
Vyatkin et al. Voxel Volumes volume-oriented visualization system
Bronsvoort et al. Display of profiled sweep objects
KR100489572B1 (ko) 화상 처리 방법
JPH09231402A (ja) バンプマッピング方法及び画像生成装置
KR101227155B1 (ko) 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법
USRE42534E1 (en) Bicubic surface real-time tesselation unit
JPH07282292A (ja) テクスチャマッピング方法及び画像処理装置
US20050057568A1 (en) Bicubic surface rendering
Romanyuk et al. Blending functionally defined surfaces
CN112927352A (zh) 基于压平多边形的三维场景局部区域动态压平方法及装置
Schilling et al. Rendering of multiresolution models with texture

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030506