JPH08263694A - バンプマップシェーディング回路 - Google Patents

バンプマップシェーディング回路

Info

Publication number
JPH08263694A
JPH08263694A JP10290495A JP10290495A JPH08263694A JP H08263694 A JPH08263694 A JP H08263694A JP 10290495 A JP10290495 A JP 10290495A JP 10290495 A JP10290495 A JP 10290495A JP H08263694 A JPH08263694 A JP H08263694A
Authority
JP
Japan
Prior art keywords
bump
normal
circuit
mapping
storage element
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.)
Pending
Application number
JP10290495A
Other languages
English (en)
Inventor
Tsuneo Ikedo
恒雄 池戸
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP10290495A priority Critical patent/JPH08263694A/ja
Priority to CA002190938A priority patent/CA2190938A1/en
Priority to PCT/JP1996/000726 priority patent/WO1996029681A1/ja
Priority to EP96906900A priority patent/EP0764921A4/en
Publication of JPH08263694A publication Critical patent/JPH08263694A/ja
Priority to US08/754,237 priority patent/US5900881A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】曲面の凹凸による光反射表示効果を与えるバン
プマップ処理のハードウェア回路化 【構成】バンプ法線を曲面にマッピングする手段として
回転マトリックス計算のための乗算器5および加算器6
をシェーディング回路に組み入れたバンプマップシェー
ディング回路

Description

