JPH11203500A - 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体 - Google Patents

画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体

Info

Publication number
JPH11203500A
JPH11203500A JP10002709A JP270998A JPH11203500A JP H11203500 A JPH11203500 A JP H11203500A JP 10002709 A JP10002709 A JP 10002709A JP 270998 A JP270998 A JP 270998A JP H11203500 A JPH11203500 A JP H11203500A
Authority
JP
Japan
Prior art keywords
data
value
pixel
display
buffer memory
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
JP10002709A
Other languages
English (en)
Inventor
Shuji Hori
修司 堀
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.)
Sega Corp
Original Assignee
Sega Enterprises Ltd
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 Sega Enterprises Ltd filed Critical Sega Enterprises Ltd
Priority to JP10002709A priority Critical patent/JPH11203500A/ja
Publication of JPH11203500A publication Critical patent/JPH11203500A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【課題】平面的なポリゴンに点光源効果を与え、更に凹
凸に対する陰影処理も行う。 【解決手段】所定の表示画面に表示するための画像デー
タを生成する画像処理装置において、フレーム内のピク
セル毎に少なくとも色データを含む画像データを格納す
るフレームバッファメモリと、前記ピクセル毎に前記表
示画面内の奥行きを示すZ値データを格納するZ値バッ
ファメモリと、前記ピクセル毎の前記画像データとZ値
データを生成する描画処理部と、前記表示画面の走査位
置に対応する表示ピクセルの法線ベクトルを、当該表示
ピクセルの前記表示画面上の表示座標と前記Z値データ
とその周囲のピクセルの前記表示座標とZ値データとか
ら求め、前記表示ピクセルに対する光源からの光線ベク
トルを求め、前記表示ピクセルの前記画像データを前記
法線ベクトルと光線ベクトルの内積に従って修正する画
像データ修正部とを有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータグラ
フィック処理を行う画像処理装置にかかり、特に、光源
に対する効果をリアルタイムで画像に与えることがで
き、更に表面に凹凸が存在する場合にも光源に対する効
果をリアルタイムで画像に与えることができる画像処理
装置に関する。
【0002】
【従来の技術】コンピュータ・シミュレーションやコン
ピュータ・ゲームにおいて、与えられる入力データに応
じて表示画面内の画像データを生成する画像処理は、よ
り現実に近い画像をリアルタイムに生成することが要求
される。従来から行われている画像処理は、ポリゴンと
呼ばれる多角形の平面体に対して入力データ等に応じた
三次元空間内での座標変換を行い、表示画面内に位置す
るポリゴンについて表示画面である二次元座標への透視
変換を行い、それぞれのポリゴン内のピクセルの色デー
タを生成する。その場合、表示画面内の最も手前にある
ポリゴン内のピクセルを表示する為に、ピクセル毎の色
データに加えて表示画面内の奥行きを示すZ値データを
利用する。
【0003】より現実に近い画像を表示する為には、上
記の色データを生成する時に輝度の高い光源からの効果
を考慮してその色データを修正することが望ましい。例
えば、平面上に点光源が位置する場合は、その点光源に
最も近いピクセルは明るく、遠くなるにしたがい暗くな
る等の点光源表現を行うことが好ましい。また、平面上
に凹凸が存在する場合は、その凹凸と点光源の位置との
関係から陰影処理を施すこともより現実的な画像を表示
する為には必要である。
【0004】図1は、上記の点光源表現を説明するため
の図である。図1(a)に示された図は、平面状のポリ
ゴン10の真上に点光源20が位置する場合におけるよ
り現実に近い点光源効果を示す。この例では、点光源2
0の真下の部分12はより明るく、点光源20から離れ
た部分14は多少暗くなる様に表現される。従って、平
面ポリゴン10が単色であったとしても、部分12では
輝度が高く、部分14では輝度が低く表現される。
【0005】
【発明が解決しようとする課題】しかしながら、従来か
ら行われてきた画像処理では、ポリゴンの頂点毎に法線
ベクトルが与えられ或いは求められ、その頂点の輝度デ
ータが法線ベクトルと点光源からの光線ベクトルとから
求められる。そして、ポリゴン内のピクセルの輝度は、
頂点の輝度データをもとにした補間演算により求められ
るのが、一般的である。従って、ポリゴン10のある頂
点が最も輝度が高く、別の頂点が最も輝度が低く、内部
のピクセルの輝度はその中間値になる。
【0006】図1(b)は、上記の補間演算によりピク
セルの輝度データを求めて、色データに修正を加えた場
合の表示画像を示す。この例では、点光源20に最も近
い頂点Aが最も輝度が高く、頂点Dが最も輝度が低くな
る。従って、補間演算による輝度データによって色デー
タを修正すると、頂点Aから頂点Dに向かって徐々に輝
度が低くなる表示画像となる。これでは、現実から乖離
した表示画像であり不自然である。
【0007】図2は、直方体16の上面17に突起18
が形成されている場合の点光源20に対する陰影処理が
施された表示画像を示す図である。この例では、より現
実に近い画像を形成する為に、点光源20にほぼ垂直に
面する上面17や突起18の上面で輝度を高くし、直方
体の側面15,19や突起18の側面18a,18bの
輝度を低くすることが望まれる。
【0008】しかしながら、上面17上の突起18に対
してかかる点光源による陰影処理を施す為には、上面1
7だけのポリゴンだけでなく突起18を構成する面のポ
リゴンを準備する必要がある。その結果、上面17に多
数の突起が存在する場合は、ポリゴンの数が膨大とな
り、リアルタイムに画像処理することが不可能になる。
【0009】そこで、本発明の目的は、効率的な画像処
理により点光源効果を表示画像に与えることができる画
像処理装置を提供することにある。
【0010】更に、本発明の目的は、ポリゴンの表面に
凹凸を設ける場合に、ポリゴンの数を増やすことなくそ
の凹凸に対する陰影処理を施すことができる画像処理装
置を提供することにある。
【0011】
【課題を解決するための手段】上記の目的を達成する為
に、本発明は、所定の表示画面に表示するための画像デ
ータを生成する画像処理装置において、フレーム内のピ
クセル毎に少なくとも色データを含む画像データを格納
するフレームバッファメモリと、前記ピクセル毎に前記
表示画面内の奥行きを示すZ値データを格納するZ値バ
ッファメモリと、前記ピクセル毎の前記画像データとZ
値データを生成する描画処理部と、前記表示画面の走査
位置に対応する表示ピクセルの法線ベクトルを、当該表
示ピクセルの前記表示画面上の表示座標と前記Z値デー
タとその周囲のピクセルの前記表示座標とZ値データと
から求め、前記表示ピクセルに対する光源からの光線ベ
クトルを求め、前記表示ピクセルの前記画像データを前
記法線ベクトルと光線ベクトルの内積に従って修正する
画像データ修正部とを有することを特徴とする。
【0012】上記の発明によれば、描画処理部により生
成されたZ値データから、ピクセルの法線ベクトルを生
成して、光源への光線ベクトルとの内積値に従ってフレ
ームバッファメモリ内の色データの輝度値を修正するこ
とで、ポリゴン内部に点光源による効果を与えることが
できる。
【0013】上記の目的を達成する為に、別の発明は、
所定の表示画面に表示するための画像データを生成する
画像処理装置において、フレーム内のピクセル毎に少な
くとも色データを含む前記画像データを格納するフレー
ムバッファメモリと、前記ピクセル毎に前記表示画面内
の奥行きを示すZ値データを格納するZ値バッファメモ
リと、ポリゴンのデータを与えられ、該ポリゴン内の前
記ピクセルについて、前記表示画面の手前側に位置する
ピクセルの前記画像データとZ値データを生成して前記
フレームバッファメモリ及びZ値バッファメモリに記録
する描画処理部と、前記ポリゴン内の凹凸を示すバンプ
データを格納するバンプバッファメモリとを有し、前記
描画処理部は、前記バンプバッファメモリ内のバンプデ
ータに従って、前記ピクセルのZ値を修正することを特
徴とする。
【0014】上記の構成によれば、従来平面的であった
ポリゴンの内面に凹凸の情報をZ値に含ませることがで
きる。従って、ポリゴンの数を増やすことなくそのZ値
を利用して光源による凹凸に対する効果を与えることが
容易になる。
【0015】上記の目的を達成する為に、更に別の発明
は、フレーム内のピクセル毎に少なくとも色データを含
む画像データを格納するフレームバッファメモリと、前
記ピクセル毎に前記表示画面内の奥行きを示すZ値デー
タを格納するZ値バッファメモリと、ポリゴンのデータ
を与えられ、該ポリゴン内の前記ピクセルについて表示
画面の手前側に位置するピクセルの前記画像データとZ
値データを生成して前記フレームバッファメモリ及びZ
値バッファメモリに記録する描画処理部とを有する画像
処理装置において利用されるバンプデータを記録する記
録媒体において、前記バンプデータは、前記ポリゴン内
の凹凸に対応するZ値修正データを所定の密度の単位領
域毎に有し、前記描画処理部が前記ポリゴン内のピクセ
ル毎に生成したZ値データを前記バンプデータの該Z値
修正データから求められる該ピクセル毎のZ値修正値に
より修正する様に、前記バンプデータが利用されること
を特徴とする。
【0016】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面に従って説明する。しかしながら、本発明の技術
的範囲がその実施の形態に限定されるものではない。
【0017】図3は、本発明の実施の形態例の画像処理
装置の構成を示す図である。この例では、シミュレーシ
ョン用やゲーム用の制御プログラムを実行するCPU3
0が、制御プログラムに従って生成したポリゴンデータ
やその座標変換データなどを描画処理部40に与える。
CPU30は、バス32を介して演算用に使用された
り、上記制御プログラムやオブジェクトデータ等が格納
されるRAM34に接続される。これらの制御プログラ
ムやオブジェクトデータは、画像処理装置外のCDRO
Mやカートリッジ等の記録媒体38内に格納されたもの
が、シミュレーション或いはゲームを行うにあたり入出
力部36を介して画像処理装置内のRAM34に格納さ
れる。
【0018】上記のポリゴンデータやその座標変換デー
タを与えられた描画処理部40は、後述する三次元座標
空間内でのポリゴンの座標変換、表示画面内に位置する
ポリゴンを抽出するクリッピング処理、そして、三次元
座標空間から表示画面の二次元座標空間への透視変換処
理を行う。更に、画像処理部40は、透視変換されたポ
リゴン内のピクセルの色データを含む画像データを生成
するレンダリング処理を行う。これらの処理は、例えば
専用の三次元グラフィックプロセッサ等のハードウエア
や、ソフトウエア等により行うことができる。
【0019】描画処理部40は、上記の処理を実行する
ことにより、表示しようとするフレーム内のピクセル毎
の色データを含む画像データを、フレームバッファメモ
リ50に格納する。また、描画処理部40は、表示画面
内の最も手前に位置するポリゴン内のピクセルの画像デ
ータをフレームバッファメモリ50に格納する為に、表
示画面内の奥行きを示すZ値データを格納したZ値バッ
ファメモリ60に、フレームバッファメモリ50に格納
したポリゴンのZ値データを格納する。そして、格納済
みのZ値データと処理中のピクセルのZ値データとを比
較して、処理中のピクセルのZ値データが小さい場合の
み、描画処理部40は、その画像データをフレームバッ
ファメモリ60内に、そしてZ値データをZ値バッファ
メモリ60にそれぞれ上書きする。
【0020】この様にしてフレーム内の全ピクセルの画
像データがフレームバッファ内に描画されると、表示プ
ロセッサ70により、表示画面の走査タイミングに従っ
てフレームバッファメモリ50に格納された画像データ
が読み出され、例えば、D/A変換器80を介して表示
装置82に供給される。一般的には、画像データは、ピ
クセルのR(赤)G(緑)B(青)データと、水平同期
信号及び垂直同期信号である。
【0021】図3に示された本実施の形態例では、表示
プロセッサ70内に、各ピクセルにおける光源の方向と
そのピクセルの法線ベクトルからフレームバッファメモ
リ内の色データを含む画像データを修正する画像データ
修正機能が含まれる。従って、表示プロセッサ70は、
画像データ修正部とも称することができる。
【0022】この画像データ修正部70内には、表示画
面の走査タイミングを与えるビデオクロックCLKによ
りカウントアップする表示カウンタ71を有する。この
表示カウンタ71は、所定の垂直同期信号及び水平同期
信号に同期して、ビデオクロックCLKのタイミングで
表示ピクセルの座標D71を生成する。このピクセル座
標D71に対応する領域の画像データD51がフレーム
バッファメモリ50から読み出される。従来例では、単
純にその画像データD51がD/A変換部80を介して
表示装置82に与えられる。
【0023】本実施の形態例では、更に、隣接座標生成
部72が表示ピクセルに隣接するピクセルの座標D72
を生成する。そして、画像データ修正部70内には、表
示ピクセルの単位法線ベクトルを生成する単位法線ベク
トル演出部73と、表示ピクセルに対する光源からの単
位光線ベクトルを生成する単位光線ベクトル演出部75
とを有する。これらのベクトル演出部73,75が生成
した単位法線ベクトルと単位光線ベクトルとから、それ
らの内積を求める内積演算部77と、その内積値をもと
に画像データである色データD50を修正するカラー修
正部78とを更に有する。
【0024】図4は、上記の画像データ修正部での色デ
ータD50の修正の処理フローチャートを示す図であ
る。上記の図3の画像データ修正部70内の処理を図4
を参照しながら以下に説明する。
【0025】ステップS10に示される通り、表示カウ
ンタ71と隣接座標生成部72により、表示ピクセルの
座標D71とそれに隣接する周囲のピクセルの座標D7
2とが生成される。そして、両座標D71,D72とそ
れらの座標に対応するZ値データD60とが単位法線ベ
クトル算出部73に供給される。そして、単位法線ベク
トル算出部73では、表示ピクセルの座標及びZ値と隣
接するピクセルの座標及びZ値とから、表示ピクセルの
単位法線ベクトルが算出される(S12)。
【0026】図5は、単位法線ベクトル算出部73の算
出方法を説明する図である。図中、ピクセルP0 が表示
ピクセル、P1 ,P2 がその隣接ピクセルである。これ
らの3つのピクセルP0 、P1 、P2 の表示座標とZ値
とが与えられることにより、平面(三角形)H0 が確定
する。ピクセルP0 、P1 、P2 の表示座標とZ値は、
図示されるとおり、(x0 、y0 、z0 )、(x1 、y
1 、z1 )、(x2 、y2 、z2 )である。この平面H
0 が表示ピクセルP0 の法線ベクトルを求める為の平面
と定義される。そして、平面H0 に対する法線ベクトル
0 が公知の演算式により求められる。即ち、一般的な
平面の方程式は、 A*X+B*Y+C*Z+D=0 であり、その場合の法線ベクトルN0 は、(A,B,
C)である。そして、図5の例では、3つのピクセルP
0 、P1 、P2 が隣接しているので、法線ベクトルN0
は、 N0 =(z1 −z0 、z2 −z0 、1) となる。
【0027】従って、単位法線ベクトルUN0 は、法線
ベクトルN0 をスカラー値を1にする様に正規化するこ
とで求めることができる。即ち、 UN0 =N0 /|N0 | で求められる。
【0028】図5(a)は、表示ピクセルP0 が隣接す
るピクセルP1 、P2 よりも突出しており、Z値が異な
る場合の例である。この例では、3つの点から確定する
平面H0 は傾斜した面となり、法線ベクトルN0 も斜め
の方向を有する。また、図5(b)の例は、表示ピクセ
ルP0 が隣接するピクセルP1 、P2 と同じ平面上に位
置し、法線ベクトルN0 はZ軸方向になる。この場合
は、法線ベクトルN0 は、上記した通り、N0 =(0,
0,1)となる。
【0029】上記の説明から明らかな通り、表示ピクセ
ルとそれに隣接する少なくとも2つのピクセルのZ値を
参照することで、表示ピクセルにおける単位法線ベクト
ルを算出することができる。図6は、矩形の平面ポリゴ
ン10に対して、各ピクセルP11〜P56それぞれの法線
ベクトルN11〜N56を示す図である。
【0030】次に、単位光線ベクトル算出部75は、表
示ピクセルにおける光源への光線ベクトルを算出する
(S14)。この光線ベクトルの算出は、光源座標を格
納したレジスタ76から与えられる光源の座標(Qx
y 、Qz )と、表示ピクセルの座標D71及びZ値D
60から簡単に求められる。
【0031】図7は、法線ベクトルNと光線ベクトルL
を説明する図である。図7は、図6のピクセルP31から
36までの法線ベクトルN31〜N36と光線ベクトルL31
〜L 36との関係を示す。図から明らかな通り、光線ベク
トルL31は、ピクセルP31の座標(x31、y31、z31
から点光源20の座標(Qx 、Qy 、Qz )に向かうベ
クトルである。従って、単位光線ベクトル算出部75
は、両者の座標データから両座標の差(Qx −x31、Q
y −y31、Qz −z31)を求めることにより、光線ベク
トルL31を求めることができる。従って、単位光線ベク
トルUL31は、 UL31=L31/|L31| で求めることができる。
【0032】上記の通り求められた単位法線ベクトルU
Nと単位光線ベクトルULとから、内積演算部77で
は、両ベクトルの内積値(cosθ31)が求められる。
このベクトルの内積とは、例えばピクセルP31において
は、両ベクトル間の角度θ31のコサイン成分であり、単
位光線ベクトルULの単位法線ベクトルUN方向の成分
である。この内積値Aは、単位法線ベクトルUN=(N
x,Ny,Nz)、単位光線ベクトルUL=(Lx、L
y、Lz)とすると、 内積値A=|cosθ31|=|Nx*Lx+Ny*Ly
+Nz*Lz| (但し、90<θ31<270では、A=0とする。)で
求められる。
【0033】即ち、図7の例で説明すると、ピクセルP
31やP36は、法線ベクトルN31と光線ベクトルL31との
角度が大きいので、その内積値は小さくなる。一方、ピ
クセルP33やP34は、同角度が小さいので、その内積値
は大きくなる。従って、光源20に近いピクセルP33
34は輝度が高く、その色データの値はより大きく修正
されてその表示ピクセルはより鮮明に表示される。ま
た、光源20から遠くしかも斜めに照射されるピクセル
31、P36では輝度が低く、その色データの値はより小
さく修正されてその表示ピクセルは不鮮明に表示され
る。
【0034】図8は、更に突起が形成されたピクセルに
おける法線ベクトルと内線ベクトルとの関係を示す図で
ある。この例では、ピクセルP61からP66が示され、ピ
クセルP62、P63、P64の部分で突起が形成される。そ
こで、図示される法線ベクトルN61〜N66と光線ベクト
ルL61〜L66とから、それぞれのピクセルでの内積値が
求められる。ピクセルP62とP64とを比較すると、ピク
セルP62での両ベクトル間の角度θ62は大きく、その内
積値A62は小さくなる。その結果、ピクセルP 62は光源
20による輝度が低く、暗いピクセルになる。一方、ピ
クセルP64では、その法線ベクトルN64と光線ベクトル
64との間の角度θ64とが上記角度θ62よりも小さいの
で、その内積値A64は大きくなる。その結果、ピクセル
64は輝度が高く明るいピクセルになる。
【0035】図8には示されないが、法線ベクトルと光
線ベクトルとの間の角度が90度を越えて270度未満
の場合は、光線がピクセルの背面側から照射されている
ことを意味するので、その場合は、決められた所定の低
い輝度値(0に近い値)で色データの補正がなされる。
【0036】図3及び図4に戻り、上記した通り表示ピ
クセルの単位法線ベクトルと単位表示ベクトルの内積が
内積演算部77で求められ(S16)、その求められた
内積値データ77Dにしたがってフレームバッファメモ
リ50から読み出された色データD50が、カラー修正
部78にて修正される(S18)。カラー修正部78で
は、例えばR、G、Bそれぞれの輝度値に内積値Aが乗
算されることで、光源の位置に応じた輝度値の修正が行
われる。そして、その修正された色データで表示装置8
2に表示される(S20)。
【0037】上記したステップS10〜S20は、全
て、フレームバッファメモリ50から表示ピクセルの色
データが読み出されて、表示装置82で表示される工程
の途中でパイプライン的に行われる。したがって、本実
施の形態例において、描画処理部40では、従来通りピ
クセル毎の色データを生成してフレームバッファメモリ
50に格納し、同様にZ値データをZ値バッファメモリ
60に格納するだけでよい。
【0038】[バンプマップメモリ]図9は、本発明の
他の実施の形態例のバンプマップを説明する為の描画処
理部の構成を示す図である。CPU30が、バス32を
介してRAM34や入出力部36に接続されているの
は、図3と同じである。図9に示された描画処理部40
は、ジオミトリ処理部100と塗りつぶし処理部108
とを有する。そして、塗りつぶし処理部108が生成し
た色データ110がフレームバッファ処理部114によ
りフレームバッファメモリ50に記録される。また、塗
りつぶし処理部108が生成したZ値もZ比較処理部1
20により、Z値バッファメモリ60に記録される。バ
ンプマップメモリ138は、本実施の形態例の特徴的な
構成である。このバンプマップメモリ138には、CP
U30の制御により、例えば外部の記録媒体38に格納
されていたポリゴンの凹凸を示すバンプデータが格納さ
れる。
【0039】このバンプマップメモリ138に格納され
るバンプデータは、例えば、通常は平面で定義されるポ
リゴンの一部に凹凸をつける為の、Z値の補正データか
ら構成される。例えば、凸部に対応するバンプデータは
+1.0であり、凹部に対応するバンプデータは−1.
0である。従って、一旦塗りつぶし処理部108で生成
された平面状のポリゴンのZ値を、バンプマップメモリ
138内に格納されたバンプデータ136で修正し、そ
の修正されたZ値132をZ値バッファメモリ60に格
納する。その結果、1枚のポリゴン内の所望の位置に、
凹凸を形成することができる。即ち、図3及び4で説明
した通り、Z値バッファメモリ60に格納されたピクセ
ル毎のZ値を利用して、表示ピクセルの法線ベクトルを
求め、その法線ベクトルと光線ベクトルとの内積値に基
づいて色データの輝度値を修正する。その場合、Z値バ
ッファメモリ60内に格納されたZ値データが、バンプ
マップメモリ138に格納された凹凸データを反映す
る。従って、表示ピクセルとその周囲のピクセルのZ値
から求められる法線ベクトルも、上記凹凸データを反映
したものになる。
【0040】図10は、図9における描画処理部40内
での画像処理フローを示すフローチャート図である。図
11は、CPU30がジオミトリ処理部100に与える
データ140の構成例を示す図である。また、図12
は、ジオミトリ処理部100から塗りつぶし処理部10
8に与えられるデータ142の構成例を示す図である。
そして、図13は、塗りつぶし処理部108が生成する
データの構成例を示す図である。
【0041】図9の画像処理部40内の動作について、
図10のフローチャート及び図11〜13のデータ構成
例を参照しながら以下説明する。CPU30は、CDR
OMや半導体メモリを格納したカートリッジなどの記録
媒体38から、入出力部36を経由して内部のメモリ3
4にゲームプログラム、オブジェクトデータなどを格納
する。このオブジェクトデータは、各オブジェクトを構
成するポリゴンデータと各ポリゴンの凹凸を示すバンプ
データを含む。バンプデータは、上記した通りバンプマ
ップメモリ138にも適宜記録される。
【0042】CPU30は、遊戯者が操作パッド35を
通して入力する操作データに基づいてゲームプログラム
を実行することで、フレーム毎のポリゴンの頂点データ
及びポリゴンの3次元座標内での変換マトリクスを生成
し、描画処理部40のジオミトリ処理部100に与える
(S30)。このCPU30がジオミトリ処理部100
に与えるポリゴンデータ140の例が、図11に示され
る。図11によれば、ポリゴンを構成する頂点について
のデータとして、3次元座標内の頂点データ、頂点にお
ける色データ、或いは描画処理部40がテクスチャマッ
プを使用する場合はそのテクスチャマップ座標(Tx、
Ty)、そしてバンプマップメモリ138のアドレスに
対応する座標(Bx、By)を少なくとも有する。バン
プマップメモリ138は、構成的にはテクスチャーマッ
プと同等の構成であり、ポリゴン表面の凹凸を示すZ値
データの修正値が格納されて、その座標(Bx、By)
を与えらることにより、対応するバンプデータが読み出
される。
【0043】ジオミトリ処理部100は、与えられたポ
リゴンデータに従って一般的なジオミトリ処理を行う。
即ち、ステップS32に示される通り、3D座標変換部
102にて、変換マトリクスを利用した三次元座標内で
の頂点座標のマトリクス変換が行われる。そして、視点
データに従って確定される表示画面内に位置するポリゴ
ンを抽出するクリッピング処理が、クリッピング処理部
104にて行われ、抽出されたポリゴンについての表示
画面の二次元座標内への透視変換が、透視変換部106
で行われる。
【0044】この結果、表示画面内に位置するポリゴン
の頂点の二次元座標を含むデータ142が塗りつぶし処
理部108に与えられる。このデータ142の例は、図
12に示される通り、各頂点について、表示画面の座標
(Sx、Sy)と表示画面内の奥行きを示すZ値、色デ
ータ或いはテクスチャー座標そしてバンプマップ座標
(Bx、By)を含む。図12には、二つのポリゴンに
対して上記の各頂点データが示されている。
【0045】塗りつぶし処理部108では、図12に示
した如きデータ142に基づいて、表示画面内のポリゴ
ンの中のピクセルの色の塗りつぶし処理を行う。この塗
りつぶし処理は、一般にレンダリング処理とも称される
が、例えばポリゴン内をラスタスキャンしながら、それ
ぞれのピクセルの表示座標(Sx、Sy)、Z値、色デ
ータ或いはテクスチャー座標、及びバンプマップ座標
を、頂点データを補間演算することにより求める。その
結果、塗りつぶし処理部108は、ポリゴン内のピクセ
ルデータを生成する(S36)。このピクセルデータの
例が、図13に示される。この例では、3つのピクセル
が示されている。
【0046】塗りつぶし処理部108は、ラスタスキャ
ンによって処理中のピクセルの色データとZ値をフレー
ムバッファメモリ50とZ値バッファメモリ60に格納
するか否かの処理を行う。具体的には、これらのメモリ
50,60には、表示画面に表示されるポリゴンのピク
セルのデータが記録されなければならない。そこで、ス
テップS36,S38により、処理中のピクセルのZ値
とZ値バッファメモリ60内に記録されている対応する
ピクセルのZ値とを比較し、処理中のピクセルのZ値が
小さい場合は、表示画面の手前に位置するピクセルであ
ると判断する。そして、そのピクセルの色データ110
とZ値116とをフレームバッファメモリ50とZ値バ
ッファメモリ60内の表示画面上の座標112,118
の領域に上書きする(S40,S42)。フレームバッ
ファ処理部114とZ値比較処理部120とは、与えら
れた表示座標112,118からそれぞれのメモリに対
応するアドレス128,130を生成して、色データ1
26とZ値132とを書き込む。
【0047】更に、塗りつぶし処理部108は、処理中
のピクセルのバンプマップ座標112をバンプマップ処
理部124に与える。バンプマップ処理部124は、バ
ンプマップ座標112に対応するアドレス134にある
バンプマップメモリ138内のバンプデータ136を読
み出す。このバンプデータは、上記した通りZ値補正デ
ータであり、そのZ値補正データによりZ値バッファメ
モリ60に記録されたZ値データを補正し、再度Z値バ
ッファメモリ60に記録する(S44)。その結果、Z
値バッファメモリ60内には、表示画面の最も手前にあ
るポリゴンのピクセルであって、凹凸情報が加えられた
Z値データが格納されることになる。
【0048】図10中のステップS36〜S44が、ポ
リゴン内の全てのピクセルに対して繰り返され、更に、
ステップS30〜S44が1フレーム内の全てのポリゴ
ンに対して繰り返される(S46)。以上が、画像処理
部40内で行われる処理である。その後、図3にて示し
た通り、表示プロセッサである画像データ修正部70
が、フレームバッファメモリ50内に格納した色データ
の輝度値を、Z値バッファメモリ60内のZ値から生成
した法線ベクトルと光線ベクトルとの内積により修正す
る。その修正された色データにより表示装置82に1フ
レームの画像が表示される。
【0049】図14は、バンプマップメモリ138内の
バンプデータの例を示す図である。この例では、4種類
のポリゴンに対するバンプデータの例が示されている。
この図は、バンプマップメモリ138の論理空間内に格
納されたポリゴンPa,Pb,Pc、Pdのバンプデー
タを示す。この例では、バンプデータが0の部分は凹凸
が存在しない平面の部分であることを示し、バンプデー
タが+1の部分はZ値が+1されるべき凹部であること
を示し、バンプデータが−1の部分はZ値が−1される
べき凸部であることを示す。
【0050】ポリゴンの大きさに応じて、ポリゴン内の
ピクセルの密度が異なるので、その場合は、頂点データ
に含まれるバンプマップ座標からピクセルのバンプマッ
プ座標が補間演算により求められ、そのバンプ座標に対
応する位置にある複数のバンプデータから所定の演算に
より求められたデータが、そのピクセルのバンプデータ
として、Z値の修正に使用される。かかる処理は、テク
スチャマップメモリに対する処理と同じである。
【0051】図15は、テクスチャマップメモリを利用
した場合の画像処理部の構成を示す図である。この構成
例は、テクスチャ処理部140とテクスチャマップメモ
リ142が追加されている点で、図9の構成例と異な
る。その他の部分は同等であるので、同じ引用番号を付
している。この構成の場合は、図11,12,13に示
されたデータは、色データの代わりにテクスチャマップ
座標(Tx、Ty)を有する。そして、塗りつぶし処理
部108が処理中のピクセルのテクスチャマップ座標
(Tx、Ty)144をテクスチャ処理部140に与え
る。テクスチャ処理部140では、その座標144に対
応するアドレス146を生成し、テクスチャマップメモ
リ142内の色データ148を読み出す。その色データ
が、フレームバッファ処理部114に与えられる。フレ
ームバッファ処理部114の処理は、図9の場合と同等
であるので、ここでの説明は省略する。
【0052】図9、図15に示した画像処理部40は、
従来のテクスチャマップメモリというポリゴンの色デー
タを格納したメモリと同等の構成をしたバンプマップメ
モリ138を有する。バンプマップメモリ138内に
は、例えば外部の記録媒体38からポリゴン毎のデータ
が格納される。そして、バンプマップメモリ138内の
Z値の補正データであるバンプデータにしたがって、平
面的に処理されたポリゴン内のピクセルのZ値が修正さ
れる。その結果、Z値バッファメモリ60内に格納され
たZ値は、ポリゴン表面の凹凸を反映した値になる。そ
して、そのZ値データを利用してピクセルの法線ベクト
ルを求めると、凹凸を反映した法線ベクトルが求められ
る。従って、図8の如く凹凸を反映した法線ベクトルと
光線ベクトルの内積を利用して色データの輝度値を修正
することで、図2に示されたような凹凸処理を施すこと
が可能になる。しかも、バンプマップメモリ138は、
テクスチャマップメモリ142と同等の構成であるの
で、特に従来と異なるハードウエア、ソフトウエアを開
発する必要はない。
【0053】
【発明の効果】以上説明した通り、本発明によれば、Z
値バッファメモリ内のZ値を利用して表示対象のピクセ
ルの法線ベクトルを求め、光源への光線ベクトルとの内
積により表示対象ピクセルの色データの輝度値を修正す
ることで、ポリゴン内に光源からの自然な効果である点
光源表現を与えることができる。従って、ポリゴン内に
最も輝度が高い或いは低い部分を描画することができ
る。
【0054】更に、描画処理部内にバンプマップメモリ
を設け、そこにバンプデータを格納することで、ポリゴ
ン内の平面上に凹凸のデータを与えることができ、その
データから法線ベクトルを作成することで、光源からの
凹凸に対する効果を与えることができる。
【図面の簡単な説明】
【図1】点光源表現を説明するための図である。
【図2】突起が形成されている場合の点光源に対する陰
影処理が施された表示画像を示す図である。
【図3】本発明の実施の形態例の画像処理装置の構成を
示す図である。
【図4】画像データ修正部での色データの修正の処理フ
ローチャートを示す図である。
【図5】単位法線ベクトル算出部の算出方法を説明する
図である。
【図6】矩形の平面ポリゴンに対して、各ピクセルP11
〜P56それぞれの法線ベクトルN11〜N56を示す図であ
る。
【図7】図7は、法線ベクトルNと光線ベクトルLを説
明する図である。
【図8】突起が形成されたピクセルにおける法線ベクト
ルと内線ベクトルとの関係を示す図である。
【図9】本発明の他の実施の形態例のバンプマップを説
明する為の描画処理部の構成を示す図である。
【図10】図9における描画処理部内での画像処理フロ
ーを示すフローチャート図である。
【図11】CPUがジオミトリ処理部に与えるデータの
構成例を示す図である。
【図12】ジオミトリ処理部から塗りつぶし処理部10
8に与えられるデータ142の構成例を示す図である。
【図13】塗りつぶし処理部が生成するデータの構成例
を示す図である。
【図14】バンプマップメモリ内のバンプデータの例を
示す図である。
【図15】テクスチャマップメモリを利用した場合の画
像処理部の構成を示す図である。
【符号の説明】
30 CPU 38 記録媒体 40 描画処理部 50 フレームバッファメモリ 60 Z値バッファメモリ 70 画像データ修正部 138 バンプマップメモリ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】所定の表示画面に表示するための画像デー
    タを生成する画像処理装置において、 フレーム内のピクセル毎に少なくとも色データを含む画
    像データを格納するフレームバッファメモリと、 前記ピクセル毎に前記表示画面内の奥行きを示すZ値デ
    ータを格納するZ値バッファメモリと、 前記ピクセル毎の前記画像データとZ値データを生成す
    る描画処理部と、 前記表示画面の走査位置に対応する表示ピクセルの法線
    ベクトルを、当該表示ピクセルの前記表示画面上の表示
    座標と前記Z値データとその周囲のピクセルの前記表示
    座標とZ値データとから求め、前記表示ピクセルに対す
    る光源からの光線ベクトルを求め、前記表示ピクセルの
    前記画像データを前記法線ベクトルと光線ベクトルの内
    積に従って修正する画像データ修正部とを有することを
    特徴とする画像処理装置。
  2. 【請求項2】請求項1において、 前記画像データ修正部は、前記表示ピクセルと該表示ピ
    クセルに隣接する少なくとも2つのピクセルを含む平面
    の法線ベクトルを、前記表示ピクセルの法線ベクトルと
    して求めることを特徴とする画像処理装置。
  3. 【請求項3】所定の表示画面に表示するための画像デー
    タを生成する画像処理装置において、 フレーム内のピクセル毎に少なくとも色データを含む前
    記画像データを格納するフレームバッファメモリと、 前記ピクセル毎に前記表示画面内の奥行きを示すZ値デ
    ータを格納するZ値バッファメモリと、 ポリゴンのデータを与えられ、該ポリゴン内の前記ピク
    セルについて、前記表示画面の手前側に位置するピクセ
    ルの前記画像データとZ値データを生成して前記フレー
    ムバッファメモリ及びZ値バッファメモリに記録する描
    画処理部と、 前記ポリゴン内の凹凸を示すバンプデータを格納するバ
    ンプバッファメモリとを有し、 前記描画処理部は、前記バンプバッファメモリ内のバン
    プデータに従って、前記ピクセルのZ値を修正すること
    を特徴とする画像処理装置。
  4. 【請求項4】請求項3において、 更に、前記表示画面の走査位置に対応する表示ピクセル
    の法線ベクトルを、当該表示ピクセルの前記表示画面上
    の表示座標と前記Z値データとその周囲のピクセルの前
    記表示座標とZ値データとから求め、前記表示ピクセル
    に対する光源からの光線ベクトルを求め、前記表示ピク
    セルの前記画像データを前記法線ベクトルと光線ベクト
    ルの内積に従って修正する画像データ修正部を有する画
    像処理装置。
  5. 【請求項5】請求項4において、 前記画像データ修正部は、前記表示ピクセルと該表示ピ
    クセルに隣接する少なくとも2つのピクセルを含む平面
    の法線ベクトルを、前記表示ピクセルの法線ベクトルと
    して求めることを特徴とする画像処理装置。
  6. 【請求項6】フレーム内のピクセル毎に少なくとも色デ
    ータを含む画像データを格納するフレームバッファメモ
    リと、前記ピクセル毎に前記表示画面内の奥行きを示す
    Z値データを格納するZ値バッファメモリと、ポリゴン
    のデータを与えられ、該ポリゴン内の前記ピクセルにつ
    いて表示画面の手前側に位置するピクセルの前記画像デ
    ータとZ値データを生成して前記フレームバッファメモ
    リ及びZ値バッファメモリに記録する描画処理部とを有
    する画像処理装置において利用されるバンプデータを記
    録する記録媒体において、 前記バンプデータは、前記ポリゴン内の凹凸に対応する
    Z値修正データを所定の密度の単位領域毎に有し、前記
    描画処理部が前記ポリゴン内のピクセル毎に生成したZ
    値データを前記バンプデータの該Z値修正データから求
    められる該ピクセル毎のZ値修正値により修正する様
    に、前記バンプデータが利用されることを特徴とするバ
    ンプデータを記録した記録媒体。
  7. 【請求項7】請求項6において、 前記画像処理装置は、更に、前記表示画面の走査位置に
    対応する表示ピクセルの法線ベクトルを、当該表示ピク
    セルの前記表示画面上の表示座標と前記Z値データとそ
    の周囲のピクセルの前記表示座標とZ値データとから求
    め、前記表示ピクセルに対する光源からの光線ベクトル
    を求め、前記表示ピクセルの前記画像データを前記法線
    ベクトルと光線ベクトルの内積に従って修正する画像デ
    ータ修正部を有することを特徴とするバンプデータを記
    録した記録媒体。
JP10002709A 1998-01-09 1998-01-09 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体 Withdrawn JPH11203500A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10002709A JPH11203500A (ja) 1998-01-09 1998-01-09 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10002709A JPH11203500A (ja) 1998-01-09 1998-01-09 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体

Publications (1)

Publication Number Publication Date
JPH11203500A true JPH11203500A (ja) 1999-07-30

Family

ID=11536837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10002709A Withdrawn JPH11203500A (ja) 1998-01-09 1998-01-09 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体

Country Status (1)

Country Link
JP (1) JPH11203500A (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002074387A (ja) * 2000-08-23 2002-03-15 Nintendo Co Ltd Zテクスチャリングを用いるイメージ生成方法
US6411301B1 (en) 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US6421058B2 (en) 1999-10-28 2002-07-16 Nintendo Co., Ltd. Graphics command stream for calling a display object in a graphics system
US6580430B1 (en) 2000-08-23 2003-06-17 Nintendo Co., Ltd. Method and apparatus for providing improved fog effects in a graphics system
US6606689B1 (en) 2000-08-23 2003-08-12 Nintendo Co., Ltd. Method and apparatus for pre-caching data in audio memory
US6639595B1 (en) 2000-08-23 2003-10-28 Nintendo Co., Ltd. Achromatic lighting in a graphics system and method
US6664962B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Shadow mapping in a low cost graphics system
US6697074B2 (en) 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
US6937245B1 (en) 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
US6980218B1 (en) 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US6999100B1 (en) 2000-08-23 2006-02-14 Nintendo Co., Ltd. Method and apparatus for anti-aliasing in a graphics system
US7129956B2 (en) 2000-06-02 2006-10-31 Nintendo Co., Ltd. Variable bit field color encoding
JP2009098925A (ja) * 2007-10-17 2009-05-07 Sony Corp 画像処理装置、画像処理方法、および、プログラム

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6411301B1 (en) 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US6421058B2 (en) 1999-10-28 2002-07-16 Nintendo Co., Ltd. Graphics command stream for calling a display object in a graphics system
US6424348B2 (en) 1999-10-28 2002-07-23 Nintendo Co., Ltd. Application program interface for a graphics system
US6452600B1 (en) 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
US6456290B2 (en) 1999-10-28 2002-09-24 Nintendo Co., Ltd. Application program interface for a graphics system
US6466218B2 (en) 1999-10-28 2002-10-15 Nintendo Co., Ltd. Graphics system interface
US6489963B2 (en) 1999-10-28 2002-12-03 Nintendo Co., Ltd. Application program interface for a graphics system
US7129956B2 (en) 2000-06-02 2006-10-31 Nintendo Co., Ltd. Variable bit field color encoding
US6639595B1 (en) 2000-08-23 2003-10-28 Nintendo Co., Ltd. Achromatic lighting in a graphics system and method
US6937245B1 (en) 2000-08-23 2005-08-30 Nintendo Co., Ltd. Graphics system with embedded frame buffer having reconfigurable pixel formats
JP2002074387A (ja) * 2000-08-23 2002-03-15 Nintendo Co Ltd Zテクスチャリングを用いるイメージ生成方法
US6664962B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Shadow mapping in a low cost graphics system
US6664958B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Z-texturing
US6580430B1 (en) 2000-08-23 2003-06-17 Nintendo Co., Ltd. Method and apparatus for providing improved fog effects in a graphics system
US6825851B1 (en) 2000-08-23 2004-11-30 Nintendo Co., Ltd. Method and apparatus for environment-mapped bump-mapping in a graphics system
US6606689B1 (en) 2000-08-23 2003-08-12 Nintendo Co., Ltd. Method and apparatus for pre-caching data in audio memory
US6980218B1 (en) 2000-08-23 2005-12-27 Nintendo Co., Ltd. Method and apparatus for efficient generation of texture coordinate displacements for implementing emboss-style bump mapping in a graphics rendering system
US6999100B1 (en) 2000-08-23 2006-02-14 Nintendo Co., Ltd. Method and apparatus for anti-aliasing in a graphics system
US7071945B2 (en) 2000-11-28 2006-07-04 Nintendo Co., Ltd. Graphics system interface
US6697074B2 (en) 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
US7522170B2 (en) 2000-11-28 2009-04-21 Nintendo Co., Ltd. Graphics system interface
JP2009098925A (ja) * 2007-10-17 2009-05-07 Sony Corp 画像処理装置、画像処理方法、および、プログラム
US8265417B2 (en) 2007-10-17 2012-09-11 Sony Corporation Image processing apparatus, method, and program for adding shadow information to images

Similar Documents

Publication Publication Date Title
US5828378A (en) Three dimensional graphics processing apparatus processing ordinary and special objects
US6469700B1 (en) Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps
JPH11203500A (ja) 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体
JPH0765197A (ja) 画像処理方法と装置
KR19990045321A (ko) 폴리곤이 분할되는 화상처리
JP3402610B2 (ja) テクスチャをマップする方法並びに装置
JP2004005452A (ja) 画像処理装置、画像処理方法、半導体デバイス、コンピュータプログラム、記録媒体
US7212215B2 (en) Apparatus and method for rendering an antialiased image
US7050066B2 (en) Image processing apparatus and image processing program
JP3547250B2 (ja) 描画方法
JP2973573B2 (ja) 画像変換装置
EP1212730B1 (en) Method and apparatus for rendering reflective texture surfaces with distorsions
EP0656609B1 (en) Image processing
KR20080100854A (ko) 렌더링 처리 방법, 렌더링 처리 장치, 및 렌더링 처리 프로그램이 기록된 컴퓨터 판독가능 기록 매체
JP3629243B2 (ja) モデリング時の距離成分を用いてレンダリング陰影処理を行う画像処理装置とその方法
US6097434A (en) System and method for correcting pixel data in an electronic device
US6900804B1 (en) Method of forming polygon image and image processing apparatus using the same
KR100466473B1 (ko) 텍셀 캐시들을 사용한 영상 텍스처 맵핑 장치
JP3701627B2 (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
JP2004078994A (ja) 描画方法
JP3453410B2 (ja) 画像処理装置及びその方法
JPH11144079A (ja) 画像処理装置、その画像処理方法及びその画像処理プログラムを記録した記録媒体
JP2633909B2 (ja) 三次元図形表示方法
JP3745152B2 (ja) 画像表示装置
CN116524102A (zh) 卡通二阶直接光照的渲染方法、装置及系统

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: 20050405