JPH0247784A - 図形シェーディング装置 - Google Patents
図形シェーディング装置Info
- Publication number
- JPH0247784A JPH0247784A JP19726588A JP19726588A JPH0247784A JP H0247784 A JPH0247784 A JP H0247784A JP 19726588 A JP19726588 A JP 19726588A JP 19726588 A JP19726588 A JP 19726588A JP H0247784 A JPH0247784 A JP H0247784A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- normal
- vectors
- normal vector
- inner product
- 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
Links
- 239000013598 vector Substances 0.000 claims abstract description 92
- 238000004364 calculation method Methods 0.000 claims abstract description 56
- 239000003086 colorant Substances 0.000 abstract 1
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000009792 diffusion process Methods 0.000 description 7
- 238000007792 addition Methods 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 5
- 102000019063 CCAAT-Binding Factor Human genes 0.000 description 2
- 108010026988 CCAAT-Binding Factor Proteins 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 241000212384 Bifora Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004438 eyesight Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Image Generation (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
(概要)
三次元図形の表示処理にあたり、表示図形に陰影付けを
行なう図形シェーディング装置に関し、図形表示処理の
高速化を目的とし、 表示装置のスキャンライン上の各画素の輝度を対応する
表示三次元図形の各点における法線方向と光源方向と視
点方向の相互関係を表わすベクトルの内積の関数として
算出してシェーディングを行なう図形シェーディング装
置において、三次元の表示図形を近似する多角形のパッ
チ群の各多角形を前記スキャンラインに沿った線分列に
分解し、その線分の両端点の法線ベクトルの夫々既知の
二点の法線ベクトルをもとにパラメトリック曲線を用い
て補間した法線ベクトルを、階差を利用して演算生成す
る第1の演算手段と、前記光源方向に向かうベクトルと
眞記視点方向に向かうベクトルどを夫々一定のベクトル
とみなしてそれらのベクトルと前記補間した線分の両端
点の法線ベクトルをさらに補間した法線ベクトルとの内
積をn次多項式(ただし、nは2以上の整数)により演
算生成する第2の演算手段と、前記第2の演算手段の出
力データに基づいて前記表示三次元図形の各点の色計算
を行ない、その計算結果を前記表示装置へ出力する色計
算手段とを具備するよう構成する。 〔産業上の利用分野〕 本発明は図形シェーディング装置に係り、特に三次元図
形の表示処理にあたり、表示図形に陰影付けを行なう図
形シェーディング装置に関する。 〔従来の技術〕 グラフィック表示装置において、三次元図形を表示処理
する際に、より自然な表示とするために適当な反射モデ
ルによる陰影付け(シェーディング)を行なって図形内
の各点の色を求めることは従来より周知である。 例えば、第5図に示す如く色計算を行なう図形表面の点
Pにおける、面の単位法線ベクトルをN1点Pから光源
へ向かう単位ベクトルをし、点Pから視点へ向かう単位
ベクトルをEとし、また最大のハイライトを生む面の単
位方向ベクトルを11とすると、視点における光の強度
Cは次式で表わされることが知られている(Blinn
、 JarRes F“Models of Re
flection for Computer 5y−
nthesized P 1ctures”、S IG
GRAPH1977Proceeding 、 ACM
Con+puter Graphi−C3,11(
2)、 +11)、 192〜198)。 C= I aKa+ I o (Kd (N −L
)+Ks(N−H)”)
(1)ただし、187周辺からの環境光の強
度■p:光源からの光の強度 Ka:環境反射係数 Kd:拡散反射係数 KS:鏡面反射係数 n:鏡面指数(物体の表面の滑らか さに依存する4で、数」−から数 百の間の値) なお、(1)式中(・)は内積を表わす。また方向ベク
トルHは単位ベクトルLとEの方向を2等分するから H= (L+E)/ (l L+E I ) ■で
表わされる。 また、上記の拡散反射は光沢のない表面のようにすべて
の方向に等しく光を散発させる環象で、すべての視覚か
らその表面が同じ明るさをもつように見える。更に上記
の鏡面反射は輝く面で見られ、ハイライトを生じる。 ところで、曲面で囲まれた三次元の表示物体はまず多角
形のバッチ群に近似されてから処理されるのが一般的で
ある。多角形の各頂点には隣接する多角形の法線ベクト
ルの平均によって、頂点の法線ベクトルが与えられる。 このとき、多角形の内部の点における光の強度を算出す
る方法としてフオツク(Phong)が提案した法線補
間シェーディング法が知られている([3ui−Tuo
ng Phong。 “I llumination for Comput
er GeneratedPictures ” 、
Communications of ACM、
18 (6) 、 June 1975. pp、31
1〜317)。 この法線補間シェーディング法は別名7オング・シェー
ディングと呼ばれ、各頂点の法線を用いて補間すること
により、多角形内部の点における法線を求め、(1)式
を評価するものである。一般に多角形などの面図形は、
2次元の拡がりを持つため、内部の点における法線を求
めるには2回の補間を必要とする。具体的な補間方法と
して、フオツクは第6図に示す如く多角形の2つの頂点
P+。 P2における法線ベクトルN+ 、N2間の法線を補間
するのに線型補間を用いることを提案している。 この補間方法は金属などの物体にみられるハイライトを
うまく表現できる反面、計i1Mが多い。 例えば、前記(1)式の内積計算を7オングの補間方法
で行なう場合、内積(N−H)の計算は、1 (t)=
H−N (t) =H・((1−j)N+ +tN2)/(1−t)N+
+tN2 = ((1−j)H−N+ +tH−N2)((1−j
)N+ +tNz ) ■となり、各画素に
対して加算7回、乗n6回、除算1回、ルート計算1回
を必要とする。なお、前記1=0のとき第6図の法線ベ
クトルN1を示し、t=1のとき法線ベクトルN2を示
す。 そこで、ダフ(Duff )により法線補間シェーディ
ングの高速化の方法が提案された(Quff。 Tom、 ”3moothly 5haded
Renderings ofPolyaonal
0bjects on Ra5ter Displa
ys”S f GGRAPH1979Proceedi
ng 、ACMComputer Graphics
、 13 (2) 、 Do、 270〜2
75)。このダフの計算方法によれば、3式を更に変形
し、 1 (t)= ((1−t)H−N+ +tH−Nz
)とし、分母のルートの内部と分子に対して階差を利用
した前進差分を用いることにより、加算3回、除算1回
、ルート計算1回で内積(N−H)の計暮ができるよう
にした。 他方、多角形を三角形に限定した場合を例にとって、テ
ーラ−展開を用いた簡略な針幹方法も提案された(31
shop 、 Gary and Weimer 、
1)a−vid M、、 ” Fast phong
5hadina” 、 S I G −GRAPH1
986ProceediniJ 、 ACM Com
−puter Graphics 、 20 (4)、
Op、 103〜106)。 この方法は多角形内の一点における法線ベクトルをx、
yの2変数関数 N (x、y) −Ax+By+C■ と表わし、内積(N−H)を 1(X、V)=H−((AX+BV+C)/lAX+B
Y+C1) = (ax+by+c)/E■1了 +exy+fy2+g×+hy+1 とする。ただし、 T+ = (2b 1−ch)/2 i (7To=
C/f1 の形にする。実際に各画素での値を求めるには、Xとy
の片方を固定して1変数関数として扱う。 すなわち、1本の走査線上の画素ではyの値が一定で、
Xが1ずつ増加するだけなので、上式をXの2次式とみ
なせば、やはり階差を利用することで1画素あたり2回
の加算で計算できる。 である。これをテーラ−展開して、 1 (X、 !1/)=TS X2+T4 XV+T3
V2十T2 X+T+ V 十 TO Ts=(3iG2−4cdi−4agi)/B’12(
下 T4 = (3cgh−2ce il−2b i −2
ah i )/412rT T3 = (3Ch2−4cf 1−4bh i )/
8r2(丁 T2=(2ai−cG)/2iF下 (発明が解決しようとする課題) しかし、前記した(4)式に基づくダフの計算方法によ
る従来方式は、(4)式かられかるように依然として除
算やルート計算は残っており、かなりの処理時間を必要
とし、また前記したビショップ他によるプーラ−展開を
利用した計算方法による従来方式も定数を求めるまでの
計算が煩雑であり、処理の高速化が不十分であった。 本発明は上記の点に鑑みてなされたもので、図形表示処
理の高速化ができる図形シェーディング装置を提供する
ことを目的とする。 (課題を解決するための手段) 第1図は本発明の原理ブロック図を示づ。図中、1は表
示装置で、三次元図形を表示する。2は第1の演算手段
で、図形上の既知の2点の法ねベクトルN+ 、N2を
もとにパラメトリック曲線を用いて、スキ11ンライン
に沿って分解された各多角形の線分の両端点大々の補間
した法線ベクトルNを、階差を利用して演算生成する。 3は第2の演算手段で、光源方向に向かうベクトルと視
点方向に向かうベクトルとを夫々一定のベクトルとみな
してそれらのベクトルとスキャンラインに沿って分解さ
れた線分の両端点で補間された法線ベクトルNを更に補
間した法線ベクトル扇との内積をn次多項式(ただし、
nは2以上の整数)により演算生成する。 4は色計算手段で、表示三次元図形の各点の色計算を行
ない、その計算結果を表示装置1へ出力する。 〔作用〕 表示されるべき図形の法線ベクトルは第1の演算手段2
に供給され、ここで補間される。すなわち、第2図に示
す如く、前記既知の二点の法線ベクトル正と精を互いに
移動して原点Oを共有するように表わし、またN1とN
2を座標値として持つ点をQ。、Q2とし、この間に適
当な制御点Q1を設定した後、これらに基づいて擬似的
にパラメトリック曲線Iを発生させる。 このパラメトリック曲線上に座標値P(t)をもつベク
トル成分を補間された法線ベクトルNとする。この補間
された法線ベクトルNは蚤よぼ単位ベクトルとみなし、
正規化処理は行なわれない。 実際補間された法線の長さの誤差は、N+。 扇の間の角が30”のとき0.01%と充分無視できる
。また誤差は長さが短くなる方にずれるため(1)式に
おいてn乗した結果がオーバーフローする心配もない。 この法線ベクトルNは階差を利用して第1の演算手段2
により演算生成される。 この補間された法線ベクトルNは各点の座標値と共に第
2の演算手段3に供給され、ここでスキャンラインで分
解された線分(例えば第7図のEF)上で内積の補間を
行なわれる。すなわち、前記光源方向に向かうベクトル
(光源ベクトル)と前記視点方向に向かうベクトル(視
点ベクトル)とは、光源や視点が多角形の大きさに比べ
て十分遠くにあると仮定すると、1個の多角形の描画に
おいては一定のベクトルとみなせるので、曲線の式に組
込むことで、光源ベクトルとスキャンラインに沿って分
解された線分上で補間された法線ベクトルN(第7図の
NE又はNp)を更に補間した法線ベクトルNpとの内
積及び視点ベクトルと補間された法線ベクトルNpとの
内積をn次多項式で表現できる。 このようにして計算された内積を示すデータは色計算手
段4に供給され、ここで、表示三次元図形の各点の色計
算を行なわれた後表示装置1に供給され、シェーディン
グの施されたカラー図形として表示される。 上記第1及び第2の演算手段2及び3の演算は階差を用
いたり、光源ベクトルや視点ベクトルを一定とみなすこ
とにより、演算回数を削減することができる。 〔実施例〕 第3図は本発明の一実施例のブロック図を示す。 同図中、第1図と同一構成部分には同一符号を付し、そ
の説明を省略する。第3図において、ポストコンピュー
タ(図示せず)から、近似多面体の各頂点の座標と法線
ベクトルに関するデータが入力端子6を介して座標変換
部7に供給され、ここで、必要に応じて図形の拡大、縮
小、回転、平行移動等のための座標変換処理が行なわれ
た後、面塗り部8に供給される。血塗り部8は第3図に
示す如く端点生成部81.法線補間部82からなる。 端点生成部81は各多角形をスキャンラインに沿った線
分列に分解し、それらの各線分の両端点のx、y座標を
夫々算出する。法線補間部82は、各線分の両端点の法
線をそれぞれ2次ベッツエ曲線を用いて補間する。 これは第7図において、多角形ABCDとあるスキャン
ラインとの交線に相当する線分EFを求め、同時に、一
方の端点Eにおける法線NEを多角形の2つの頂点A、
Bにおける補間すべき法線ベクトルNA、NBから2次
ベツツエ曲線を用いて補間し、また同様に、他方の端点
Fにおける法Nil N Fを多角形の2つの頂点C,
Dにおける補間すべき法線ベクトルNc、Noから2次
ベツツエ曲線を用いて補間することを意味する。 個々の補間を行なうため第4図に示す如く、色計算を行
なう2つの頂点(第7図のA、BまたはC,Dに相当)
夫々における補間すべき法線ベクとする。従って、 NH= (Nl +N2 )/ l Nl +
N2 1 (7)である。なお、第4図は2つの
法線ベクトルNN2を移動して互いに原点Oを共有する
ように図示しである。 次にこの3本のベクトルN+ 、N2及びNl−+の成
分を座標値として持つ点を夫々第4図に示す如<Qo
、Q2 、Mとする。すなわち、一方、変数tがOのと
き上記点Qoを通り、虹が1のとき上記点Q1を通る2
次のペッツ1曲線P(t)は、点Qo及びQlと更に1
つの制御点Q2より次式で表わされる。 P (j)= (1t)2Qo +2 (1−t)tQ
++t2Q2 (9) t=0.5のときMを通るように条件をつけて未知なる
点Q1を求める。 M= 0.25 Qo + 0.5Q+ + 0.25
Q2Q+ =2M −0,5Qo −0,5Q2
(10)ここで、N+=(ax ay a
z)、N2=(bx by bz)とすると、 となる。 このようにして、制御点Q1が求まったならば、これを
0)式に代入してP(t)を求める。 なので、 (az +bz ) 2 となる。 例えば、x+=r、(υ2 −0.5 0)。 Nz = (i2 0.5 0) ノll、t(12
)弐及ヒ(13)式に多値を代入すると、 k=r丁 このP(t)の座標値を成分とするのが、補間された法
線ベクトルN(第7図のNEまたはNF)となる。 (14)式は乗算、除算、加算を行なうが、実際は階差
を用いて演鋒橋を削減する。階差は公知であり(例えば
、
行なう図形シェーディング装置に関し、図形表示処理の
高速化を目的とし、 表示装置のスキャンライン上の各画素の輝度を対応する
表示三次元図形の各点における法線方向と光源方向と視
点方向の相互関係を表わすベクトルの内積の関数として
算出してシェーディングを行なう図形シェーディング装
置において、三次元の表示図形を近似する多角形のパッ
チ群の各多角形を前記スキャンラインに沿った線分列に
分解し、その線分の両端点の法線ベクトルの夫々既知の
二点の法線ベクトルをもとにパラメトリック曲線を用い
て補間した法線ベクトルを、階差を利用して演算生成す
る第1の演算手段と、前記光源方向に向かうベクトルと
眞記視点方向に向かうベクトルどを夫々一定のベクトル
とみなしてそれらのベクトルと前記補間した線分の両端
点の法線ベクトルをさらに補間した法線ベクトルとの内
積をn次多項式(ただし、nは2以上の整数)により演
算生成する第2の演算手段と、前記第2の演算手段の出
力データに基づいて前記表示三次元図形の各点の色計算
を行ない、その計算結果を前記表示装置へ出力する色計
算手段とを具備するよう構成する。 〔産業上の利用分野〕 本発明は図形シェーディング装置に係り、特に三次元図
形の表示処理にあたり、表示図形に陰影付けを行なう図
形シェーディング装置に関する。 〔従来の技術〕 グラフィック表示装置において、三次元図形を表示処理
する際に、より自然な表示とするために適当な反射モデ
ルによる陰影付け(シェーディング)を行なって図形内
の各点の色を求めることは従来より周知である。 例えば、第5図に示す如く色計算を行なう図形表面の点
Pにおける、面の単位法線ベクトルをN1点Pから光源
へ向かう単位ベクトルをし、点Pから視点へ向かう単位
ベクトルをEとし、また最大のハイライトを生む面の単
位方向ベクトルを11とすると、視点における光の強度
Cは次式で表わされることが知られている(Blinn
、 JarRes F“Models of Re
flection for Computer 5y−
nthesized P 1ctures”、S IG
GRAPH1977Proceeding 、 ACM
Con+puter Graphi−C3,11(
2)、 +11)、 192〜198)。 C= I aKa+ I o (Kd (N −L
)+Ks(N−H)”)
(1)ただし、187周辺からの環境光の強
度■p:光源からの光の強度 Ka:環境反射係数 Kd:拡散反射係数 KS:鏡面反射係数 n:鏡面指数(物体の表面の滑らか さに依存する4で、数」−から数 百の間の値) なお、(1)式中(・)は内積を表わす。また方向ベク
トルHは単位ベクトルLとEの方向を2等分するから H= (L+E)/ (l L+E I ) ■で
表わされる。 また、上記の拡散反射は光沢のない表面のようにすべて
の方向に等しく光を散発させる環象で、すべての視覚か
らその表面が同じ明るさをもつように見える。更に上記
の鏡面反射は輝く面で見られ、ハイライトを生じる。 ところで、曲面で囲まれた三次元の表示物体はまず多角
形のバッチ群に近似されてから処理されるのが一般的で
ある。多角形の各頂点には隣接する多角形の法線ベクト
ルの平均によって、頂点の法線ベクトルが与えられる。 このとき、多角形の内部の点における光の強度を算出す
る方法としてフオツク(Phong)が提案した法線補
間シェーディング法が知られている([3ui−Tuo
ng Phong。 “I llumination for Comput
er GeneratedPictures ” 、
Communications of ACM、
18 (6) 、 June 1975. pp、31
1〜317)。 この法線補間シェーディング法は別名7オング・シェー
ディングと呼ばれ、各頂点の法線を用いて補間すること
により、多角形内部の点における法線を求め、(1)式
を評価するものである。一般に多角形などの面図形は、
2次元の拡がりを持つため、内部の点における法線を求
めるには2回の補間を必要とする。具体的な補間方法と
して、フオツクは第6図に示す如く多角形の2つの頂点
P+。 P2における法線ベクトルN+ 、N2間の法線を補間
するのに線型補間を用いることを提案している。 この補間方法は金属などの物体にみられるハイライトを
うまく表現できる反面、計i1Mが多い。 例えば、前記(1)式の内積計算を7オングの補間方法
で行なう場合、内積(N−H)の計算は、1 (t)=
H−N (t) =H・((1−j)N+ +tN2)/(1−t)N+
+tN2 = ((1−j)H−N+ +tH−N2)((1−j
)N+ +tNz ) ■となり、各画素に
対して加算7回、乗n6回、除算1回、ルート計算1回
を必要とする。なお、前記1=0のとき第6図の法線ベ
クトルN1を示し、t=1のとき法線ベクトルN2を示
す。 そこで、ダフ(Duff )により法線補間シェーディ
ングの高速化の方法が提案された(Quff。 Tom、 ”3moothly 5haded
Renderings ofPolyaonal
0bjects on Ra5ter Displa
ys”S f GGRAPH1979Proceedi
ng 、ACMComputer Graphics
、 13 (2) 、 Do、 270〜2
75)。このダフの計算方法によれば、3式を更に変形
し、 1 (t)= ((1−t)H−N+ +tH−Nz
)とし、分母のルートの内部と分子に対して階差を利用
した前進差分を用いることにより、加算3回、除算1回
、ルート計算1回で内積(N−H)の計暮ができるよう
にした。 他方、多角形を三角形に限定した場合を例にとって、テ
ーラ−展開を用いた簡略な針幹方法も提案された(31
shop 、 Gary and Weimer 、
1)a−vid M、、 ” Fast phong
5hadina” 、 S I G −GRAPH1
986ProceediniJ 、 ACM Com
−puter Graphics 、 20 (4)、
Op、 103〜106)。 この方法は多角形内の一点における法線ベクトルをx、
yの2変数関数 N (x、y) −Ax+By+C■ と表わし、内積(N−H)を 1(X、V)=H−((AX+BV+C)/lAX+B
Y+C1) = (ax+by+c)/E■1了 +exy+fy2+g×+hy+1 とする。ただし、 T+ = (2b 1−ch)/2 i (7To=
C/f1 の形にする。実際に各画素での値を求めるには、Xとy
の片方を固定して1変数関数として扱う。 すなわち、1本の走査線上の画素ではyの値が一定で、
Xが1ずつ増加するだけなので、上式をXの2次式とみ
なせば、やはり階差を利用することで1画素あたり2回
の加算で計算できる。 である。これをテーラ−展開して、 1 (X、 !1/)=TS X2+T4 XV+T3
V2十T2 X+T+ V 十 TO Ts=(3iG2−4cdi−4agi)/B’12(
下 T4 = (3cgh−2ce il−2b i −2
ah i )/412rT T3 = (3Ch2−4cf 1−4bh i )/
8r2(丁 T2=(2ai−cG)/2iF下 (発明が解決しようとする課題) しかし、前記した(4)式に基づくダフの計算方法によ
る従来方式は、(4)式かられかるように依然として除
算やルート計算は残っており、かなりの処理時間を必要
とし、また前記したビショップ他によるプーラ−展開を
利用した計算方法による従来方式も定数を求めるまでの
計算が煩雑であり、処理の高速化が不十分であった。 本発明は上記の点に鑑みてなされたもので、図形表示処
理の高速化ができる図形シェーディング装置を提供する
ことを目的とする。 (課題を解決するための手段) 第1図は本発明の原理ブロック図を示づ。図中、1は表
示装置で、三次元図形を表示する。2は第1の演算手段
で、図形上の既知の2点の法ねベクトルN+ 、N2を
もとにパラメトリック曲線を用いて、スキ11ンライン
に沿って分解された各多角形の線分の両端点大々の補間
した法線ベクトルNを、階差を利用して演算生成する。 3は第2の演算手段で、光源方向に向かうベクトルと視
点方向に向かうベクトルとを夫々一定のベクトルとみな
してそれらのベクトルとスキャンラインに沿って分解さ
れた線分の両端点で補間された法線ベクトルNを更に補
間した法線ベクトル扇との内積をn次多項式(ただし、
nは2以上の整数)により演算生成する。 4は色計算手段で、表示三次元図形の各点の色計算を行
ない、その計算結果を表示装置1へ出力する。 〔作用〕 表示されるべき図形の法線ベクトルは第1の演算手段2
に供給され、ここで補間される。すなわち、第2図に示
す如く、前記既知の二点の法線ベクトル正と精を互いに
移動して原点Oを共有するように表わし、またN1とN
2を座標値として持つ点をQ。、Q2とし、この間に適
当な制御点Q1を設定した後、これらに基づいて擬似的
にパラメトリック曲線Iを発生させる。 このパラメトリック曲線上に座標値P(t)をもつベク
トル成分を補間された法線ベクトルNとする。この補間
された法線ベクトルNは蚤よぼ単位ベクトルとみなし、
正規化処理は行なわれない。 実際補間された法線の長さの誤差は、N+。 扇の間の角が30”のとき0.01%と充分無視できる
。また誤差は長さが短くなる方にずれるため(1)式に
おいてn乗した結果がオーバーフローする心配もない。 この法線ベクトルNは階差を利用して第1の演算手段2
により演算生成される。 この補間された法線ベクトルNは各点の座標値と共に第
2の演算手段3に供給され、ここでスキャンラインで分
解された線分(例えば第7図のEF)上で内積の補間を
行なわれる。すなわち、前記光源方向に向かうベクトル
(光源ベクトル)と前記視点方向に向かうベクトル(視
点ベクトル)とは、光源や視点が多角形の大きさに比べ
て十分遠くにあると仮定すると、1個の多角形の描画に
おいては一定のベクトルとみなせるので、曲線の式に組
込むことで、光源ベクトルとスキャンラインに沿って分
解された線分上で補間された法線ベクトルN(第7図の
NE又はNp)を更に補間した法線ベクトルNpとの内
積及び視点ベクトルと補間された法線ベクトルNpとの
内積をn次多項式で表現できる。 このようにして計算された内積を示すデータは色計算手
段4に供給され、ここで、表示三次元図形の各点の色計
算を行なわれた後表示装置1に供給され、シェーディン
グの施されたカラー図形として表示される。 上記第1及び第2の演算手段2及び3の演算は階差を用
いたり、光源ベクトルや視点ベクトルを一定とみなすこ
とにより、演算回数を削減することができる。 〔実施例〕 第3図は本発明の一実施例のブロック図を示す。 同図中、第1図と同一構成部分には同一符号を付し、そ
の説明を省略する。第3図において、ポストコンピュー
タ(図示せず)から、近似多面体の各頂点の座標と法線
ベクトルに関するデータが入力端子6を介して座標変換
部7に供給され、ここで、必要に応じて図形の拡大、縮
小、回転、平行移動等のための座標変換処理が行なわれ
た後、面塗り部8に供給される。血塗り部8は第3図に
示す如く端点生成部81.法線補間部82からなる。 端点生成部81は各多角形をスキャンラインに沿った線
分列に分解し、それらの各線分の両端点のx、y座標を
夫々算出する。法線補間部82は、各線分の両端点の法
線をそれぞれ2次ベッツエ曲線を用いて補間する。 これは第7図において、多角形ABCDとあるスキャン
ラインとの交線に相当する線分EFを求め、同時に、一
方の端点Eにおける法線NEを多角形の2つの頂点A、
Bにおける補間すべき法線ベクトルNA、NBから2次
ベツツエ曲線を用いて補間し、また同様に、他方の端点
Fにおける法Nil N Fを多角形の2つの頂点C,
Dにおける補間すべき法線ベクトルNc、Noから2次
ベツツエ曲線を用いて補間することを意味する。 個々の補間を行なうため第4図に示す如く、色計算を行
なう2つの頂点(第7図のA、BまたはC,Dに相当)
夫々における補間すべき法線ベクとする。従って、 NH= (Nl +N2 )/ l Nl +
N2 1 (7)である。なお、第4図は2つの
法線ベクトルNN2を移動して互いに原点Oを共有する
ように図示しである。 次にこの3本のベクトルN+ 、N2及びNl−+の成
分を座標値として持つ点を夫々第4図に示す如<Qo
、Q2 、Mとする。すなわち、一方、変数tがOのと
き上記点Qoを通り、虹が1のとき上記点Q1を通る2
次のペッツ1曲線P(t)は、点Qo及びQlと更に1
つの制御点Q2より次式で表わされる。 P (j)= (1t)2Qo +2 (1−t)tQ
++t2Q2 (9) t=0.5のときMを通るように条件をつけて未知なる
点Q1を求める。 M= 0.25 Qo + 0.5Q+ + 0.25
Q2Q+ =2M −0,5Qo −0,5Q2
(10)ここで、N+=(ax ay a
z)、N2=(bx by bz)とすると、 となる。 このようにして、制御点Q1が求まったならば、これを
0)式に代入してP(t)を求める。 なので、 (az +bz ) 2 となる。 例えば、x+=r、(υ2 −0.5 0)。 Nz = (i2 0.5 0) ノll、t(12
)弐及ヒ(13)式に多値を代入すると、 k=r丁 このP(t)の座標値を成分とするのが、補間された法
線ベクトルN(第7図のNEまたはNF)となる。 (14)式は乗算、除算、加算を行なうが、実際は階差
を用いて演鋒橋を削減する。階差は公知であり(例えば
、
【山口富士夫、[コンピュータデイスプレィによる形
状処理工学(I)J、pp、36〜382日刊工業新聞
社】を必要とあれば参照されたい。)、その詳細な説明
は省略するが、tの変域をm等分し、差分演算を利用す
ることにより、全く乗算、除算を用いることなく各画素
について2回の加算だけで補間された法線ベクトルNの
各成分P(t)を計算できる。 このようにして法線補間部82で演算生成された線分E
Fの両端点における法線ベクトルNE。 NFは線分の両端点の座標データE、Fと共に、第3図
に示すディジタル微分解析部(DDA:D−igita
l Qifferential Analyser
> 9に供給される。DDA部9は第3図に示す如く座
標算出部10、拡散計算用内積(N−1−)生成部11
.鏡面計算用内積(N・ト1)生成部12からなる。 座標算出部10は線分EF上の点PのX、Y座標を夫々
算出する。また、拡散計算用内81i(N・L)生成部
11及び鏡面計算用内積(N−H)生成部12は点Pに
おける夫々(1)式の内積(Np・L)及び(NP−H
)を夫々ベクトルの多項式関数として生成する。 すなわち、本実施例では多角形の大ぎさに比べて光源は
十分遠くにあるものとし、多角形内で光源へ向かう単位
ベクトルLは平行とみなす。また、多病形の大ぎさに比
べて視点も十分に遠くにあるものとし、多角形内で視点
へ向かう単位ベクトルEも平行とみなす。従って、この
ような仮定の下では上記の光源ベクトルL及び視点ベク
トルEは夫々一定とみなすことができる。この近似は、
ダフ(Du「「)やビショップ(B 1shop)(t
!lによる論文に記されているとおり、従来性なわれて
いるものである。この夫々の内偵の生成も2次ペッツ1
111線の考えを用いて、線分の両端点における、法線
ベクトルNE、NFより2次多項式にて算出する。 すなわち、(1)式の内積計算は(Np ・1」)を例
にとると Ip (t)=H−Np = (1−t)2 ・(HXNEX +Hy NE v +Hz NE z )+2 (1−
t)・t・(2/に−0,5)(HX (NE x +
NF x ) 十I−IY (NE Y +NF Y )十H2(NE
Z+NFZ))+(1−t)2(Hx NF x +H
v NF Y +Hz −NF z )と2次の多
項式で表現できる。この計算は階差を利用することによ
り、2回の加算のみで各画素における内積(N−H)を
求めることができ、0式及び(4)式に示した従来方法
に比べて大幅に1惇時間を短縮化できる。 このような内積の補間を行なって拡散計算用内積(N−
1)生成部11で生成された内積(Np・L)の演算結
果は、第3図に示す赤色信号用拡散色計算部13R9緑
色信号用拡散色計算部13G及び青色信号用拡散色計算
部13.8に夫々供給され、ここで3原色信号R,G、
Bの各々について前記(1)式のIp−Kdとの乗算が
行なわれると共に、■aKaσ乗算結果も得られる。 また、(15)式に基づき階差を利用して鏡面計算用内
積(N−H)生成部12で生成された内積(Np・ト1
)の演算結果は、更に(Np−1−1>1とされた後、
赤色信号用鏡面色計算部14R1緑色信号用鏡面色計算
部14G及び青色信号用鏡面色計算部14Bに夫々供給
され、ここで3原色信号lで、G、Bの各々について前
記(1)式のto・Ksとの乗算が行なわれる。 拡散色計算部13Rと鏡面色計算部14Rの再出力信号
は加算部15Rに供給され、ここで(1)式に基づく視
点における光のIa度Cを示す信号のうち赤色信号成分
が生成される。同様にして、加算部15Gは拡散色84
惇部13Gと鏡面色計算部14Gの再出力信号を加算し
て上記光の強ICを示す緑色信号成分を生成し、加算部
15Bは拡散色計算部13Bと鏡面色計算部14Bの再
出力信号を加算して上記光の強度Cを示すn色信号成分
を生成する。 加算部15R,15G及び15Bの各出力信号は夫々フ
レームバッファ16R,16G及び16Bに並列に供給
され、前記座標算出部10よりの算出座標値に対応した
アドレスに府込まれる。 このようにして、フレームバッファ16R916G及び
16Bの夫々には、一画面分の三次元図形のシェーディ
ング処理の施された赤色信号用画素データ、緑色信号用
画素データ及び青色信号用画素データが格納され、それ
らの画素データはD/A変換器17R,17G及び17
Bによりアナログ信号に変換された後陰極線管(CRT
)18に供給される。これにより、CRT18にシェー
ディング処理の施された三次元図形のカラー画像表示が
行なわれる。 なお、端点生成部81.座標算出部10においてZ座標
も算出してもよく、その場合は陰面消去ができる。 〔発明の効果〕 上述の如く、本発明によれば、多角形をスキセンライン
に沿って分解した線分列の夫々の両端点における法線ベ
クトルの補間をパラメトリックな曲線に基づいて階差を
用いて算出すると共に、線分上の各点における内積の演
算もパラメトリックな曲線に基づいた多項式を階差を用
いて算出しているので従来に比べて少ない演算量にて法
線の補間及び内積の計算ができ、よってシェーディング
処理の高速化を実現することができる等の特長を有する
ものである。
状処理工学(I)J、pp、36〜382日刊工業新聞
社】を必要とあれば参照されたい。)、その詳細な説明
は省略するが、tの変域をm等分し、差分演算を利用す
ることにより、全く乗算、除算を用いることなく各画素
について2回の加算だけで補間された法線ベクトルNの
各成分P(t)を計算できる。 このようにして法線補間部82で演算生成された線分E
Fの両端点における法線ベクトルNE。 NFは線分の両端点の座標データE、Fと共に、第3図
に示すディジタル微分解析部(DDA:D−igita
l Qifferential Analyser
> 9に供給される。DDA部9は第3図に示す如く座
標算出部10、拡散計算用内積(N−1−)生成部11
.鏡面計算用内積(N・ト1)生成部12からなる。 座標算出部10は線分EF上の点PのX、Y座標を夫々
算出する。また、拡散計算用内81i(N・L)生成部
11及び鏡面計算用内積(N−H)生成部12は点Pに
おける夫々(1)式の内積(Np・L)及び(NP−H
)を夫々ベクトルの多項式関数として生成する。 すなわち、本実施例では多角形の大ぎさに比べて光源は
十分遠くにあるものとし、多角形内で光源へ向かう単位
ベクトルLは平行とみなす。また、多病形の大ぎさに比
べて視点も十分に遠くにあるものとし、多角形内で視点
へ向かう単位ベクトルEも平行とみなす。従って、この
ような仮定の下では上記の光源ベクトルL及び視点ベク
トルEは夫々一定とみなすことができる。この近似は、
ダフ(Du「「)やビショップ(B 1shop)(t
!lによる論文に記されているとおり、従来性なわれて
いるものである。この夫々の内偵の生成も2次ペッツ1
111線の考えを用いて、線分の両端点における、法線
ベクトルNE、NFより2次多項式にて算出する。 すなわち、(1)式の内積計算は(Np ・1」)を例
にとると Ip (t)=H−Np = (1−t)2 ・(HXNEX +Hy NE v +Hz NE z )+2 (1−
t)・t・(2/に−0,5)(HX (NE x +
NF x ) 十I−IY (NE Y +NF Y )十H2(NE
Z+NFZ))+(1−t)2(Hx NF x +H
v NF Y +Hz −NF z )と2次の多
項式で表現できる。この計算は階差を利用することによ
り、2回の加算のみで各画素における内積(N−H)を
求めることができ、0式及び(4)式に示した従来方法
に比べて大幅に1惇時間を短縮化できる。 このような内積の補間を行なって拡散計算用内積(N−
1)生成部11で生成された内積(Np・L)の演算結
果は、第3図に示す赤色信号用拡散色計算部13R9緑
色信号用拡散色計算部13G及び青色信号用拡散色計算
部13.8に夫々供給され、ここで3原色信号R,G、
Bの各々について前記(1)式のIp−Kdとの乗算が
行なわれると共に、■aKaσ乗算結果も得られる。 また、(15)式に基づき階差を利用して鏡面計算用内
積(N−H)生成部12で生成された内積(Np・ト1
)の演算結果は、更に(Np−1−1>1とされた後、
赤色信号用鏡面色計算部14R1緑色信号用鏡面色計算
部14G及び青色信号用鏡面色計算部14Bに夫々供給
され、ここで3原色信号lで、G、Bの各々について前
記(1)式のto・Ksとの乗算が行なわれる。 拡散色計算部13Rと鏡面色計算部14Rの再出力信号
は加算部15Rに供給され、ここで(1)式に基づく視
点における光のIa度Cを示す信号のうち赤色信号成分
が生成される。同様にして、加算部15Gは拡散色84
惇部13Gと鏡面色計算部14Gの再出力信号を加算し
て上記光の強ICを示す緑色信号成分を生成し、加算部
15Bは拡散色計算部13Bと鏡面色計算部14Bの再
出力信号を加算して上記光の強度Cを示すn色信号成分
を生成する。 加算部15R,15G及び15Bの各出力信号は夫々フ
レームバッファ16R,16G及び16Bに並列に供給
され、前記座標算出部10よりの算出座標値に対応した
アドレスに府込まれる。 このようにして、フレームバッファ16R916G及び
16Bの夫々には、一画面分の三次元図形のシェーディ
ング処理の施された赤色信号用画素データ、緑色信号用
画素データ及び青色信号用画素データが格納され、それ
らの画素データはD/A変換器17R,17G及び17
Bによりアナログ信号に変換された後陰極線管(CRT
)18に供給される。これにより、CRT18にシェー
ディング処理の施された三次元図形のカラー画像表示が
行なわれる。 なお、端点生成部81.座標算出部10においてZ座標
も算出してもよく、その場合は陰面消去ができる。 〔発明の効果〕 上述の如く、本発明によれば、多角形をスキセンライン
に沿って分解した線分列の夫々の両端点における法線ベ
クトルの補間をパラメトリックな曲線に基づいて階差を
用いて算出すると共に、線分上の各点における内積の演
算もパラメトリックな曲線に基づいた多項式を階差を用
いて算出しているので従来に比べて少ない演算量にて法
線の補間及び内積の計算ができ、よってシェーディング
処理の高速化を実現することができる等の特長を有する
ものである。
第1図は本発明の原理ブロック図、
第2図は本発明の法線ベクトルの補間原理説明図、
第3図は本発明の一実施例のブロック図、第4図は法線
ベクトルの補間の一実施例の説明図、 第5図は反射モデル説明図、 第6図は従来の補間方法の一例の説明図、第7図は法線
の補間の概念説明図である。 図において、 1は表示装置、 2は第1の演算手段、 3は第2の演算手段、 4は色計算手段、 8は面塗り部、 10は座標算出部、 11は拡散計算用内積(N−L)生成部、12は鏡面計
算用内積(N−H)生成部を示す。 特許出願人 富 士 通 株式会社 申粘樗のR理ブ亡・72図 第1 図 112f!1
ベクトルの補間の一実施例の説明図、 第5図は反射モデル説明図、 第6図は従来の補間方法の一例の説明図、第7図は法線
の補間の概念説明図である。 図において、 1は表示装置、 2は第1の演算手段、 3は第2の演算手段、 4は色計算手段、 8は面塗り部、 10は座標算出部、 11は拡散計算用内積(N−L)生成部、12は鏡面計
算用内積(N−H)生成部を示す。 特許出願人 富 士 通 株式会社 申粘樗のR理ブ亡・72図 第1 図 112f!1
Claims (1)
- 【特許請求の範囲】 表示装置(1)のスキャンライン上の各画素の輝度を対
応する表示三次元図形の各点における法線方向と光源方
向と視点方向の相互関係を表わすベクトルの内積の関数
として算出してシェーディングを行なう図形シェーディ
ング装置において、三次元の表示図形を近似する多角形
のパッチ群の各多角形を前記スキャンラインに沿つた線
分列に分解し、その線分の両端点の法線ベクトルの夫々
既知の点の法線ベクトル(@N_1@、@N_2@)を
もとにパラメトリック曲線を用いて補間した法線ベクト
ル(@N@)を、階差を利用して演算生成する第1の演
算手段(2)と、 前記光源方向に向かうベクトルと前記視点方向に向かう
ベクトルとを夫々一定のベクトルとみなしてそれらのベ
クトルと前記補間した線分の両端点の法線ベクトル(@
N@)をさらに補間した法線ベクトル(@N_p@)と
の内積をn次多項式(ただし、nは2以上の整数)によ
り演算生成する第2の演算手段(3)と、 前記第2の演算手段(3)の出力データに基づいて前記
表示三次元図形の各点の色計算を行ない、その計算結果
を前記表示装置(1)へ出力する色計算手段(4)とを
具備することを特徴とする図形シェーディング装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19726588A JPH0247784A (ja) | 1988-08-09 | 1988-08-09 | 図形シェーディング装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19726588A JPH0247784A (ja) | 1988-08-09 | 1988-08-09 | 図形シェーディング装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0247784A true JPH0247784A (ja) | 1990-02-16 |
Family
ID=16371597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19726588A Pending JPH0247784A (ja) | 1988-08-09 | 1988-08-09 | 図形シェーディング装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0247784A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04229387A (ja) * | 1990-05-10 | 1992-08-18 | Internatl Business Mach Corp <Ibm> | グラフィクス・ディスプレイ・システムにおけるシェーディング方法 |
US5586232A (en) * | 1994-06-20 | 1996-12-17 | Fujitsu Limited | Projection view creation method with vector discrimination onto plane-represented curved surfaces |
-
1988
- 1988-08-09 JP JP19726588A patent/JPH0247784A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04229387A (ja) * | 1990-05-10 | 1992-08-18 | Internatl Business Mach Corp <Ibm> | グラフィクス・ディスプレイ・システムにおけるシェーディング方法 |
US5586232A (en) * | 1994-06-20 | 1996-12-17 | Fujitsu Limited | Projection view creation method with vector discrimination onto plane-represented curved surfaces |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100261076B1 (ko) | 범프 맵핑과 퐁 쉐이딩을 동시에 수행하는 렌더링방법 및 장치 | |
US5278949A (en) | Polygon renderer which determines the coordinates of polygon edges to sub-pixel resolution in the X,Y and Z coordinates directions | |
JPH05307610A (ja) | テクスチャマッピング方法およびその装置 | |
JPH0776991B2 (ja) | Nurbsデータ変換方法及び装置 | |
JPH06348864A (ja) | 画像表示装置、コンピュータ・グラフィックス・システム及び画像表示方法 | |
US5109481A (en) | Quadratic interpolation for shaded image generation | |
JPH0247784A (ja) | 図形シェーディング装置 | |
JP2755289B2 (ja) | レンダリング方法 | |
US20020126127A1 (en) | Lighting processing circuitry for graphics adapter | |
JPH06266852A (ja) | 画像合成装置 | |
EP0259971A1 (en) | Fast phong shading | |
JPH0345427B2 (ja) | ||
JP3278828B2 (ja) | 半透明立体画像処理装置 | |
JPH11185052A (ja) | 3次元コンピュータグラフィックスのテクスチャマッピング座標計算装置および方法 | |
JP2915330B2 (ja) | グラフィック表示生成装置及び方法、レンダリングlsi | |
JPH0345428B2 (ja) | ||
JP3071495B2 (ja) | 物体モデル編集装置 | |
JP2001118083A (ja) | 図形データ処理装置 | |
JPH0573259A (ja) | 画像シエーデイング方法及び画像処理装置 | |
JPH0664621B2 (ja) | 画像生成方法 | |
JPH05266217A (ja) | 三次元図形表示装置 | |
JPH05282466A (ja) | 画像処理方法および装置 | |
JPH06259512A (ja) | 3次元モデルの形状作成方法 | |
JPH1083461A (ja) | 図形描画装置 | |
JPH0357087A (ja) | 多角形ぬりつぶし装置 |