【発明の詳細な説明】
この発明は物体表面の凹凸感をコンピュータ・グラフィ
ックスで表現するバンプマップ処理のハードウェア化に
関し、物体の表面属性とは独立に凹凸属性を法線ベクト
ルで定義するとともに、これを2次元配列のパターンと
して作成し、このパターンをRAM(Random A
cccss Memory)に登録後任意の傾きをもつ
面にマッピングすることによって物体の表面荒さを表現
することである。バンプマップのハードウェア化によ
り、バーチャル・リアリティ映像をリアルタイムに表示
可能となりコンピュータ・グラフィックス装置(アミュ
ーズメント、シュミレータなど)に適用される。
【0001】[従来の技術]コンピュータ・グラフィッ
クスにおけるバンプマップ効果はバンプ(隆起)状態を
法線ベクトルで定義し、これを物体表面にマッピングし
た後、これらの面に入射する光源からの光と、その反射
角から拡散や鏡面反射光を計算することによって得るこ
とができる。テキスチャーパターンのカラー情報のマッ
ピングはすでに一般にハードウェア化されているが、バ
ンプマップのような微小面の不連続な傾きと、光源を設
定した上での各点の反射計算を対象とする具体的なハー
ドウェア化は現在見られない。すなわちフォン・シェー
ディングやバンプマッピング等の反射計算を考慮したレ
ンダリング処理はソフトウェア技法に依存しているのが
現状であり、この結果バンプシェーディング機能をもっ
て、1秒間に数10万のポリゴン数の描写を得ることは
困難である。この発明は以上のような事情に鑑みてなさ
れたもので、バンプマッピングをハードウェア化し、ピ
クセル毎のバンプマップ計算を1演算クロック以内で実
行することを特徴とし、これをシェーディング回路と組
み合わせることでバーチャルリアリティに対応する高速
な映像描写を得ることを目的としている。ここで、1ク
ロック以内とは入力から出力までの処理について要する
時間は回路素子のスイッチング遅延のみであり、クロッ
クによる繰り返し演算を用いないことを意味する。
【0002】[課題を解決するための手段]この発明は
多角形面内の各点の法線ベクトル(以下主法線という)
に対し、その面の傾きとは独立に2次元配列されたバン
プ面を定義する不連続な法線ベクトル(以下バンプ法線
という)をレンダリング面にマッピングするための回路
である。多角形面内の各点での主法線は座標値同様に多
角形を内挿(塗りつぶし)処理する際、面内のすべての
点について、非線形あるいは 線形DDA(Digit
al Differencial Analizer)
によって求めるこができる。これは多角形頂点あるいは
頂点内に法線ベクトルを属性として与え、これをまずア
ウトライン、次に内部に補間するものである。一方、バ
ンプ法線はテキスチャーマッピングのためのパターン定
義と同様にバンプ座標形にて平面配列状に各点の傾きと
して定義し、これをRAM(Random Acces
s Memory)に記憶する。テキスチャーパターン
とバンプ法線の違いは前者が色情報であるのに対して、
後者は例えば平面をXY空間とするとZ軸に対する水平
垂直成分の傾き情報を基に所定の値を設定することであ
る。このバンプ法線成分を記憶したRAMの内容は、テ
キスチャーパターンと同様にマッピングされる図形は拡
大縮小あるいは透視変換等による座標変換が行われてい
るため、これをマッピング対応するには表示(スクリー
ン)座表系からバンプ座表系への逆写像変換が必要であ
り、この結果得られた読み出しアドレスによって前記D
DAに同期してRAMから登録データが読み出される。
バンプ法線は視点座標軸(Z軸)に対して水平方向Bh
(XZ面)と垂直方向Bv(XY面)で定義する。一方
主法線も水平Nhおよび垂直Nv方向成分で定義する。
フォン シェーディングにおいては特願平4−2553
13に示したように、水平垂直成分に対し、それぞれ独
立した函数記憶素子を用いて拡散および鏡面反射光の成
分計算をした後、これらを合成して任意の点における反
射光を計算した。これらはいずれもピクセルのシェーデ
ィング生成速度を1クロック以内に実行することを条件
としている。バンプマップでは、このそれぞれ2組の傾
き成分Bh、BvおよびNh、Nvから、マップ後の曲
面の新たな傾きを計算することである。これはバンプ法
線を主法線で回転することを意味する。この際主法線の
回転はそれぞれ水平および垂直軸の回転マトリックスの
パラメータとして用いることができるが、これに対応し
てバンプ法線は3次元空間内での回転のためにx、y、
z各軸の成分からなる3つのベクター変数として定義さ
れなければならない。よって計算量を減少するために、
Bh、Bvより求めたこれら3軸ベクター成分を予め記
憶素子に登録し、これを直接回転マトリックス計算の入
力変数として与える。この結果得られたマップ後の3軸
傾き成分を、光源の入射角LhおよびLvと主法線との
傾きおよびその反射角と視点座標軸との方向余弦を求め
ることによってバンプマップ面の拡散および鏡面反射光
が与えることができる。これらの関係を(1)式に示
す。すなわち主法線の視点座標軸に対する水平および垂
直方向の傾きをそれぞれNhおよびNvとしまたバンプ
法線の水平および垂直傾きをそれぞれBhおよびBvと
すると、バンプ法線の主法線のもつ傾きの回転は3次元
空間内で(1)式の関係となる。 ここで X=sinBhcosBv Y=sinBv Z=cosBhcosBv (1) (1)式においてX、Y、Zはバンプ法線の各傾
き成分からなる3つの変数であるが、これらは記憶素子
内に予め記憶する。(1)式内のマトリックスから明ら
かなように各パラメータは傾き変数NhあるいはNvの
1つだけを含むものであり、三角函数は記憶素子によっ
て容易に構成することができる。シェーディング計算に
は(1)式の結果はマップ後の法線と光源入射角方向余
弦cosθおよび反射角と視点座標軸との方向余弦co
sαとの関係において(2)式で与えられる。 cosθ=X・cosLh/sinLh+Y・sinLv cosα=(cosθ +Z)/2 (2) 以上からこれら関係式をハードウエア化することによっ
て目的とするバンプマップシェーディング回路が構成で
きる。ここで重要なこの発明の特徴は各点のバンプマッ
プ処理を1クロック以内に実行できることである。すな
わち、(1)および(2)式より 明らかなように記憶
素子および乗算加算器のみで構成できることから、遅延
それぞれの素子のスイッチング速度のみとなる。
【003】[実施例]1図は本発明に係わるバンプマッ
プシェーディング回路の全体構成を示す。図において回
路1は線形あるいは非線形のDDA(Digital
Differential Analizer)で構成
するもので、曲面を内挿し、面内のすべての点の座標値
やその点の属性を出力する。主法線の傾きNhおよびN
vも属性の1つとしてこの回路によって求められる。内
挿された座標値は、テキスチャーマッピング用のパター
ンが登録された記憶素子読み出しのための逆写像変換回
路2に加えられ、この回路で生成されたアドレスTad
rはテキスチャーパターン記憶素子(図中には表示され
ていない)に出力されるともに、バンプ法線記憶素子5
にも加えられる。一方、主法線NhおよびNvは(1)
式のマトリックス内に含まれるそれぞれの三角函数のそ
れぞれの変数として記憶素子からなる回路3および4の
入力アドレスとなり所定の値に変換される。バンプ法線
記憶素子5からのデータは(1)式のXおよびZ
であり、NhおよびNvとともにマトリックス演算回
路6に加えられ、(1)式に基づく乗算と加算が実行さ
れる。マトリックス演算回路6では、回転計算とともに
光源入射角との方向余弦cosθおよび視点座標軸と反
射角との方向余弦cosαを(2)式にもとずき計算す
る。こうして得られた値はシェーディング回路7にて拡
散および鏡面反射成分が求められ、バンプマップ後の反
射光Ipとして出力される。2図はこの発明に係わる具
体的な実施例を示す。図において主法線NhおよびNv
は記憶素子1〜4にて三角函数に変換される。記憶素子
1および2はRAMあるいはROMのいずれも構成可能
であるが、3および4は通常RAMを用いる。記憶素子
1はcosNvが、記憶素子2はsinNvが作られ
る。また記憶素子2および3にはそれぞれsinLhc
osLvcosNhおよびsinLhcosLvsin
Nhが作られる。これらの出力は乗算器5a〜5hに加
えられ、乗算器の一方に入力するXおよびZ
(1)式で定義したバンプマップ法線からなる各値であ
る。乗算器5a〜5hの出力は6a〜6dの加算器にお
いてそれぞれ(1)式におけるXおよびZを生
成する。これら値は(2)式に基づき、YはsinL
v、またXはcosLh/sinLhとそれぞれ乗算
器5 iおよび5 jにて乗算されその後加算器6eお
よび6fにてcosθおよびcosαが求められる。光
源による値sinLvおよびcosLh/sinLhは
あらかじめ計算され、レジスター等に記憶される。図中
の1/2はバスシフト結線による1/2の除算である。
フォンシェーディングモデルでは以上の演算から得られ
たcosθおよびcosαを用いて、反射光は(3)式
で与えられる。 Ip=Id・cosθ+Ir・cosα (3) ここでIdおよびIrはそれぞれ拡散係数、nは鏡面反
射率である。よって拡散成分はIdとの乗算、一方鏡面
反射成分は(cosα)テーブルからなる記憶素子7
を経たのちIrとの乗算の後それぞれを加算してIpを
得ることができる。記憶素子7は通常RAMが用いられ
る。以上の実施例に示すようにこの発明は2組の面の法
線すなわち主法線面へのバンプ法線のマッピング(回転
計算)と光源入射光によるバンプマップ面との反射角、
および反射光との視点軸との角度計算さらにこれら計算
によって得られた方向余弦からシェーディング計算を経
てバンプマップ面の反射光を求める3つの計算段階をも
つ。この結果バンプ状の多面体表示をハードウェアによ
って実現することができる。
【0004】[効果]物体表面の滑らかさや荒さを表現
するバンプマップ処理のハードウェア化によって、より
リアルなコンピュータ・グラフィック映像をソフトウェ
アに対し数千倍の高速性で実現できる。この回路は実施
例から明らかなようにASIC対応を考慮して小規模で
あり、アーミューズメントからシュミレーション間での
安価で高性能なグラフィック・プロセッサの演算回路と
して利用できる。
【図面の簡単な説明】
【図1】本発明のバンプマップシェーディング回路
【符号の説明】
1 DDA回路 2 テキスチャーマッピイング回路 3 水平軸成分三角函数記憶素子 4 垂直軸成分三角函数記憶素子 5 バンプマップテーブル 6 マトリックス演算 7 シェーディング回路
【図2】本発明のバンプマップシェーディング回路
【符号の説明】
1 cosNv記憶素子 2 sinNv記憶素子 3 sinLvcosLvcosNh記憶素子 4 SinLhcosLvsinNh記憶素子 5a〜5l 乗算器 6a〜6f 加算器

