JP3910618B2 - 画像生成装置 - Google Patents
画像生成装置 Download PDFInfo
- Publication number
- JP3910618B2 JP3910618B2 JP2005208262A JP2005208262A JP3910618B2 JP 3910618 B2 JP3910618 B2 JP 3910618B2 JP 2005208262 A JP2005208262 A JP 2005208262A JP 2005208262 A JP2005208262 A JP 2005208262A JP 3910618 B2 JP3910618 B2 JP 3910618B2
- Authority
- JP
- Japan
- Prior art keywords
- illumination
- viewpoint
- glare
- frame buffer
- information
- 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.)
- Expired - Fee Related
Links
Images
Description
本発明は、描画対象となるモデルの3次元表示手段に係わり、特に、光ぼうやグレアをリアルかつ高速に描画表現する手段に関する。
従来の3次元描画手法においては、描画対象であるモデルを、三角形等の形状で構成するものとして登録する。そして、描画の際には、登録された形状モデルを参照して、レンダリングを行なっていた。
さらに、光源等が存在する場合、光源よる光の照射の影響を考慮して、形状の輝度を計算し、この輝度情報に基づき、描画を行なうものであった。このため、モデルデータが存在しない場合には、描画が行なわれない。
光が、空間内に存在する微粒子を照射したときに発生する「光ぼう(こうぼう)」や、光の回折現象で生じるグレアは、それ自体が、形状データで表現できないため、従来の描画手法では表現不可能である。
このような状態を表現する手法として、光ぼうの表現に関して、従来2つの手法が提案されていた。
第1の手法は、光ぼうの表現を、ボリュームレンダリングと称される手法で行なうものである。この手法は、「コンピュータグラフィックス、プリンシプルアンドプラクティス、セカンドエディション、アディソンウエズリー(1990年)第1034頁から第1039頁(Computer Graphics, Principles and Practice, Addison Wesley(1990), pp1034-pp1039)」等の文献に詳しく述べられている。
即ち、本手法は、描画対象となる空間を、複数の小空間に分割し、視線が小空間を通過する様子を、各小空間における輝度変化を積分することによって求めて、光ぼうを表現する手法である。
また、第2の手法は、光ぼうの表現を、形状を生成することによって行なうものである。この手法は、光ぼう現象が発生する位置に、光ぼうを表現するための、新たな仮想形状を生成し、半透明状態で該仮想形状を描画するものである。
さらに、グレア表現に関しては、「シーグラフ90コンファレンスプロシーディングス、Vol.24、No.4、August1990、第395頁から第404頁(SIGGRAPH90 Conference Proceedings Vol.24,No.4, August1990、pp395-404)」等の文献に詳しく述べられている。本手法によれば、生成された画像の輝度データに基づき、特殊な画像処理を行なうことによって、グレア表現を行なうものである。
ところで、上述したような従来技術、即ち、光ぼう表現の第1の従来技術によれば、空間積分を行なう際の処理時間が考慮がされておらず、著しく処理時間がかかってしまうという問題があった。また、光ぼう表現の第2の従来技術によれば、処理時間がさほど要しないものの、光ぼうを表現する色が均質になるため、リアルな表現を行なうことが不可能であったという問題があった。
また、グレア表現に関しても、従来技術においては、生成された画像に対し、画素単位での画像処理を行なうため、処理速度の点で問題があった。
そこで、本発明の目的は、光芒の表現を、リアルかつ高速に行なう手段を提供するとともに、グレア表現も、リアルかつ高速に行なう手段を提供することにある。
上記課題を解決し、本発明の目的を達成するために、以下の手段がある。
即ち、画素ごとに色情報を格納するフレームバッファと、該フレームバッファの内容を参照して表示出力を行なう表示手段と、ある体積を占める空間である部分空間の境界形状に対して、境界形状を構成する画素ごとに、特定の位置からの奥行きデータを出力する境界レンダリング手段と、前記境界形状を構成する画素が、前記特定の位置から見て、特定の位置側に存在するか否かを判断し、予め定めた規則にしたがって、対応する奥行きデータの符号付けを行ない、奥行きデータの加減算処理を、総ての、境界形状を構成する画素に対して行なう差分演算手段と、各画素に対する該差分演算手段による処理結果を格納する積和バッファと、各画素に対して、積和バッファの格納データに基づいて、光の減衰量を計算して、さらに、対応する前記フレームバッファの格納位置の色情報、予め定められている部分空間の色情報、および、光の減衰量に基づいて、当該画素の色情報を定め、フレームバッファ内の対応する位置に格納する処理を行なう合成手段と、を有する画像生成装置である。
また、本発明の他の態様として、以下に示す手段がある。
即ち、画素ごとに色情報を格納するフレームバッファと、該フレームバッファの内容を参照して表示出力を行なう表示手段と、3次元物体を照明する光源、および、障害物が存在すると想定したとき、照射方向に平行な複数の面を生成し、各面に沿って、該光源と光を遮る障害物との距離を求め、該面に対して、光源からの距離にしたがった透明度を設定する光ぼうプレート生成手段と、各面に対して、透明度にしたがった描画を行ない、描画結果を前記フレームバッファに格納する形状レンダリング部と、を有する画像生成装置である。
さらにまた、本発明の他の態様として、以下に示す手段がある。
即ち、画素ごとに色情報を格納するフレームバッファと、該フレームバッファの内容を参照して表示出力を行なう表示手段と、予め定めた複数種類のグレアパターンをマッピングするグレア処理手段とを備える。そして、該グレア処理手段は、表示画面の中心位置と光源の存在位置とを結ぶ直線上に、1以上のグレアパターンをマッピングするように、グレアパターンを前記フレームバッファに格納する、画像生成装置である。
以上のように、本発明によれば、微粒子や三次元断層データ等が存在する部分空間を考慮してレンダリングを行なうことによって、光ぼうを、リアルかつ高速に表現できる。また、本発明によれば、グレアの表現を、リアルかつ高速に表現できる。
以下、本発明の実施形態を、図面を参照して説明する。
なお、本発明の理解の容易化を図るため、図2、3、4、5を参照して、本発明によって描画される画像生成の例と、動作原理について説明し、その後、具体的な装置構成を示して、本実施形態を説明する。
図3は、本実施形態による表示部111の表示画面例である。
図3に示すように、例えば、微粒子物体が、空間内に部分的に存在する「部分空間」203に対して光を照射した場合、その部分空間の厚みが把握できるように表示するものである。このような状態は、例えば、煙や霧等が存在する部分空間に対して、光を照射して生ずる、光ぼう現象を表現したものである。
また、部分空間のような半透明空間と、不透明な物体201が共存しても、部分空間の見える厚みを考慮してリアルに画像生成することを可能とするものである。
次に、図2は、図3に示したA−A'の線を、図面に垂直の上方向から見た様
子を示す図面である。
子を示す図面である。
したがって、図2の「A」「A'」は、図3の「A」「A'」に対応し、また、図2の「B」は、図3の点「B」に対応する。
図2では、3種類の部分空間203が存在しており、背景202は、不透明の物体である。点Bを視点方向に延長することを想定した場合の、背景202との接触点を点B'としている。
もちろん、図2および図3における、物体201は、共通したものであるが、視点の位置が異なるため、物体201の形状は異なっている。
B-B'の視線に注目して、拡大した様子を表現する図面が図4である。
図4において、401は、視点、203は部分空間、202は、不透明物体である。
また、各部分空間203の色情報Cv、不透明物体202の色情報Cbは、予め定められている。また、Ceは、視点位置で観測される色を表現する色情報である。なお、色情報としては、例えば(R、G、B)を数値表現したデータを採用すれば良い。また、402、403、404、405、406、407は、各部分空間203の境界面である。なお、各境界面の法線ベクトルを調べれば、各境界面が、視線側にあるか否かが判断できる。以下、適宜、視点側にある境界面、例えば、402を「表側」、その反対側にある境界面、例えば、403を「裏側」として説明を行なう。
ここで、部分空間を視線が通過する距離は、次のようにして求めることができる。
まず、不透明物体202の描画を行ない、不透明物体202の、視点位置からの奥行き距離Z0を定めておく。その後、部分空間の境界面402、403、404、405、406、407を求め、各境界面と視点位置との距離、Z1、Z2、Z3、Z4、Z5を求める。さらに、各境界面が視点側に存在するか否か、即ち、表側であるか裏側であるかをによって、各境界面と視点位置との距離の加減算を行なう。これにより、視線が、部分空間を通過する距離dを求めることができる。
なお、図では、不透明物体202からの各境界面までの距離を、「Zn'=Z0−Zn(n=0、1、2、3、4、5、6)」として求め、さらに、表側を正、裏側を負として、距離dを求めている。その結果、「d=Z1'−Z2'+Z3'−Z4'+Z5'−Z6'」なる式で、距離dが求まることが分かる。
さて、均質な微粒子が存在する部分空間を通過する光は、その通過距離に従い、対数的に減衰するので、図5に示す式で、視点に到達する色Ceを決定することが可能である。即ち、Kを減衰定数として、「a=exp(−K・d)」なる式で減衰量aを定めている。よって、(1−a)は、透過度を示している。
図5では、横軸に距離dをとり、dの変化に従って、a、(1−a)が変化する様子を示している。
そして、色Ceは、「Ce=Cb・a+Cv・(1−a)」なる式で求めている。但し、Cbは、不透明物体202の色(または、背景色)、Cvは、部分空間の色である。
次に、図1を参照して、上述したような処理を行なう装置の位置構成形態を説明する。
本装置は、モデルデータ格納部101と、画像生成制御部102と、形状レンダリング部103と、画素ごとに色情報を格納するフレームバッファ106と、該フレームバッファの内容を参照して表示出力を行なう表示部111と、光ぼう生成部110とを有して構成されている。また、光ぼう生成部110は、境界レンダリング部104、差分演算部105、積和バッファ108、および合成部109を備えている。
表示部111は、CRT、液晶ディスプレイ等で実現可能であり、また、各バッファは、RAM等のメモリデバイスで実現できる。その他の構成要素も、例えば、各種の処理を行なうCPU、予めプログラムを内蔵したROM、記憶素子やワークエリアとして機能するRAM、各種の論理演算を行なう論理素子等の電子デバイスで実現できる。したがって、本装置は、1台の計算機上で実現可能である。
モデルデータ格納部101は、モデルデータや、視点情報を格納する。
モデルデータとしては、表示対象となる3次元空間内に存在する物体の形を表す形状データ、配置や大きさを示す配置データ、色や質感を示す属性データ、照明の設定条件や照射方向を示す照明データがある。また、視点情報としては、視点401の位置、方向、画角等を示すデータが挙げられる。
奥行きバッファ107は、隠面消去を行なうために、特定位置、例えば視点位置から、モデルデータまでの奥行きデータを格納する。
画像生成制御部102は、モデルデータ格納部101の格納内容を参照して、視点401から見た、物体の3次元データを、2次元画像データに変換、生成するために、各種バッファへのアクセス動作を行なうとともに、形状レンダリング部103の動作を制御する。
形状レンダリング部103は、モデルデータ等を参照して、2次元画像の描画生成処理を行なう。
画像生成制御部102は、画像生成を行なう際に、まず、画像情報を格納するフレームバッファ106と、画像を生成する際に使用する作業バッファ、図1に示す例では、奥行きバッファ1071を初期化する。
フレームバッファ106の初期化は、生成する画像の背景色、例えば黒色のデータを、バッファに格納することで行なえばよい。奥行きバッファ107の初期化は、バッファに、無限遠の値を設定しておけばよい。
画像生成制御部102は、この初期化処理の後、形状の描画を行なう。
即ち、画像生成制御部102は、形状レンダリング部103に対し、視点データ、照明データを与え、その後、形状データを順次、形状レンダリング部103に与えることによって、形状レンダリング部に画像生成を行なわせる。
形状レンダリング部103は、形状データを、視点データを参照して投影変換し、形状データのフレームバッファ106内での格納位置、および、視点位置からの奥行距離を、画素単位で求める。
次に、形状レンダリング部103は、照明データに従って、各画素の色情報の決定を行なう。この際、隠面消去を行なうため、さらに、以下の処理を行なう。
即ち、奥行きバッファ107における、対応する画素位置の奥行きデータを読み出し、既に、形状データに対する奥行データよりも、手前の位置を表す値が、奥行きバッファ107に書き込まれている場合には、フレームバッファ106への色情報の書き込みは行なわない。一方、奥行きバッファ107の値が、手前の位置を表す値でない場合には、フレームバッファ106に対し、対応する画素に色情報を書き込む。さらに、奥行きバッファ107へ、形状の奥行データの値を書き込む処理を行なう。このような処理を行なうことによって、視点位置から見た3次元モデルの描画のための情報が、フレームバッファ106に格納される。
なお、以上説明した、形状レンダリング部103が行なうレンダリング処理は、「Z-Buffer法」と称される公知の手法であるため、その詳細な説明については、省略する。
フレームバッファ106に格納された画像情報は、表示部111によって、画面表示される。
次に、3次元空間内に、微粒子が部分的に存在する部分空間を画像として生成する処理について説明する。微粒子が部分的に存在するモデルとしては、例えば、微粒子に照射された光が拡散して、光が到達している部分の微粒子が可視状態となることによって生じる光ぼう現象や、CTスキャナを備えた三次元断層撮影等によって得られる、データの存在密度に分布があるモデル等が考えられる。
前者の具体例としては、霧の中を、自動車のヘッドライトが照射した状態や、タバコの煙に、光を照するケース等が考えられる。また、光が、窓から室内に向けて、さしこむ状態も考えられる。
後者の例としては、人間の頭部の断層写真が示すデータ等が挙げられる。
次に、本発明の主要部である、光ぼう生成部110が行なう処理を説明する。
まず、画像生成制御部102は、部分空間の境界を、形状データとして作成する。作成方法としては、図2に示すように、ある体積を占める部分空間を、複数配置するのが一般的である。
他の作成方法としては、光ぼうに関しては、光の遮蔽物(不透明物体)の輪郭線を、光源が存在する位置とは反対方向に、掃引することで、部分空間の境界形状を求める。ここで、掃引とは、形状を所定方向に伸ばした状態を想定して形状データを生成することを意味し、グラフィック処理の一般的な手法である。
また、三次元断層撮影データの例では、データの分布密度が、ある値以上となる(または、ある値以下になる)領域の境界線を、境界形状として生成する。
なお、境界形状を生成する際には、境界形状に対する法線の方向が、部分空間の内側または外側のいずれか一方を向くようにしておく。これにより、境界形状が、視点から見たときに、部分空間の視点側の境界なのか、反対側の境界なのか、即ち、表・裏を判別することができる。
画像生成制御部102は、境界レンダリング部104に対し、視点データ、照明データを与えた後、求めた境界形状の情報を与える。境界レンダリング部104は、指示された境界形状の、表裏判定を行なう。これは、境界形状の法線方向と、視線の方向とを比較することによって求めることが可能である。この判定結果を、差分演算部105に与える。
次に、境界レンダリング部104は、境界形状のレンダリングを行なう。レンダリング処理は、形状レンダリング部103と同様の処理によって行うが、このとき輝度計算は行なわず、奥行きバッファ107を参照して、部分空間の境界面に対する奥行データを求めることのみ行なう。
視点位置から見える境界形状ならば、その奥行きデータを、差分演算部105に与える。レンダリングにおける各画素毎の奥行き情報の計算は、形状レンダリング部1031においても使用する「3DDDA」と称される、一般的な手法を採用
して行なう。専用ハードウエアを備えることにより、処理の高速化が図れる。
して行なう。専用ハードウエアを備えることにより、処理の高速化が図れる。
ここで、差分演算部105の処理概要を、図6を参照して説明する。
図6(a)には、境界レンダリング部104、奥行きバッファ107、積和バッファ108、および、差分演算部105を示している。
積和バッファ108は、部分空間の画像生成処理の前に、「0」で初期化される。その後、境界レンダリング部104により、視点位置から見えると判断された画素(図中「画素」と、図示した1画素)の奥行きデータが、差分演算部105が備える減算部に与えられる。
次に、奥行きバッファ107の対応する画素の奥行きデータ602を参照し、601と602の差分を求める。この差分値が、図4に示す「Zn’」である。
差分演算部105が備える加減算部は、境界レンダリング104が求めた法線方向から表裏判定を行ない、表側ならば、「Zn’」に「+」の符号を付加し、裏側ならば「Zn’」に「−」の符号を付加していき、積和バッファ108の画素の対応するデータ603の値と、求まった差分値の演算を行ない、演算結果を再び積和バッファ108の画素603に対するエリアに格納する。
これにより、視線が部分空間を通過する距離、即ち、図4に示すdを求めることができる。
このようにして、画素単位の距離情報が、積和バッファ108に格納される。
なお、三次元断層撮影データのように、部分空間のデータのみで、不透明物体が存在しないモデルの場合には、差分演算部105の構成を簡素にすることができる。これを図6(b)に示す。図示するように、奥行きバッファ107との差分処理がなくなり、積和バッファ108との演算処理のみとなる。また、演算処理は境界形状が視点側にある場合には減算処理、反対側にある場合には加算処理とする。加減算部は、このような処理によって、部分空間中を視線が通過する距離dを求め、積和バッファ108に格納する。
次に、画像生成制御部102は、合成部109に対して、部分空間のレンダリング画像の合成を指示する。合成部109は、積和バッファ108に格納された距離データdを使用して、各画素毎に次の演算を行なう。
a=exp(−K・d) (式1)
(但し、Kは、部分空間内を光線が通過する際の減衰率を示す定数)
なる式で、光の減衰量を求める。そして、
Ce=Cb・a+Cv・(1.0−a) (式2)
なる式で、画素ごとに、視点位置からの色情報を定める。
(但し、Kは、部分空間内を光線が通過する際の減衰率を示す定数)
なる式で、光の減衰量を求める。そして、
Ce=Cb・a+Cv・(1.0−a) (式2)
なる式で、画素ごとに、視点位置からの色情報を定める。
Cbは、フレームバッファ106に格納されている色情報であり、Cvは、部分空間の色情報を示す。また、aは次の式で求める。
合成部109は、以上のような計算を行ない、Ceの値を、フレームバッファ106格納する。
これによって、表示部111は、部分空間への光の照射を考慮した画像を表示出力できる。
以上説明してきたように、本実施形態によれば、部分空間に均質に存在する微粒子状のモデルを、その厚みがわかるように、リアルかつ高速に生成することが可能となる。これにより、光ぼう、三次元断層データ等を、リアルかつ高速に表現を可能な画像生成装置を実現できる。
次に、光ぼうの表現を行なうための、第2の実施形態について、図7、図8を参照して説明する。
図7に、第2の実施形態における構成例を示す。
本装置は、モデルデータ格納部101と、形状レンダリング部103と、フレームバッファ106と、奥行きバッファ107と、表示部111と、光ぼうプレート生成部702と、各構成要素の動作を制御する画像生成制御部701とを有して構成される。
なお、モデルデータ格納部101、形状レンダリング部103、フレームバッファ106、奥行きバッファ107、および表示部111は、図1において同じ符号を付したものと、同一のものである。
画像生成制御部701は、光ぼう以外のモデルデータのレンダリングを、形状レンダリング部103を起動することによって行ない、光ぼうの表現を、光ぼうプレート生成部702を起動することによって行なう。
さて、図8を参照して、光ぼうプレート生成部702が行なう、光ぼう表現の処理概要を説明する。
ここで、図8(a)に示すように、照明の光源801と視点401が存在することを想定する。光源801は、光を照射する対象物802上の点803を原点とした、X、Y、Z座標系のZ軸上に存在し、領域804が照明エリアとなっている。視点401の座標は、(Ex、Ey、Ez)であり、座標(Ax、Ay、Az)である注視点805を注視している。また、視線は、806で表現している。
光ぼうを表現するための、光ぼうプレート811は、図8(b)、(c)に示すようにして生成する。
まず、視線806をXY平面に投射した直線807を計算により求める。次に、直線807と平行で、座標系原点803を通る直線808を定める。次に、XY平面上の直線で、直線808と直交する直線809を、照明の照射エリア804をカバーするように、所定間隔で生成する。次に、直線809と平行で、光源位置801を通る直線810を求める。
そして、光ぼうプレート811は、直線810と各直線809とを含む平面として生成する。
以上のようにして生成した、光ぼうプレート811に対して、図8(d)、(e)に示すようにして、半透明の属性パターンを生成する。図8(d)は、視点401から見た画像であるとする。図8(d)に示すように、光源位置801からの光は、照射対象物である802、812に照射される。
なお、814は、照射対象物である802、812等に遮られた光ぼうを示している。
図8(e)は、図8(d)において、照射対象物802、812を、光源位置801から、光の照射方向に投影した際の、奥行きバッファ107の内容を示す。図8(e)に示すように、奥行きバッファ107には、光源位置801から、照射対象物である802、812までの距離Z0、Z1が、図に示すように格納される。なお、図8(e)において、816、815は、夫々、奥行きバッファ107に対するx軸、y軸である。奥行きバッファ107に格納するデータは、形状レンダリング部103が作成する。つまり、画像生成制御部701は、照明位置および照明方向を、視点情報として、形状レンダリング部103に与え、さらに、光が照射される照射エリアの形状データを、形状レンダリング部103に与えることによって、奥行きバッファ107に格納するデータを生成する。そして、生成した奥行きデータを基に、光ぼうプレートの半透明属性パターンを、各プレート毎に決定する。
図8(e)に示すように、光ぼうプレートは、光源位置から見ると、直線817のように観測される。この直線817を辿って、奥行きデータを得ることによって、光ぼうプレート811上で、照明の到達する距離を求めることができる。
また、光ぼうプレート811上の光源位置813を起点として、奥行きバッファ107に格納された値が示す距離まで、半透明属性を設定する。
また、奥行きバッファ107に格納された値が示す距離以上の部分、または、照明領域にならない部分は、透明の属性を設定しておけば良い。図8(e)下図は、各光ぼうプレート811を示している。白色の部分が、半透明属性を設定する部分である。
このような処理によって、光ぼうプレート811上に、光ぼうの断面を生成することができる。半透明の属性パターンは、一般には、テクスチャマッピングと称される手法によって、形状の表面属性として表現できる。
以上の処理によって生成した、光ぼうプレート811を、形状レンダリング部103に描画指示することによって、照射対象物802、812等に遮られた、光ぼうを表現することが可能になる。このとき、光ぼうプレート811の描画は、視点位置から遠いものから順に、行なっていけば良い。
また、光ぼうプレートの属性設定の際には、図9に示すように、中心部の透明度が小さく、周辺部に向かうほど透明度が高くなる属性パターン901を複数種類予め用意しておき、その中から、必要な部分のみを切り出して、属性パターンを設定することも可能である(図9、902参照)。なお、透明度を、中心からの距離に対し線形、または、中心からの距離の2乗に反比例させて、変化させるようにすることによって、照明光の、距離による減衰状態をリアルに表現することが可能となる。
なお、光源位置から見た場合の、奥行きバッファ107への格納データを作成する際に、視点方向が、バッファのX軸816の方向またはY軸815の方向と等しくなるように、奥行き情報を生成しておくと、光ぼうプレート811の属性設定処理が容易になり好ましい。
光ぼうプレートの生成量が多いほど、光ぼうの表現がリアルになるが、視点位置401と、光ぼうの位置に応じて、光ぼうプレートの生成量を変化させることも考えられる。すなわち、視点位置401と光ぼうの位置とが近い場合には、光ぼうプレートを多く生成し、遠い場合には、光ぼうプレートの生成量を少なくする。なお、このような遠近は、しきい値を設けて判定すれば良い。また、照明を遮蔽する物体の数に応じて変化させることも考えられる。
以上述べたように、第2の実施形態によれば、遮蔽物に遮られた光ぼうの表現を、リアルかつ高速に行なうことが可能となる。また、光が減衰する状態も、リアルに表現可能となる。
次に、輝度が高いものを見たときに、光の回折現象で起きる、いわゆるグレアの表現方法の一実施形態について、図10、11、12を参照して説明する。
図10は、第3の実施形態における装置構成例である。
本装置は、モデルデータ格納部101と、形状レンダリング部103と、フレームバッファ106と、奥行きバッファ107と、表示部111と、グレアプレート生成部1002と、各部の動作を制御して画像生成を行なわせる画像生成制御部1001とを有して構成される。なお、モデルデータ格納部101、形状レンダリング部103、フレームバッファ106、奥行きバッファ107、および、表示部111は、図1にて示した、同一符号を付したものと同一のものである。
画像生成制御部1001は、グレア以外のモデルデータのレンダリングを、形状レンダリング部103に行なわせ、グレアの表現生成は、グレアプレート生成部1002に行なわせる。
グレアプレート生成部1002は、図11(a)に示すようなグレアの表現を行なうための画像データ、即ち、グレアパターン1101、1102を予め作成して用意しておく。なお、図示したグレアパターンは一例であることは言うまでもない。
これらのグレアパターンに対しては、透明度を変化させるような属性を設定する。即ち、グレア表現に関係のない部分を透明とし、グレアパターンの部分だけ半透明の属性を設定しておく。
次に、モデルデータに対する照明情報から、その照明が、表示部111の画面1103上に投影されるべき点1104の位置を計算する。
図11(b)に、表示部111の表示画面1103上の、点1104を示す。
次に、グレアプレート生成部1002は、照明情報から、どれくらいの強度で照明が視点に入射するかを計算する。この計算は次式で行なう。
I=Io・F(θ)/r2 (式3)
但し、Ioは、照明の輝度、rは、光源位置までの距離を示す。また、F(θ)は、照明の指向性を考慮した値であり、スポットライトのように指向性を有する場合、指向特性を考慮した値となり、一方、指向性の無い光源に対しては、一定値となる。なお、θは、図12に示すように、照明位置1201における照明の照射方向1202と視点位置401とのなす角である。なお、1203は、ある視点位置において、照明光が可視状態となる、最も外側の光線を示している。
但し、Ioは、照明の輝度、rは、光源位置までの距離を示す。また、F(θ)は、照明の指向性を考慮した値であり、スポットライトのように指向性を有する場合、指向特性を考慮した値となり、一方、指向性の無い光源に対しては、一定値となる。なお、θは、図12に示すように、照明位置1201における照明の照射方向1202と視点位置401とのなす角である。なお、1203は、ある視点位置において、照明光が可視状態となる、最も外側の光線を示している。
さて、求まった視点における照明の輝度にもとづき、グレアプレート生成部1002は、グレアパターン1101の大きさ、透明度を適宜変更し、照明の投影位置1104に重畳合成する。
重畳合成の方法としては、グレアパターンをテクスチャデータとして、平面にマッピングすることで、テクスチャマッピングの半透明マッピング機能を利用し、高速にグレアを表現できる。このとき、テクスチャマッピングを行う平面は、視線に垂直に正対させ、位置は、照明位置に置くことにする。また、平面のレンダリング時点においては、Z-Bufferの比較処理は、行わない。
また、高輝度の照明を写真等で撮影したときに生じるレンズフレアは、画面中心位置(図11(c)の直線a、bの光点)と照明の投影位置1104とを結ぶ線上に、適宜配置することで表現することができる。この様子を、図11(c)に示す。
なお、形状レンダリング部103による照度計算処理の結果から、画面上の高輝度な部分を抽出して、グレア表現することも考えられる。つまり、形状レンダリング部103により、形状をレンダリングした結果は、フレームバッファ106に格納されている。このフレームバッファ106に格納されているデータを順次調べ、カメラの特性から、表現できる明るさ以上の輝度が格納されているエリアを求める。その後、求まった高輝度の位置に対して、その輝度値に応じて、グレアパターン1101の大きさ、透明度を変更し、重畳合成する。このような手法によっても、高輝度部に対してのグレアの表現が可能となる。
以上のように、本実施形態によれば、リアルかつ高速なグレアの表現が可能となる。
次に、光ぼう生成部110と、グレア生成部とを備えた装置形態について、図13を参照して説明する。
本装置は、モデルデータ格納部101と、形状レンダリング部103と、フレームバッファ106と、奥行きバッファ107と、表示部111と、グレアプレート生成部1002と、光ぼう生成部110と、各部の動作を制御して画像生成を行なわせる画像生成制御部1301とを有して構成される。
ここで、モデルデータ格納部101、形状レンダリング部103、フレームバッファ106、奥行きバッファ107、表示部111は、図1にて示した、同一符号を付したものと同一のものである。
また、グレアプレート生成部1002は、図10にて示した、同一符号を付したものと同一のものである
これらに対して、光ぼう生成部110は、図1に示した光ぼう生成部110または図7に示した光ぼう生成部のいずれかを採用すれば良い。
これらに対して、光ぼう生成部110は、図1に示した光ぼう生成部110または図7に示した光ぼう生成部のいずれかを採用すれば良い。
また、画像生成制御部1301は、図1に示した画像生成制御部102または図7に示した画像生成制御部701の機能と、図10に示した画像生成制御部1001の機能を兼ねた手段である。
詳細な動作は、前述した通りなので、重複説明することは避けるが、本装置によって、光ぼう、グレアを、リアルかつ高速に表現できる。
本装置が行なう処理によって、例えば、図14に示すように、車のヘッドライトによる光ぼうと、ヘッドライトのグレアの表現とが可能となる。このような描画処理は、ドライブシミュレータ、フライトシミュレータ等のシステムへ応用し、高品質の画像表示を行なうシステムを構築できる。
101…モデルデータ格納部、102…画像生成制御部、103…形状レンダリング部、104…境界レンダリング部、105…差分演算部、106…フレームバッファ、107…奥行きバッファ、108…積和バッファ、109…合成部、110…光ぼう生成部、111…表示部
Claims (6)
- 画素ごとに色情報を格納するフレームバッファと、
該フレームバッファの内容を参照して表示出力を行なう表示手段と、
予め定めた複数種類のグレアパターンをマッピングするグレア処理手段と、を備え、
該グレア処理手段は、表示画面の中心位置と光源の存在位置とを結ぶ直線上に、1以上のグレアパターンをマッピングするように、グレアパターンを前記フレームバッファに格納する画像生成装置。 - 表示対象となる物体の形状を示す情報および該物体に対する照明の設定条件を示す照明情報と、該物体を観察する視点の視点位置を含む視点情報とを利用して画像処理を行う画像生成装置であって、
画素ごとに色情報を格納するフレームバッファと、
前記フレームバッファの内容を参照して表示画面に表示出力を行なう表示手段と、
予め定めた複数種類のグレアパターンをマッピングするグレア処理手段と、を有し、
前記グレア処理手段は、
前記照明情報を用いて前記表示画面上における照明の投影位置を求め、前記視点情報および前記照明情報を用いて、視点に入射する照明の輝度を算出し、該算出した視点に入射する照明の輝度を用いて、前記グレアパターンの大きさおよび透明度を求め、
前記表示画面上における照明の投影位置に前記求めた大きさおよび透明度のグレアパターンをマッピングするように、該グレアパターンを前記フレームバッファに格納すること
を特徴とする画像生成装置。 - 請求項2に記載の画像生成装置であって、
前記照明情報には、照明の位置、照明の照射方向、および照明の輝度を示す情報が含まれていて、
前記グレア処理手段は、
前記照明に指向性がある場合、前記照明の位置における照射方向と前記視点位置とがなす角度を求めると共に、前記視点位置と前記照明の位置との距離を求め、前記求めた角度により定まる値と、前記求めた距離と、前記照明の輝度とを用いて前記視点に入射する照明の輝度を算出し、
前記照明に指向性が無い場合、前記視点位置と前記照明の位置との距離を求め、前記求めた距離と、前記照明の輝度と、所定の定数とを用いて前記視点に入射する照明の輝度を算出すること
を特徴とする画像生成装置。 - 表示対象となる物体の形状を示す情報および該物体に対する照明の設定条件を示す照明情報と、該物体を観察する視点の視点位置を含む視点情報とを利用して画像処理を行う画像生成装置であって、
フレームバッファと、
前記形状を示す情報、前記照明情報、および前記視点情報を用いて、前記視点位置から見た物体の形状を示す画像情報を生成し、該画像情報をフレームバッファに格納する形状レンダリング手段と、
前記フレームバッファの内容を参照して表示出力を行なう表示手段と、
予め定めた複数種類のグレアパターンをマッピングするグレア処理手段と、を有し、
前記グレア処理手段は、
前記フレームバッファに格納されている物体の形状を示す画像情報を順次調べ、所定の明るさ以上の輝度の画像情報が格納されているエリアを求め、該求めたエリアの輝度に応じてグレアパターンの大きさおよび透明度を求め、
前記所定の明るさ以上の輝度が格納されているエリアに、該エリアの輝度に応じて求めた大きさおよび透明度のグレアパターンをマッピングするように、該グレアパターンを前記フレームバッファに格納すること
を特徴とする画像生成装置。 - 表示対象となる物体の形状を示す情報および該物体に対する照明の設定条件を示す照明情報と、該物体を観察する視点の視点位置を含む視点情報とを利用して画像処理を実行する計算機が行う画像生成方法であって、
前記計算機には、フレームバッファと、該フレームバッファの内容を参照して表示出力を行なう表示手段とが設けられていて、
予め定めた複数種類のグレアパターンを作成するステップと、
前記照明情報を用いて表示画面上における照明の投影位置を求めるステップと、
前記表示画面の中心位置と前記投影位置とを結ぶ直線上に、予め定めた1以上のグレアパターンをマッピングするように、グレアパターンを前記フレームバッファに格納するステップとを行うこと
を特徴とする画像生成方法。 - 表示対象となる物体の形状を示す情報および該物体に対する照明の設定条件を示す照明情報と、該物体を観察する視点の視点位置を含む視点情報とを利用して画像処理を実行する計算機が行う画像生成方法であって、
前記計算機には、フレームバッファと、該フレームバッファの内容を参照して表示画面に表示出力を行なう表示手段とが設けられていて、
予め定めた複数種類のグレアパターンを作成するステップと、
前記照明情報を用いて前記表示画面上における照明の投影位置を求めるステップと、
前記視点情報および前記照明情報を用いて、視点に入射する照明の輝度を算出するステップと、
前記算出した視点に入射する照明の輝度を用いて、前記グレアパターンの大きさおよび透明度を求めるステップと、
前記表示画面上における照明の投影位置に前記求めた大きさおよび透明度のグレアパターンをマッピングするように、該グレアパターンを前記フレームバッファに格納するステップと、を行うこと
を特徴とする画像生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005208262A JP3910618B2 (ja) | 2005-07-19 | 2005-07-19 | 画像生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005208262A JP3910618B2 (ja) | 2005-07-19 | 2005-07-19 | 画像生成装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP32334795A Division JP3720890B2 (ja) | 1995-12-12 | 1995-12-12 | 画像生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005310188A JP2005310188A (ja) | 2005-11-04 |
JP3910618B2 true JP3910618B2 (ja) | 2007-04-25 |
Family
ID=35438791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005208262A Expired - Fee Related JP3910618B2 (ja) | 2005-07-19 | 2005-07-19 | 画像生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3910618B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563959B2 (en) | 2010-12-09 | 2017-02-07 | Samsung Electronics Co., Ltd. | Image processor, lighting processor and method therefor |
KR102502449B1 (ko) | 2015-10-05 | 2023-02-22 | 삼성전자주식회사 | 조명을 디스플레이하는 방법 및 장치 |
CN114998504B (zh) * | 2022-07-29 | 2022-11-15 | 杭州摩西科技发展有限公司 | 二维图像光照渲染方法、装置、系统和电子装置 |
-
2005
- 2005-07-19 JP JP2005208262A patent/JP3910618B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005310188A (ja) | 2005-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112513712B (zh) | 具有虚拟内容翘曲的混合现实系统和使用该系统生成虚拟内容的方法 | |
CA3054619C (en) | Mixed reality system with virtual content warping and method of generating virtual content using same | |
JP3720890B2 (ja) | 画像生成装置 | |
JP5531093B2 (ja) | コンピュータグラフィックスでオブジェクトにシャドウを付ける方法 | |
US7755626B2 (en) | Cone-culled soft shadows | |
JP3759971B2 (ja) | 3次元像を陰影付けする方法 | |
Supan et al. | Image based shadowing in real-time augmented reality | |
EP3596702A1 (en) | Mixed reality system with multi-source virtual content compositing and method of generating virtual content using same | |
JP2022179473A (ja) | 前の目線からのレンダリングされたコンテンツおよびレンダリングされなかったコンテンツを使用した新しいフレームの生成 | |
KR101619875B1 (ko) | 범용 그래픽 프로세싱 유닛을 이용한 3 차원 캐릭터 렌더링 시스템 및 그의 처리 방법 | |
JP6714357B2 (ja) | 映像処理装置、映像処理方法、及び映像処理プログラム | |
JP3910618B2 (ja) | 画像生成装置 | |
CN109658494B (zh) | 一种在三维可视化图形中的阴影渲染方法 | |
KR20100075351A (ko) | 모바일용 컴퓨터 그래픽 랜더링 방법 및 시스템 | |
Gruen | Ray-guided volumetric water caustics in single scattering media with dxr | |
JP2007310682A (ja) | 透過オブジェクト描画方法 | |
JP4201207B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP3694468B2 (ja) | 画像生成装置及び記憶媒体 | |
Zhdanov et al. | Bidirectional ray tracing with caustic photon and indirect imphoton maps | |
JP3181464B2 (ja) | 大域照明レンダリング方法および装置 | |
KR20120028250A (ko) | 균질한 매질 내에서 광의 산란을 추정하기 위한 방법 | |
WO2023197689A1 (zh) | 一种数据处理的方法、系统和设备 | |
JP2007272389A (ja) | プログラム、情報記録媒体および画像生成システム | |
JP2007141077A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP2009245133A (ja) | プログラム、情報記憶媒体、及び、画像生成システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050729 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050729 |
|
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: 20070109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070124 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |