JP2002245483A - 画像処理装置及び方法並びにそのプログラム - Google Patents

画像処理装置及び方法並びにそのプログラム

Info

Publication number
JP2002245483A
JP2002245483A JP2001044525A JP2001044525A JP2002245483A JP 2002245483 A JP2002245483 A JP 2002245483A JP 2001044525 A JP2001044525 A JP 2001044525A JP 2001044525 A JP2001044525 A JP 2001044525A JP 2002245483 A JP2002245483 A JP 2002245483A
Authority
JP
Japan
Prior art keywords
polygon
color data
pixel
distance
specific point
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.)
Granted
Application number
JP2001044525A
Other languages
English (en)
Other versions
JP4554834B2 (ja
Inventor
Hiroo Sotoike
弘生 外池
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.)
Nintendo Co Ltd
Original Assignee
Nintendo Co 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 Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2001044525A priority Critical patent/JP4554834B2/ja
Priority to US09/986,769 priority patent/US6738064B2/en
Publication of JP2002245483A publication Critical patent/JP2002245483A/ja
Application granted granted Critical
Publication of JP4554834B2 publication Critical patent/JP4554834B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/80Shading

Landscapes

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

Abstract

(57)【要約】 【課題】 処理対象となるポリゴンの内側に光源がある
場合でも、装置に大きな処理負担をかけることなく、実
際の映像に近いポリゴンの陰影付け処理を行うことが可
能な画像処理装置及び方法並びにそのプログラムを提供
する。 【解決手段】 色データ入力部11は、ポリゴンの各頂
点の座標値をメモリ等から読み出し、必要な丸め込みを
行った後、ポリゴンの各頂点の色データとみなして設定
する。グラデーション発生部12は、色データとして設
定された座標値に基づいてシェーディング処理を実行
し、ポリゴン内の各ピクセルの座標値を求める。距離算
出部13は、陰影付けの処理基準となる特定点の座標値
を入力し、必要な丸め込みを行った後、特定点とポリゴ
ンの各ピクセルとの2点間距離を座標値に従って求め
る。色データ決定部14は、特定点の色データを基準と
して、各頂点を含めたポリゴンの各ピクセルの色データ
を、2点間距離に応じて決定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像処理装置及び
方法並びにそのプログラムに関し、より特定的には、ポ
リゴンを用いたグラフィック表現を行う際に、特定点か
らの距離に応じて色データを決定する画像処理装置及び
画像処理方法並びに当該方法を実行するためのプログラ
ムに関する。
【0002】
【従来の技術】従来、光源に応じてポリゴン面に陰影を
付加する処理は、一般に以下のようにして行われる。図
7は、従来の陰影付け処理を説明するための図である。
なお、本明細書においては、座標値を( )表記で、色
データを[ ]表記で、それぞれ示すことにする。
【0003】従来の処理では、まず、光源と処理対象と
なるポリゴンの各頂点との距離が、それぞれ求められ
る。図7(a)の例では、各座標値(x,y,z)は、
光源の座標値が(0,10,0)であり、ポリゴンの頂
点Aの座標値が(10,10,0)、頂点Bの座標値が
(30,20,0)、頂点Cの座標値が(30,0,
0)である。従って、光源と頂点Aとの距離が“1
0”、光源と頂点B及び頂点Cとの距離がそれぞれ“3
1.6”となる。なお、座標値(I,J,K)と座標値
(i,j,k)との2点間距離Dは、周知のように以下
の式で求められる。 D=√{(I−i)2 +(J−j)2 +(K−k)2
【0004】次に、上記求められた2点間距離Dに応じ
て、ポリゴンの各頂点の色データ[r,g,b]がそれ
ぞれ決定される。この例では、頂点Aの色データが白色
である[255,255,255]に、頂点B及び頂点
Cの色データが共に黒色である[0,0,0]に決定さ
れたものとする。最後に、ポリゴンの各頂点の色データ
に基づいてシェーディング処理が行われ、ポリゴン内の
各ピクセルの色がそれぞれ補完される。図7(b)は、
図7(a)に示す条件でシェーディング処理がされたポ
リゴンを示す図である。図7(b)のように従来のシェ
ーディング処理では、ポリゴン内の各ピクセルの色デー
タが、各頂点間の色データの差分に従って段階的に色表
現される。例えば、ポリゴン内の座標値(20,5,
0)の色データは、[r,g,b]=[128,12
8,128]となる。
【0005】
【発明が解決しようとする課題】しかしながら、上記従
来の処理では、光源との距離に応じてポリゴンの各頂点
の色データを求めている。従って、図7(a)のよう
に、処理対象となるポリゴンの外側に光源がある場合に
は何ら問題ないが、ポリゴンの内側に光源がある場合に
は次のような問題が生じる。図8(a)のように、ポリ
ゴンの内側、特に各頂点から等距離の位置に光源がある
場合、光源との距離に応じてポリゴンの各頂点の色デー
タを求めると全て同じデータとなる。このため、この差
分がない色データを用いてシェーディング処理を行って
も、図8(b)のようにポリゴン全体が頂点と同一の色
データとなってしまい、図9に示す実際に表現すべき陰
影とは程遠い処理結果となる。
【0006】このような場合の対策として、ポリゴンを
さらに細かく分割して、この分割されたポリゴン毎に上
述の陰影付け処理を行うことが考えられる。しかし、こ
のような画像処理は、装置に大きな負担がかかるので、
高性能の大規模なコンピュータ等で行うことは可能であ
っても、家庭用のパーソナルコンピュータやゲーム機器
等で行うことは現実的に難しい。
【0007】それ故、本発明の目的は、処理対象となる
ポリゴンの内側に光源がある場合でも、装置に大きな処
理負担をかけることなく、実際の映像に近いポリゴンの
陰影付け処理を行うことが可能な画像処理装置及び方法
並びにそのプログラムを提供することである。
【0008】
【課題を解決するための手段および発明の効果】第1の
発明は、ポリゴンの各頂点の色データに基づいて頂点間
がグラデーション表現されるように、当該ポリゴンの各
ピクセルの色データを発生するグラデーション発生部を
備える画像処理装置であって、グラデーション発生部に
対して、ポリゴンの各頂点の座標値を色データとして入
力する座標値入力部、座標値入力部から入力されるデー
タに基づいてグラデーション発生部によって発生される
ポリゴンの各ピクセルの色データを、各ピクセルの座標
値として読み出す座標値読出部、座標値読出部によって
読み出されたポリゴンの各ピクセルの座標値と特定点の
座標値との距離を求める距離算出部、および距離算出部
で求められた距離に応じて、ポリゴンの各ピクセルの色
データを決定する色データ決定部を備える。
【0009】上記のように、第1の発明によれば、ポリ
ゴンの各頂点の座標値に対してシェーディング処理を行
うことで得られる各ピクセルの座標値を用い、特定点と
各ピクセルとの距離に応じて光源の色やテクスチャの色
等を変化させる。これにより、処理対象となるポリゴン
の内側に光源がある場合でも、装置に大きな処理負担を
かけることなく、実際の映像に近いポリゴンの陰影付け
処理を行うことが可能となる。
【0010】第2の発明は、第1の発明に従属する発明
であって、座標値入力部は、グラデーション発生部が処
理可能な色データの範囲内に収まるように、ポリゴンの
各頂点の座標値を所定値で割った値をグラデーション発
生部に対して入力し、距離算出部は、特定点の座標値を
所定値で割った値を特定点の座標値とみなして、距離を
算出することを特徴とする。
【0011】上記のように、第2の発明によれば、ポリ
ゴンの各頂点の座標値を所定値で割って適切な座標値へ
丸め込む。これにより、ポリゴンの各頂点の座標値を色
データとして取り扱うことができる。
【0012】第3の発明は、第1及び第2の発明に従属
する発明であって、特定点が光源の位置である場合、色
データ決定部は、光源の輝度を基準として、距離算出部
で求められた距離に応じて、ポリゴンの各ピクセルの輝
度を決定することを特徴とする。
【0013】上記のように、第3の発明によれば、光源
との距離に応じてポリゴンの各ピクセルの輝度を変化さ
せるので、光が当たっている様子を表現することができ
る。
【0014】第4の発明は、第1及び第2の発明に従属
する発明であって、特定点がカメラの位置である場合、
色データ決定部は、カメラの位置を基準として、距離算
出部で求められた距離に応じて、ポリゴンの各ピクセル
の色をぼかして決定することを特徴とする。
【0015】上記のように、第4の発明によれば、カメ
ラとの距離に応じてポリゴンの各ピクセルの色をぼかし
て変化させるので、カメラを視点とした被写界深度を表
現することができる。
【0016】第5の発明は、ポリゴンの各頂点の色デー
タに基づいて頂点間がグラデーション表現されるよう
に、当該ポリゴンの各ピクセルの色データを発生するグ
ラデーション発生部を用いた画像処理方法であって、グ
ラデーション発生部に対して、ポリゴンの各頂点の座標
値を色データとして入力するステップ、入力されるデー
タに基づいてグラデーション発生部によって発生される
ポリゴンの各ピクセルの色データを、各ピクセルの座標
値として読み出すステップ、読み出されたポリゴンの各
ピクセルの座標値と特定点の座標値との距離を求めるス
テップ、および求められた距離に応じて、ポリゴンの各
ピクセルの色データを決定するステップを備える。
【0017】第6の発明は、第5の発明に従属する発明
であって、グラデーション発生部が処理可能な色データ
の範囲内に収まるように、ポリゴンの各頂点の座標値を
所定値で割った値をグラデーション発生部に対して入力
するステップをさらに備え、距離を求めるステップは、
特定点の座標値を所定値で割った値を特定点の座標値と
みなして、距離を算出することを特徴とする。
【0018】第7の発明は、第5及び第6の発明に従属
する発明であって、特定点が光源の位置である場合、決
定するステップは、光源の輝度を基準として、求められ
た距離に応じて、ポリゴンの各ピクセルの輝度を決定す
ることを特徴とする。
【0019】第8の発明は、第5及び第6の発明に従属
する発明であって、特定点がカメラの位置である場合、
決定するステップは、カメラの位置を基準として、求め
られた距離に応じて、ポリゴンの各ピクセルの色をぼか
して決定することを特徴とする。
【0020】第9の発明は、ポリゴンの各頂点の色デー
タに基づいて頂点間がグラデーション表現されるよう
に、当該ポリゴンの各ピクセルの色データを発生するグ
ラデーション発生部を用いた画像処理方法を、コンピュ
ータ装置で実行させるためのプログラムであって、グラ
デーション発生部に対して、ポリゴンの各頂点の座標値
を色データとして入力するステップ、入力されるデータ
に基づいてグラデーション発生部によって発生されるポ
リゴンの各ピクセルの色データを、各ピクセルの座標値
として読み出すステップ、読み出されたポリゴンの各ピ
クセルの座標値と特定点の座標値との距離を求めるステ
ップ、および求められた距離に応じて、ポリゴンの各ピ
クセルの色データを決定するステップを含む。
【0021】第10の発明は、第9の発明に従属する発
明であって、グラデーション発生部が処理可能な色デー
タの範囲内に収まるように、ポリゴンの各頂点の座標値
を所定値で割った値をグラデーション発生部に対して入
力するステップをさらに含み、距離を求めるステップ
は、特定点の座標値を所定値で割った値を特定点の座標
値とみなして、距離を算出することを特徴とする。
【0022】第11の発明は、第9及び第10の発明に
従属する発明であって、特定点が光源の位置である場
合、決定するステップは、光源の輝度を基準として、求
められた距離に応じて、ポリゴンの各ピクセルの輝度を
決定することを特徴とする。
【0023】第12の発明は、第9及び第10の発明に
従属する発明であって、特定点がカメラの位置である場
合、決定するステップは、カメラの位置を基準として、
求められた距離に応じて、ポリゴンの各ピクセルの色を
ぼかして決定することを特徴とする。
【0024】
【発明の実施の形態】本発明が提供する画像処理装置及
び方法は、ポリゴンによる画像表現を必要とするグラフ
ィックシステムやゲーム機器等に用いられ、それらを構
成するCPUやメモリ等と協働して特徴的な処理を行う
ことで実現される。以下、この特徴的な処理を行う構成
部分を機能ブロックで表現して、本発明が提供する画像
処理装置及び方法を説明する。
【0025】図1は、本発明の一実施形態に係る画像処
理装置を機能ブロックで表現した図である。図1におい
て、本実施形態の画像処理装置は、色データ入力部11
と、グラデーション発生部12と、距離算出部13と、
色データ決定部14とを備える。また、図2は、本発明
の一実施形態に係る画像処理装置が行う画像処理方法の
手順を示すフローチャートである。なお、以下の説明で
は、ポリゴンが三角形である場合について記述するが、
他の多角形であっても同様に処理することが可能であ
る。
【0026】まず、色データ入力部11は、処理対象と
なるポリゴンの各頂点の座標値(x0,y0,z0)、
(x1,y1,z1)及び(x2,y2,z2)を、所
定のメモリ等から読み出す(ステップS201)。次
に、色データ入力部11は、グラデーション発生部12
で処理可能な色データの範囲内に収まるように座標値を
所定値で割って丸め込みを行い、丸め座標値(X0,Y
0,Z0)、(X1,Y1,Z1)及び(X2,Y2,
Z2)を求める(ステップS202)。この処理は、色
表現に用いられるデータ範囲が、座標表現に用いられる
データ範囲より小さい場合でも、各頂点の座標値をグラ
デーション発生部12において色データとして取り扱え
るようにするために行われる。例えば、座標値が0〜1
023の範囲で表現され、色データが0〜255の範囲
で表現されている場合、色データ入力部11は、座標値
をそれぞれ4で割って、丸め座標値(x0/4,y0/
4,z0/4)、(x1/4,y1/4,z1/4)及
び(x2/4,y2/4,z2/4)を求める。なお、
丸め込みを行う必要がない場合には、読み出された座標
値(x0,y0,z0)、(x1,y1,z1)及び
(x2,y2,z2)が、そのまま以下の処理に用いら
れることになる。そして、色データ入力部11は、求め
た丸め座標値を、ポリゴンの各頂点の色データ[X0,
Y0,Z0]、[X1,Y1,Z1]及び[X2,Y
2,Z2]とみなしてそれぞれ設定し、グラデーション
発生部12へ与える(ステップS203)。
【0027】次に、グラデーション発生部12は、ポリ
ゴンの各頂点の色データとみなして与えられた丸め座標
値に基づいて、上記従来の技術で説明したシェーディン
グ処理を実行し、グラデーション化されたポリゴン内の
各ピクセルの色データ[Rm,Gm,Bm]をそれぞれ
求める(ステップS204)。なお、mは1〜ピクセル
数である。このように、各頂点の色データに代えて座標
値でシェーディング処理を実行させることで、この処理
により求められた各色データは、ポリゴン内の各ピクセ
ルの座標値(Rm,Gm,Bm)に相当することにな
る。従って、このグラデーション発生部12には、従来
のグラフィックシステムやゲーム機器にすでに存在する
構成、すなわち各頂点の色データから各ピクセルの色デ
ータを求める構成(カラーコンバイナ等)を、そのまま
使用することができる。そして、グラデーション発生部
12は、各色データを各ピクセルの座標値として距離算
出部13へ与える(ステップS205)。
【0028】距離算出部13は、陰影付けの処理基準と
なる光源位置等の特定点の座標値(x,y,z)を入力
し、色データ入力部11で行われたものと同様の丸め込
みを行って、丸め座標値(X,Y,Z)を求める(ステ
ップS206)。なお、色データ入力部11で丸め込み
が行われていない場合には、入力される座標値(x,
y,z)が、そのまま以下の処理に用いられることにな
る。次に、距離算出部13は、特定点とポリゴンの各ピ
クセルとの2点間距離Dを、座標値に従ってそれぞれ求
める(ステップS207)。なお、この例において、座
標値は4以上の値(例えば「8」)で割ってもよい。な
お、求めるべき2点間距離Dは、従来の技術で述べたよ
うに各座標値差分の2乗和を平方根した値であってもよ
いし、単に各座標値差分の2乗和の値であってもよい。 D=√{(X−Rm)2 +(Y−Gm)2 +(Z−B
m)2 }又は D=(X−Rm)2 +(Y−Gm)2 +(Z−Bm)2 そして、距離算出部13は、それぞれ求めた2点間距離
Dを、色データ決定部14へ出力する。ここで、座標値
のうちX座標は色データのR値として、Y座標は色デー
タのG値として、Z座標は色データのB値としてグラデ
ーション発生部12に入力される。なお、座標と色デー
タの対応関係はこの例に限られない。
【0029】色データ決定部14は、特定点の色データ
を基準として、各頂点を含めたポリゴンの各ピクセルの
色データを、2点間距離Dに応じて決定する(ステップ
S208)。なお、どのようにして色データを決定する
かは、グラフィック表現の性能や目的に応じて自由に設
定することが可能である。例えば、(テクスチャカラー
m)×65536/Dm等の計算によって、色データを
それぞれ求めればよい。なお、mは1〜ピクセル数であ
る。
【0030】このように、ポリゴンの各頂点の座標値に
本来色データに対して行われる処理を行うことで、ポリ
ゴン内の各ピクセルの座標値を得ることができる。従っ
て、この座標値を用いて特定点と各ピクセルとの距離を
求めることができ、図9に示すように、光源からの距離
に応じた色データを各ピクセルの位置にそれぞれ設定す
ることができる。
【0031】一般に、上述した距離の計算及び色データ
の決定は、グラフィックシステムやゲーム機器等に内蔵
されるカラーコンバイナで行われる。このカラーコンバ
イナは、所定のパラメータによって決定される計算機能
を有している。カラーコンバイナで処理される計算式及
び計算回数は、CPUが実行するプログラムで所定のパ
ラメータを与えることによって設定される。具体的に
は、カラーコンバイナにおいて次のような計算が実行さ
れることで、距離の計算及び色データの決定が行われ
る。なお、カラーコンバイナが行う1回の計算処理を
「ステージ」と表現する。
【0032】まず、ステージ1〜ステージ4では、X座
標について計算が行われる。ステージ1では、 各ピクセルの色データ(R)−特定点の座標値(X) となるように計算式が設定される。ここで、各ピクセル
の色データ(R)とは、上記図2のステップS204で
求められた色データ(R)である。また、この計算式で
求められた結果は、レジスタ0に記憶されるように設定
される。なお、特定点の座標値(X)は、座標値(x)
を4で割って丸め込んだ値とする(X=x/4)。ステ
ージ2では、 特定点の座標値(X)−各ピクセルの色データ(R) となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ1に記憶されるように設定
される。ステージ3では、 レジスタ0の値+レジスタ1の値 となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ2に記憶されるように設定
される。これによって、X座標について、特定点座標と
各ピクセル座標との差が求まる。なお、ステージ1及び
ステージ2の両方の和を求めているのは、カラーコンバ
イナではマイナス値を使用できず、計算結果がマイナス
値の場合に「0」となる理由による。ステージ4では、 レジスタ2の値×レジスタ2の値 となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ3に記憶されるように設定
される。これによって、X座標について、特定点座標と
各ピクセル座標との差の2乗が求まる。
【0033】次に、ステージ5〜ステージ8では、Y座
標について計算が行われる。ステージ5では、 各ピクセルの色データ(G)−特定点の座標値(Y) となるように計算式が設定される。ここで、各ピクセル
の色データ(G)とは、上記図2のステップS204で
求められた色データ(G)である。また、この計算式で
求められた結果は、レジスタ0に記憶されるように設定
される。なお、特定点の座標値(Y)は、座標値(y)
を4で割って丸め込んだ値とする(Y=y/4)。ステ
ージ6では、 特定点の座標値(Y)−各ピクセルの色データ(G) となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ1に記憶されるように設定
される。ステージ7では、 レジスタ0の値+レジスタ1の値 となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ2に記憶されるように設定
される。これによって、Y座標について、特定点座標と
各ピクセル座標との差が求まる。ステージ8では、 レジスタ2の値×レジスタ2の値+レジスタ3の値 となるように計算式が設定される。また、この計算式で
求められた結果は、再びレジスタ3に記憶されるように
設定される。これによって、「X座標についての特定点
座標と各ピクセル座標との差の2乗」と「Y座標につい
ての特定点座標と各ピクセル座標との差の2乗」との和
が求まる。
【0034】さらに、ステージ9〜ステージ12では、
Z座標について計算が行われる。ステージ9では、 各ピクセルの色データ(B)−特定点の座標値(Z) となるように計算式が設定される。ここで、各ピクセル
の色データ(B)とは、上記図2のステップS204で
求められた色データ(B)である。また、この計算式で
求められた結果は、レジスタ0に記憶されるように設定
される。なお、特定点の座標値(Z)は、座標値(z)
を4で割って丸め込んだ値とする(Z=z/4)。ステ
ージ10では、 特定点の座標値(Z)−各ピクセルの色データ(B) となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ1に記憶されるように設定
される。ステージ11では、 レジスタ0の値+レジスタ1の値 となるように計算式が設定される。また、この計算式で
求められた結果は、レジスタ2に記憶されるように設定
される。これによって、Z座標について、特定点座標と
各ピクセル座標との差が求まる。ステージ12では、 レジスタ2の値×レジスタ2の値+レジスタ3の値 となるように計算式が設定される。また、この計算式で
求められた結果は、再びレジスタ3に記憶されるように
設定される。これによって、「X座標についての特定点
座標と各ピクセル座標との差の2乗」と「Y座標につい
ての特定点座標と各ピクセル座標との差の2乗」と「Z
座標についての特定点座標と各ピクセル座標との差の2
乗」との和(つまり距離の2乗)が求まる。
【0035】そして、ステージ1〜ステージ12の計算
によって各々の距離の2乗が求められると、色データを
決定する計算が行われる。ステージ13では、 任意の定数(例えば255)−レジスタ3の値(距離の
2乗) となるように計算式が設定される。また、この計算式で
求められた結果は、再びレジスタ3に記憶されるように
設定される。なお、計算の結果がマイナス値になる場合
には「0」となる。これによって、距離が大ききほど小
さくなる値を得ることができる。ステージ14では、 各ピクセルのテクスチャカラー×レジスタ3の値 となるように計算式が設定される。また、この計算式で
求められた結果は、再びレジスタ3に記憶されるように
設定される。このレジスタ3の値が、最終的に画面に出
力される色データとなる。つまり、距離が大ききほど暗
い色データが出力されることとなる。
【0036】ここで、特定点の座標をカメラの座標とす
ることで、カメラからピクセルまでの2点間距離Dをそ
れぞれ求めることができる。従って、この2点間距離D
の値を用いて、適切なフィルタをかけることにより、被
写界深度を実現することができる。図3に、特定点の座
標をカメラの座標にした場合の被写界深度表現を実現す
る手順の一例を示す。
【0037】まず、本発明の画像処理装置を用いるシス
テムに予め内蔵されているフレームバッファから、メモ
リ内に用意された等倍画像保存用バッファに、1フレー
ム分の画像データが転送される(ステップS301)。
この画像データを、等倍画像データAとする。次に、フ
レームバッファ上で、1フレームサイズより小さい予め
定めたサイズのポリゴンに、1フレーム分の画像データ
が貼り付けられてレンダリングされる(ステップS30
2)。このように、1フレーム画像を縮小させた画像を
生成することで、解像度が低下して絵が粗くなった(ぼ
かした感じとなる)画像データを得ることができる。そ
して、フレームバッファから、メモリ内に用意された縮
小画像保存用バッファに、必要な領域分の画像データが
転送される(ステップS303)。この画像データを、
縮小画像データBとする。次に、等倍画像データについ
て、上記図2のステップS201〜S208が実行され
て、カメラから各ピクセルまでの2点間距離Dがそれぞ
れ求められる(ステップS304)。等倍画像保存用バ
ッファの色データ[Ar,Ag,Ab],縮小画像保存
用バッファの色データ[Br,Bg,Bb]及びこの2
点間距離Dに基づいて、各ピクセル毎にRGB成分のそ
れぞれについて以下の計算が行われ、 An×(255−D)/255+Bn×D/255 (n=r,g,bのそれぞれ) 等倍画像データAと縮小画像データBとを混ぜ合わせた
実際に表示させる画像データが求められる(ステップS
305)。この混ぜ合わせ(フィルタをかけること)に
よって、カメラ位置からの距離に応じて色をぼかした色
データを、各ピクセルに付加させることができる。
【0038】この特定点の座標をカメラの座標とした場
合において、上記カラーコンバイナのステージ13以降
で行われる色データを決定する計算を説明する。ステー
ジ13では、 任意の定数(例えば255)−レジスタ3の値(距離の
2乗) となるように計算式が設定される。また、この計算式で
求められた結果は、再びレジスタ3に記憶されるように
設定される。なお、計算の結果がマイナス値になる場合
には「0」となる。これによって、距離が大ききほど小
さくなる値を得ることができる。ステージ14では、縮
小画像の各ピクセルのテクスチャカラーが、レジスタ0
に記憶されるように設定される。ステージ15では、 ((任意の定数−レジスタ3の値)×等倍画像の各ピク
セルの テクスチャカラー+レジスタ3の値×レジスタ0の値)
/任意の定数となるように計算式が設定される。なお、
この計算式において、任意の定数は、例えば255であ
る。また、この計算式で求められた結果は、再びレジス
タ3に記憶されるように設定される。このレジスタ3の
値が、最終的に画面に出力される色データとなる。
【0039】上述した画像処理方法を用いたビデオゲー
ムシステムの構成例を図4に示す。図4において、画像
処理方法は、コプロセッサ42内で実行される。メモリ
43には、図5のメモリマップで示されるプログラム及
びデータが格納される。また、ゲームディスク47は、
DVD等の記録媒体であって、図6のメモリマップで示
されるプログラム及びデータが格納される。
【0040】メモリ43において、プログラム領域に
は、ビデオゲームメインユニットを動作させるための基
本的なシステムプログラムが格納されている。頂点座標
データ領域には、色データ入力部11が上記図2のステ
ップS201で読み出すポリゴンの各頂点の座標値が格
納される。丸め込み頂点座標データバッファには、色デ
ータ入力部11がステップS202で丸め込まれたポリ
ゴンの各頂点の座標値が格納される。ポリゴンデータ領
域には、1枚のフレーム画像を構成するための、各頂点
がどのように接続されるか等の情報が格納される。画像
保存用バッファには、上記図3のステップS301でフ
レームバッファから転送される等倍画像データAと、ス
テップS303でフレームバッファから転送される縮小
画像データBとが、それぞれ格納される。ゲームディス
ク47において、メインプログラム領域には、ゲームを
動作させる基本的なプログラムが格納されている。シェ
ーディング処理プログラム領域には、各頂点の色データ
に代えて座標値でシェーディング処理を実行させ、ピク
セル毎に特定点との距離を求めて色データを決定させる
ためのプログラム(代入処置や演算処理等)が格納され
ている。これは、ゲーム毎にどのようなグラフィック表
現を行うかが異なるため、ゲーム機器にあっては、ポリ
ゴンの陰影付け処理を実行させるための指示が、ゲーム
ディスク47から与えられるようにしているためであ
る。その他のプログラム領域には、メインプログラム及
びシェーディング処理プログラム以外のプログラムが格
納されている。画像データ領域には、ゲームのグラフィ
ック表現に必要なポリゴン及びテクスチャ等に関する様
々なデータが格納されている。音データ領域には、ゲー
ムの音表現に関する様々なデータが格納されている。
【0041】以上のように、本発明の一実施形態に係る
画像処理装置及び方法によれば、ポリゴンの各頂点の座
標値に対してシェーディング処理を行うことで得られる
各ピクセルの座標値を用い、特定点との距離に応じて各
ピクセルの色を変化させる。例えば、特定点が光源の場
合には、距離に応じて色の明るさを変化させ、特定点が
カメラ位置の場合には、距離に応じてぼかしをかける。
これにより、処理対象となるポリゴンの内側に光源があ
る場合でも、装置に大きな処理負担をかけることなく、
実際の映像に近いポリゴンの陰影付け処理を行うことが
可能となる。また、特定点をカメラ位置とすることで、
カメラ視点からの被写界深度表現を行うことが可能とな
る。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る画像処理装置を機能
ブロックで表現した図である。
【図2】本発明の一実施形態に係る画像処理装置が行う
画像処理方法の手順を示すフローチャートである。
【図3】特定点の座標をカメラの座標にした場合の被写
界深度表現を実現する手順例を示すフローチャートであ
る。
【図4】本発明の一実施形態に係る画像処理方法を用い
たゲームシステムの構成例を示すブロック図である。
【図5】図4におけるメモリ43のメモリマップの一例
を示す図である。
【図6】図4におけるゲームディスク47のメモリマッ
プの一例を示す図である。
【図7】従来の陰影付け処理を説明するための図であ
る。
【図8】従来の陰影付け処理における不具合を説明する
ための図である。
【図9】図8の光源配置において実際に表現すべき陰影
を示す図である。
【符号の説明】
11…色データ入力部 12…グラデーション発生部 13…距離算出部 14…色データ決定部 41…メインプロセッサ 42…コプロセッサ 43…メモリ 44…ドライブユニット 45…表示部 46…ゲームコントローラ 47…ゲームディスク

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 ポリゴンの各頂点の色データに基づいて
    頂点間がグラデーション表現されるように、当該ポリゴ
    ンの各ピクセルの色データを発生するグラデーション発
    生部を備える画像処理装置であって、 前記グラデーション発生部に対して、ポリゴンの各頂点
    の座標値を色データとして入力する座標値入力部、 前記座標値入力部から入力されるデータに基づいて前記
    グラデーション発生部によって発生される前記ポリゴン
    の各ピクセルの色データを、各ピクセルの座標値として
    読み出す座標値読出部、 前記座標値読出部によって読み出された前記ポリゴンの
    各ピクセルの座標値と特定点の座標値との距離を求める
    距離算出部、および前記距離算出部で求められた距離に
    応じて、前記ポリゴンの各ピクセルの色データを決定す
    る色データ決定部を備える、画像処理装置。
  2. 【請求項2】 前記座標値入力部は、前記グラデーショ
    ン発生部が処理可能な色データの範囲内に収まるよう
    に、前記ポリゴンの各頂点の座標値を所定値で割った値
    を前記グラデーション発生部に対して入力し、 前記距離算出部は、前記特定点の座標値を前記所定値で
    割った値を前記特定点の座標値とみなして、距離を算出
    することを特徴とする、請求項1に記載の画像処理装
    置。
  3. 【請求項3】 前記特定点が光源の位置である場合、 前記色データ決定部は、前記光源の輝度を基準として、
    前記距離算出部で求められた距離に応じて、ポリゴンの
    各ピクセルの輝度を決定することを特徴とする、請求項
    1又は2に記載の画像処理装置。
  4. 【請求項4】 前記特定点がカメラの位置である場合、 前記色データ決定部は、前記カメラの位置を基準とし
    て、前記距離算出部で求められた距離に応じて、ポリゴ
    ンの各ピクセルの色をぼかして決定することを特徴とす
    る、請求項1又は2に記載の画像処理装置。
  5. 【請求項5】 ポリゴンの各頂点の色データに基づいて
    頂点間がグラデーション表現されるように、当該ポリゴ
    ンの各ピクセルの色データを発生するグラデーション発
    生部を用いた画像処理方法であって、 前記グラデーション発生部に対して、ポリゴンの各頂点
    の座標値を色データとして入力するステップ、 前記入力されるデータに基づいて前記グラデーション発
    生部によって発生される前記ポリゴンの各ピクセルの色
    データを、各ピクセルの座標値として読み出すステッ
    プ、 前記読み出された前記ポリゴンの各ピクセルの座標値と
    特定点の座標値との距離を求めるステップ、および前記
    求められた距離に応じて、前記ポリゴンの各ピクセルの
    色データを決定するステップを備える、画像処理方法。
  6. 【請求項6】 前記グラデーション発生部が処理可能な
    色データの範囲内に収まるように、前記ポリゴンの各頂
    点の座標値を所定値で割った値を前記グラデーション発
    生部に対して入力するステップをさらに備え、 前記距離を求めるステップは、前記特定点の座標値を前
    記所定値で割った値を前記特定点の座標値とみなして、
    距離を算出することを特徴とする、請求項5に記載の画
    像処理方法。
  7. 【請求項7】 前記特定点が光源の位置である場合、 前記決定するステップは、前記光源の輝度を基準とし
    て、求められた前記距離に応じて、ポリゴンの各ピクセ
    ルの輝度を決定することを特徴とする、請求項5又は6
    に記載の画像処理方法。
  8. 【請求項8】 前記特定点がカメラの位置である場合、 前記決定するステップは、前記カメラの位置を基準とし
    て、求められた前記距離に応じて、ポリゴンの各ピクセ
    ルの色をぼかして決定することを特徴とする、請求項5
    又は6に記載の画像処理方法。
  9. 【請求項9】 ポリゴンの各頂点の色データに基づいて
    頂点間がグラデーション表現されるように、当該ポリゴ
    ンの各ピクセルの色データを発生するグラデーション発
    生部を用いた画像処理方法を、コンピュータ装置で実行
    させるためのプログラムであって、 前記グラデーション発生部に対して、ポリゴンの各頂点
    の座標値を色データとして入力するステップ、 前記入力されるデータに基づいて前記グラデーション発
    生部によって発生される前記ポリゴンの各ピクセルの色
    データを、各ピクセルの座標値として読み出すステッ
    プ、 前記読み出された前記ポリゴンの各ピクセルの座標値と
    特定点の座標値との距離を求めるステップ、および前記
    求められた距離に応じて、前記ポリゴンの各ピクセルの
    色データを決定するステップを含む、プログラム。
  10. 【請求項10】 前記グラデーション発生部が処理可能
    な色データの範囲内に収まるように、前記ポリゴンの各
    頂点の座標値を所定値で割った値を前記グラデーション
    発生部に対して入力するステップをさらに含み、 前記距離を求めるステップは、前記特定点の座標値を前
    記所定値で割った値を前記特定点の座標値とみなして、
    距離を算出することを特徴とする、請求項9に記載のプ
    ログラム。
  11. 【請求項11】 前記特定点が光源の位置である場合、 前記決定するステップは、前記光源の輝度を基準とし
    て、求められた前記距離に応じて、ポリゴンの各ピクセ
    ルの輝度を決定することを特徴とする、請求項9又は1
    0に記載のプログラム。
  12. 【請求項12】 前記特定点がカメラの位置である場
    合、 前記決定するステップは、前記カメラの位置を基準とし
    て、求められた前記距離に応じて、ポリゴンの各ピクセ
    ルの色をぼかして決定することを特徴とする、請求項9
    又は10に記載のプログラム。
JP2001044525A 2001-02-21 2001-02-21 画像処理装置及び方法並びにそのプログラム Expired - Lifetime JP4554834B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001044525A JP4554834B2 (ja) 2001-02-21 2001-02-21 画像処理装置及び方法並びにそのプログラム
US09/986,769 US6738064B2 (en) 2001-02-21 2001-11-09 Image processing device and method, and program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001044525A JP4554834B2 (ja) 2001-02-21 2001-02-21 画像処理装置及び方法並びにそのプログラム

Publications (2)

Publication Number Publication Date
JP2002245483A true JP2002245483A (ja) 2002-08-30
JP4554834B2 JP4554834B2 (ja) 2010-09-29

Family

ID=18906502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001044525A Expired - Lifetime JP4554834B2 (ja) 2001-02-21 2001-02-21 画像処理装置及び方法並びにそのプログラム

Country Status (2)

Country Link
US (1) US6738064B2 (ja)
JP (1) JP4554834B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102137A (ja) * 2018-12-25 2020-07-02 株式会社Cygames 画像処理方法、画像処理装置、ゲーム装置及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328427A (ja) * 1998-05-08 1999-11-30 Fujitsu Ltd 多角形分割描画装置、多角形分割描画方法および記憶媒体

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567083B1 (en) * 1997-09-25 2003-05-20 Microsoft Corporation Method, system, and computer program product for providing illumination in computer graphics shading and animation
JP2000020745A (ja) * 1998-07-03 2000-01-21 Hitachi Ltd テンソルレンダリングによる三次元デジタルデータの表示方法及び装置
US6366283B1 (en) * 1999-03-03 2002-04-02 Discreet Logic Inc. Generating image data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328427A (ja) * 1998-05-08 1999-11-30 Fujitsu Ltd 多角形分割描画装置、多角形分割描画方法および記憶媒体

Also Published As

Publication number Publication date
JP4554834B2 (ja) 2010-09-29
US6738064B2 (en) 2004-05-18
US20020113789A1 (en) 2002-08-22

Similar Documents

Publication Publication Date Title
TWI578266B (zh) 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度
JP7096661B2 (ja) キューブマップをテクスチャリングするためのlodを決定する方法、装置、コンピュータプログラム及び記録媒体
US20140071124A1 (en) Image processing apparatus
US7466322B1 (en) Clipping graphics primitives to the w=0 plane
JP3777149B2 (ja) プログラム、情報記憶媒体及び画像生成装置
JP2008059582A (ja) 省エネのためのlod値計算方法とこれを利用した3次元レンダリングシステム
US8179399B2 (en) Rasterizing method
US5892516A (en) Perspective texture mapping circuit having pixel color interpolation mode and method thereof
KR20040011525A (ko) 드로잉 방법
JP3985321B2 (ja) 演算装置および画像処理装置
CN116342778A (zh) 混合式的光栅化装置和方法
JP4554834B2 (ja) 画像処理装置及び方法並びにそのプログラム
US7859531B2 (en) Method and apparatus for three-dimensional graphics, and computer product
JP2003085578A (ja) ゲーム情報、情報記憶媒体、及びゲーム装置
JP3052839B2 (ja) 画像処理装置及びその処理方法
JP4009289B2 (ja) フットプリントに係るテクセルのカラー値をカラー計算するための重み付けファクタを決定する方法
JP3701627B2 (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
JP2001283254A (ja) 3次元グラフィックス描画装置およびその方法
US20030038816A1 (en) Image generating apparatus and image generating program
JP4556646B2 (ja) 図形情報生成装置、画像処理装置、情報処理装置、および図形情報生成方法
JP4106719B2 (ja) 画像処理装置
JP4563070B2 (ja) ゲーム装置及びゲームプログラム
JP2002369076A (ja) 3次元特殊効果装置
JP2011086235A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP2006113909A (ja) 画像処理装置、画像処理方法及び画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100614

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

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

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

Free format text: PAYMENT UNTIL: 20130723

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4554834

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

Year of fee payment: 3

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

EXPY Cancellation because of completion of term