Claims (1)

    【特許請求の範囲】
  1. 曲面上の各点の法線ベクター(以下主法線という)と各
    点への光源からの光入射角とを、視点座標軸に対する水
    平および垂直角で定義するとともに、これら2つの傾き
    成分を入力変数として、面上の拡散光および鏡面反射光
    を求めるシェーディング方式において、曲面上に凹凸表
    現を与えるためのバンプマップ処理として、バンプ面の
    法線ベクター(以下バンプ法線という)を前記主法線と
    同様に水平および垂直角で定義し、この2つの傾き変数
    を2次元空間にパターン化した記憶素子に登録し、この
    記憶素子にはバンプ法線定義座標系にマッピングするた
    めに逆写像変換アドレスを与えて登録値を読み出す第1
    の手段と、マッピングの際、バンプ法線を主法線のもつ
    傾きで回転する手段として、水平および垂直軸を回転軸
    とする回転計算において主法線の傾きを回転マトリック
    スのパラメータとする一方、前期記憶素子から読みださ
    れたバンプ法線成分をベクター変数として、乗算器およ
    び加算器で構成する演算回路を加えるる第2の手段と、
    この変換によって得られたベクター成分から光源情報を
    基に、拡散および鏡面反射光を求める第3の手段を合わ
    せもつことを特徴とするバンプマップシェーディング回
JP10290495A 1995-03-22 1995-03-22 バンプマップシェーディング回路 Pending JPH08263694A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP10290495A JPH08263694A (ja) 1995-03-22 1995-03-22 バンプマップシェーディング回路
CA002190938A CA2190938A1 (en) 1995-03-22 1996-03-21 Computer graphics circuit
PCT/JP1996/000726 WO1996029681A1 (fr) 1995-03-22 1996-03-21 Circuit d'infographie
EP96906900A EP0764921A4 (en) 1995-03-22 1996-03-21 CIRCUIT FOR COMPUTER GRAPHICS
US08/754,237 US5900881A (en) 1995-03-22 1996-11-20 Computer graphics circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10290495A JPH08263694A (ja) 1995-03-22 1995-03-22 バンプマップシェーディング回路

Publications (1)

Publication Number Publication Date
JPH08263694A true JPH08263694A (ja) 1996-10-11

Family

ID=14339853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10290495A Pending JPH08263694A (ja) 1995-03-22 1995-03-22 バンプマップシェーディング回路

Country Status (1)

Country Link
JP (1) JPH08263694A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09167255A (ja) * 1995-11-09 1997-06-24 Samsung Electron Co Ltd バンプマッピングとポンシェーディングを選択的に行う実時間レンダリング方法及び装置
US6340974B1 (en) 1997-12-22 2002-01-22 Shima Seiki Manufacturing, Ltd. Three-dimensional image processing apparatus with bump image modification

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09167255A (ja) * 1995-11-09 1997-06-24 Samsung Electron Co Ltd バンプマッピングとポンシェーディングを選択的に行う実時間レンダリング方法及び装置
US6340974B1 (en) 1997-12-22 2002-01-22 Shima Seiki Manufacturing, Ltd. Three-dimensional image processing apparatus with bump image modification

Similar Documents

Publication Publication Date Title
US20230053462A1 (en) Image rendering method and apparatus, device, medium, and computer program product
Buss 3D computer graphics: a mathematical introduction with OpenGL
Hughes Computer graphics: principles and practice
Catmull Computer display of curved surfaces
Bishop et al. Fast phong shading
US7212207B2 (en) Method and apparatus for real-time global illumination incorporating stream processor based hybrid ray tracing
US6031542A (en) Image processing method and arrangement for the display of reflective objects
US5900881A (en) Computer graphics circuit
US7212206B2 (en) Method and apparatus for self shadowing and self interreflection light capture
US7102647B2 (en) Interactive horizon mapping
JP3037455B2 (ja) 表示装置及び表示方法
TW411431B (en) Anisotropic texture mapping using silhouette/footprint analysis in a computer image generation system
US8860764B2 (en) Implementing and interpolating rotations from a computing input device
US20060061585A1 (en) View dependent tiled textures
EP1704535B1 (en) Method of rendering graphical objects
Buss 3-D Computer Graphics
JPH08263694A (ja) バンプマップシェーディング回路
JPH07282292A (ja) テクスチャマッピング方法及び画像処理装置
KR100848687B1 (ko) 3차원 그래픽 처리 장치 및 그것의 동작 방법
JP3733502B2 (ja) バンプマップシェーディング回路
JPH08263691A (ja) バンプマップ回路
JPH11306366A (ja) グラフィック演算装置およびその方法
WO1996029681A1 (fr) Circuit d'infographie
JP2000057372A (ja) 画像処理装置、画像処理方法及び記憶媒体
JPH09114994A (ja) 画像作成装置および方法