JP3181464B2 - Global illumination rendering method and apparatus - Google Patents

Global illumination rendering method and apparatus

Info

Publication number
JP3181464B2
JP3181464B2 JP04856094A JP4856094A JP3181464B2 JP 3181464 B2 JP3181464 B2 JP 3181464B2 JP 04856094 A JP04856094 A JP 04856094A JP 4856094 A JP4856094 A JP 4856094A JP 3181464 B2 JP3181464 B2 JP 3181464B2
Authority
JP
Japan
Prior art keywords
light source
image
luminance distribution
processing
unit
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
Application number
JP04856094A
Other languages
Japanese (ja)
Other versions
JPH07262405A (en
Inventor
俊雄 坂井
範人 渡辺
雅則 三好
善文 福田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP04856094A priority Critical patent/JP3181464B2/en
Publication of JPH07262405A publication Critical patent/JPH07262405A/en
Application granted granted Critical
Publication of JP3181464B2 publication Critical patent/JP3181464B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Non-Portable Lighting Devices Or Systems Thereof (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、大域照明レンダリング
(Rendering)方法および装置に係り、3次元
CGシステム、照明設計システム、照明計画システム等
において、計算機システムによって取り扱われる仮想的
な3次元シーンをリアルに表示するレンダリング技術に
関するものである。特に、本発明は、3次元シーンを対
話形式で物体の位置や照明の輝度を変化させる操作に応
じて、間接照明等の効果を考慮したリアルな画像を高速
に生成し、表示するために好適な大域レンダリング方法
および装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a global lighting rendering method and apparatus, and more particularly to a method for rendering a virtual three-dimensional scene handled by a computer system in a three-dimensional CG system, a lighting design system, a lighting planning system, and the like. The present invention relates to a rendering technology for real display. In particular, the present invention is suitable for generating and displaying a real image at high speed in consideration of the effects of indirect lighting and the like in accordance with an operation of changing the position of an object and the brightness of illumination in a three-dimensional scene in an interactive manner. Global rendering method and apparatus.

【0002】[0002]

【従来の技術】コンピュータグラフィックスでは、その
利用の拡大に伴って、その応用の一端として室内や屋外
の照明シミュレーションをリアリスティックにかつ対話
的に行なうことへの要求が高まっている。この室内や屋
外の照明シミュレーションは、物体間の光の伝播をシミ
ュレーションし、物体表面の輝度や色合いの予測などに
用いられる。
2. Description of the Related Art With the expansion of the use of computer graphics, there is an increasing demand for realistically and interactively simulating indoor and outdoor lighting as one of the applications. This indoor or outdoor lighting simulation simulates the propagation of light between objects and is used for predicting the brightness and color of the object surface.

【0003】ところで、現実の空間での光の挙動は、物
体がある照明に照らされ、その物体の光によって他の周
りの物体も照らされるものである。この現象は、一般に
「間接照明」といわれている。さらに、現実の照明は
「大きさ」を持っているので(具体的には、電球の大き
さなどを思い浮かべれば良い)、現実の世界によって作
られる影は、光の当たっている部分と影の境目がはっき
りしない、いわゆる「ソフトな影」になる。
[0003] The behavior of light in a real space is such that an object is illuminated by a certain illumination, and the light of the object illuminates other surrounding objects. This phenomenon is generally called “indirect lighting”. Furthermore, since real lighting has a "size" (specifically, you can imagine the size of a light bulb, etc.), the shadow created by the real world is The boundary between the two is not clear, so-called "soft shadow".

【0004】照明シミュレーションおこなって、リアリ
スティックな画面を生成するには、以上述べた間接照明
と「ソフトな影」を、現実世界に忠実に計算し画像生成
する必要がある。
In order to generate a realistic screen by performing an illumination simulation, it is necessary to calculate the indirect illumination and the “soft shadow” described above faithfully in the real world and generate an image.

【0005】ここにおいて、大域照明レンダリング方法
とは、表現したい現実の空間のあらゆる効果を勘案し
て、画像生成をおこなうものであり、上記の物体のこれ
ら2つの光の効果を表現することを可能にならしめる方
法である。
[0005] Here, the global illumination rendering method is to generate an image in consideration of all effects of the real space to be expressed, and it is possible to express the effect of these two lights of the above object. It is a method to imitate.

【0006】この大域照明レンダリング方法の基本的な
手法としては、C.M.ゴーラル、K.E.トーランス、D.P.グ
リーンバーグ他、「拡散面における光の相互作用のモデ
ル」SIGGRAPH84,1984年、第18巻、第3号、第2
13頁から第222頁まで(C.M.Goral, K.T.Torrance,
D.P.Greenberg, B.Battail,Modeling the Interaction
of Light Between Diffuse Surface, SIGGRAPH84, Com
puter Graphics proceedings, Vol.18, No.3, July 198
4)(従来技術1)に記載されているラジオシティ法が
ある。この方法は、前処理として物体を多角形の集合に
分割し(この処理を「メッシュ分割処理」あるいは、単
に「メッシュ分割」といい、分割された多角形の集合を
「メッシュ」ということにする)、物体相互の光エネル
ギの授受の方程式を各物体毎に作成し、その方程式を解
析することによりメッシュ上の頂点の輝度を得る。この
方程式は、線形方程式になるので、マトリックスで表現
され、マトリックス演算をおこなうことにより、メッシ
ュの輝度を求めることができる。
As a basic method of this global illumination rendering method, CM Goral, KE Torrance, DP Greenberg et al., "Model of Light Interaction on Diffuse Surface", SIGGRAPH84, 1984, Vol. 18, No. 3, , Second
From page 13 to page 222 (CMGoral, KTTorrance,
DPGreenberg, B. Battail, Modeling the Interaction
of Light Between Diffuse Surface, SIGGRAPH84, Com
puter Graphics proceedings, Vol. 18, No. 3, July 198
4) There is a radiosity method described in (Prior Art 1). In this method, an object is divided into a set of polygons as preprocessing (this processing is called "mesh division processing" or simply "mesh division", and the set of divided polygons is called "mesh" ), An equation for transmitting and receiving light energy between objects is created for each object, and the equation is analyzed to obtain the brightness of the vertices on the mesh. Since this equation is a linear equation, it is expressed by a matrix, and by performing a matrix operation, the brightness of the mesh can be obtained.

【0007】そして、この得られた輝度を基に各メッシ
ュを3次元画像表示することによりリアルな映像を得る
ことができる。
[0007] Then, a real image can be obtained by displaying each mesh in a three-dimensional image based on the obtained luminance.

【0008】また、この方法では、物体表面を完全拡散
反射面(perfect diffuser surf
ace)と仮定し、光源以外の物体も光を吸収して、か
つ、それを放射する物体としている。ここで、完全拡散
反射面とは、すべての方向に全く一様の強さで光を反射
する面のことである。例えば、白墨、紙などがこれに該
当する。
Further, in this method, the surface of the object is completely diffuse-reflected (perfect diffuser surface).
ace), it is assumed that objects other than the light source also absorb light and emit it. Here, the perfect diffuse reflection surface is a surface that reflects light with a completely uniform intensity in all directions. For example, black ink and paper correspond to this.

【0009】上記従来技術1のラジオシティ法によって
作成されたシーンを構成する物体は、すべての面を完全
拡散面と仮定しているので、視点が変化しても、輝度分
布は変化しない。したがって、視点が変化しても、再
度、その視点を変化させた画像の輝度計算をおこなう必
要がなく、輝度分布は、従前のものを利用して、新たな
画像を生成することができる。
The objects constituting the scene created by the radiosity method of the prior art 1 assume that all surfaces are perfectly diffused surfaces, so that the luminance distribution does not change even if the viewpoint changes. Therefore, even if the viewpoint changes, it is not necessary to calculate the luminance of the image whose viewpoint has been changed again, and a new image can be generated using the conventional luminance distribution.

【0010】さらに、上記従来技術1のラジオシティ法
に関連した方法としては、M.F.コーエン、S.E.チェン、
J.R.ワランス、D.P.グリーンバーグ、「高速ラジオシテ
ィイメージ生成への漸進的改良アプローチ」、SIGGRAPH
88(コンピュータグラフィックスプロシーディング)、
1988年、第22巻、第4号、第75頁から第84頁
まで(M.F.Cohen, S.E.Chen, J.R.Wallance, D.P.Green
berg, A ProgressiveRefinement Approach to Fast Rad
iosity Image Generation, SIGGRAPH88(Computer Graph
ics proceedings), Vol.22, No.4, pp.75-84, August 1
988)(従来技術2)、米国特許出願第332,777
号(従来技術3)、およびD.リシンスキー、F.タンピエ
リ、D.P.グリーンバーグ、「正確なラジオシティ法のた
めの不連続なメッシュ分割方法」IEEEコンピュータグラ
フィックス・アンド・アプリケーションズ、第12巻、
第6号、第25頁から第39頁、1992年11月号
(D.Lischinski, F.Tampieri, D.P.Greenberg, Discont
inuity meshing for accurate radiosity, IEEE Comput
er Graphics and Applications, Vol.12, No.6, pp.25-
39, (November 1992))(従来技術4)に記載されてい
る漸進的ラジオシティ法がある。
Further, as a method related to the radiosity method of the prior art 1, MF Cohen, SE Chen,
JR Warrance, DP Greenberg, "A Progressive Improvement Approach to High-Speed Radiosity Image Generation", SIGGRAPH
88 (computer graphics proceeding),
1988, Volume 22, Issue 4, pages 75 to 84 (MFCohen, SEChen, JRWallance, DPGreen
berg, A ProgressiveRefinement Approach to Fast Rad
iosity Image Generation, SIGGRAPH88 (Computer Graph
ics proceedings), Vol.22, No.4, pp.75-84, August 1
988) (Prior Art 2), US Patent Application No. 332,777.
No. 3 (prior art 3), and D. Lisinski, F. Tampieri, DP Greenberg, "Discontinuous Mesh Segmentation Method for Accurate Radiosity Method", IEEE Computer Graphics and Applications, Vol. 12,
No. 6, pages 25 to 39, November 1992 (D. Lischinski, F. Tamperii, DPGreenberg, Discont)
inuity meshing for accurate radiosity, IEEE Comput
er Graphics and Applications, Vol.12, No.6, pp.25-
39, (November 1992)) (Prior Art 4).

【0011】前記従来技術1のラジオシティ法は、物体
相互の光エネルギの授受の方程式を各物体毎に作成し、
その方程式を解析するので、多くのメモリを必要とす
る。
In the radiosity method of the prior art 1, an equation for transfer of light energy between objects is created for each object,
Since the equation is analyzed, a lot of memory is required.

【0012】そこで、上記従来技術2〜4の漸進的ラジ
オシティ法は、光エネルギの授受を漸進的に計算して、
徐々に質の高い画像へと更新していくものである。すな
わち、現実世界の光の反射に擬えて、物体間でエネルギ
の授受をするものとして、物体間のエネルギ計算をおこ
なっていくのである。具体的には、伝搬する最も大きな
エネルギを持っている光源からエネルギを放出し、他の
物体はその放出されたエネルギを受け取り、蓄える(以
下、この処理を「放射演算」という)。そして、逐次最
大のエネルギを持っている物体を探索し、その物体を光
源として、さらにまた放射演算する。この処理を最大の
エネルギを持っている物体のエネルギが0になるまで続
けるのである。
Therefore, the gradual radiosity methods of the above-mentioned prior arts 2 to 4 calculate the transfer of light energy gradually,
The image is gradually updated to a high quality image. That is, the energy calculation between the objects is performed assuming that energy is transferred between the objects by imitating the reflection of light in the real world. Specifically, energy is emitted from the light source having the largest energy to propagate, and other objects receive and store the emitted energy (hereinafter, this processing is referred to as “radiation calculation”). Then, an object having the maximum energy is sequentially searched, and the object is used as a light source, and the radiation calculation is further performed. This process is continued until the energy of the object having the maximum energy becomes zero.

【0013】上記従来技術1の方法では、マトリックス
演算を全て終了させ、物体相互の光エネルギの授受の方
程式をすべて解かなければ結果を得ることはできない
が、この漸進的ラジオシティ法では、計算の途中でもメ
ッシュ上の頂点の輝度が計算されているので、途中の計
算結果を3次元画像表示することができる。そのためユ
ーザが十分なレベルの画像であると判断した場合または
ある程度の傾向を知りたい場合には処理を中断して、途
中結果を表示することができる。
In the method of the prior art 1, the result cannot be obtained unless all the matrix operations are completed and all the equations for the transfer of the light energy between the objects are solved. However, in the progressive radiosity method, the calculation cannot be performed. Since the brightness of the vertices on the mesh is calculated even on the way, the calculation result on the way can be displayed as a three-dimensional image. Therefore, when the user determines that the image is of a sufficient level or wants to know a certain tendency, the process can be interrupted and the intermediate result can be displayed.

【0014】さらに、上記ラジオシティ法に関連した方
法の対話形式での利用に改良した手法として、S.E.チェ
ン、「改良増進型ラジオシティ法:対話型イメージ統合
システムへの漸進的ラジオシティ法の拡張」SIGGRAPH'9
0(コンピュータグラフィックス・プロシーディン
グ)、第24巻、第4号、第135頁から第144頁ま
で、1990年8月(S.E.Chen,Incremental Radiosit
y: An Extension of Progressive Radiosity to an Int
eractive Image Synthesis System, Computer Graphics
(SIGGRAPH'90 Proceedings), Vol.24, No.4, pp.135-14
4, August 1990)(従来技術5)に記載されているよう
に、物体の属性や形状が変化した場合にその変化量のみ
再計算する方法がある。
Further, SE Chen, "Improved Enhanced Radiosity Method: Extending the Progressive Radiosity Method to an Interactive Image Integration System", as an improved method for interactive use of the above radiosity method. ''SIGGRAPH'9
0 (Computer Graphics Proceeding), Vol. 24, No. 4, pp. 135-144, August 1990 (SEChen, Incremental Radiosit)
y: An Extension of Progressive Radiosity to an Int
eractive Image Synthesis System, Computer Graphics
(SIGGRAPH'90 Proceedings), Vol.24, No.4, pp.135-14
4, August 1990) (prior art 5), there is a method of recalculating only the amount of change when the attribute or shape of the object changes.

【0015】この従来技術5の手法は、上記従来技術2
〜4の漸進的ラジオシティ法を前提としている。すなわ
ち、上記漸進的ラジオシティ法で処理を進め、計算の途
中でユーザがシーンの変更を行ったときに全ての処理を
中断し、変更された物体の変化に従い、その変化量を勘
案して、放射演算をした後に、通常の処理を続行するの
である。この手法では、途中でさまざまなパラメータを
変化させ、途中の演算過程を表示することができる。
The technique of the prior art 5 is based on the technique of the prior art 2 described above.
~ 4 progressive radiosity methods are assumed. That is, proceed with the above-mentioned progressive radiosity method, suspend all the processing when the user changes the scene in the middle of the calculation, according to the change of the changed object, taking into account the amount of change, After performing the radiation calculation, the normal processing is continued. In this method, various parameters can be changed on the way, and the calculation process on the way can be displayed.

【0016】さらに、上記の漸進的ラジオシティ法とし
ては、D.M.バウム、J.R.ワランス、M.F.コーエン、D.P.
グリーンバーグ、「バックバッファアルゴリズム:動的
環境のラジオシティ法の拡張」ビジュアルコンピュー
タ、第2巻、第298頁から第306頁まで、1986
年(M.R.Baum, J.R.Wallance, M.F.Cohen, D.P.Greenbe
rg, The back-buffer algolithm : An extension of th
e radiosity method todynamic environments, The Vis
ual Computer, Vol.2, pp.298-306,1986)(従来技術
6)に記載されているように、物体が動くような環境下
の状況の画像を高速に生成する方法がある。
Further, the above-mentioned progressive radiosity method includes DM Baum, JR Warrance, MF Cohen, DP
Greenberg, "Backbuffer Algorithm: An Extension of the Radiosity Method in Dynamic Environments," Visual Computer, Vol. 2, pp. 298-306, 1986.
Year (MRBaum, JRWallance, MFCohen, DPGreenbe
rg, The back-buffer algolithm: An extension of th
e radiosity method todynamic environments, The Vis
ual Computer, Vol. 2, pp. 298-306, 1986) (prior art 6), there is a method of generating an image of a situation under an environment in which an object moves at a high speed.

【0017】この方法は、あらかじめ動かない物体間の
エネルギ伝播係数(一般に、この係数を、「形状因子」
(Form factor)と呼んでいる。このエネル
ギ伝播係数は、物体間の距離の2乗に反比例する量であ
って、エネルギが伝わるときの減衰量と考えて良い)を
計算しておく。
This method uses an energy transfer coefficient between objects that do not move in advance (generally, this coefficient is referred to as a “form factor”).
(Form factor). This energy propagation coefficient is an amount that is inversely proportional to the square of the distance between the objects, and may be considered as an attenuation when energy is transmitted.)

【0018】そして、あらかじめ動かない物体間の形状
因子を計算する際に、移動する物体が存在する領域を計
算しておき、第一の段階では、移動する物体の存在する
領域を、形状因子の計算から除外して、すべての移動し
ない物体から周りを見たときのそれぞれ他の物体との形
状因子を求めておく。その後、第二の段階では、動く物
体と他の物体の形状因子を求めて、あらかじめ計算して
おいたすべての動かない物体の形状因子との両者によっ
て、物体のエネルギを計算し、シーン内の物体の輝度を
求める方法である。
When calculating the shape factor between objects that do not move, the region where the moving object exists is calculated in advance, and in the first stage, the region where the moving object exists is calculated as the form factor of the shape factor. Excluded from the calculation, the form factor of each non-moving object when viewed from the surroundings with each other object is determined. Then, in the second stage, the form factors of the moving object and the other objects are determined, and the energy of the object is calculated using both the form factors of all the non-moving objects that have been calculated in advance. This is a method for determining the brightness of an object.

【0019】この方法によれば、時間が変化するたびに
形状因子を計算しなければならない物体は、動く物体か
ら周りを見たときの形状因子とその動く物体によって隠
された部分の形状因子のみになるので、かなりの部分の
形状因子計算を削減することができる。
According to this method, the object whose form factor must be calculated every time changes is only the shape factor of the moving object and the shape factor of the part hidden by the moving object. Therefore, the calculation of the shape factor in a considerable part can be reduced.

【0020】さらに、以上述べたラジオシティ法を並列
化することによって高速化する方法として、D.R.バウ
ム、「並列処理とハードウェア高速化機構によるリアル
タイムラジオシティ法」J.M.ウィンゲット、コンピュー
タグラフィックス(1990年、対話型3Dグラフィッ
クスシンポジウム)、第24巻、第2号、1990年、
第67頁から第75頁まで(D.R.Baum, and Winget, Re
al time radiosity through parallel processing and
hardware acceleration, Computer Graphics(1990 Symp
osium on Interactive 3D Graphics), Vol.24, No.2, p
p.67-75, March 1990)(従来技術7)に記載されてい
るように、光エネルギの伝播計算を並列化させる方法が
ある。この方法は、上記漸進的ラジオシティ法において
1つの光源からのエネルギ放射処理を物体毎に並列処理
することにより高速化している。
Further, as a method for increasing the speed by parallelizing the radiosity method described above, DR Baum, "Real-time radiosity method by parallel processing and hardware acceleration mechanism", JM Winget, Computer Graphics (1990) Year, Interactive 3D Graphics Symposium), Vol. 24, No. 2, 1990,
From page 67 to page 75 (DRBaum, and Winget, Re
al time radiosity through parallel processing and
hardware acceleration, Computer Graphics (1990 Symp
osium on Interactive 3D Graphics), Vol.24, No.2, p
p.67-75, March 1990) (prior art 7), there is a method of parallelizing the propagation calculation of light energy. This method speeds up the energy radiation processing from one light source in the above progressive radiosity method by performing parallel processing for each object.

【0021】[0021]

【発明が解説しようとする課題】上記全ての従来技術に
係る大域照明レンダリング方法は、間接照明と「ソフト
な影」を忠実に計算するために、この2つの効果を全て
の光源に対して同時に考慮して、物体をメッシュ分割
し、その後の放射演算により、物体相互の光エネルギの
やり取りの計算をおこなっている。
All of the prior art global lighting rendering methods described above apply the two effects simultaneously to all light sources in order to faithfully calculate indirect lighting and "soft shadows". Considering this, the object is divided into meshes, and the calculation of the exchange of light energy between the objects is performed by the subsequent radiation calculation.

【0022】しかしながら、上記従来技術では、高速に
画像を表示し、かつ、対話環境に適した画像生成をおこ
なうということは、困難である。というのも、以下のよ
うな問題が発生するためである。
However, it is difficult to display an image at a high speed and generate an image suitable for an interactive environment in the above-mentioned conventional technology. This is because the following problems occur.

【0023】先ず、第一に、全ての光源に対して、間接
照明と「ソフトな影」という2つの効果を同時に満足す
るように物体をメッシュ分割するので、メッシュ分割に
時間がかかるという問題点があった。
First, since the object is divided into meshes so as to simultaneously satisfy the two effects of indirect illumination and "soft shadow" for all the light sources, it takes a long time to perform the mesh division. was there.

【0024】これは、1つの光源に対する影と「ソフト
な影」の輝度を現実に忠実に計算するために、物体の表
面をあらかじめ「ソフトな影」になる領域と全照明領域
の境界でメッシュ分割する処理をおこなわなければなら
ないからである。
In order to calculate the brightness of a shadow and a “soft shadow” with respect to one light source faithfully, the surface of the object is previously meshed with a boundary between a “soft shadow” region and the entire illumination region. This is because it is necessary to perform a division process.

【0025】複数の光源が存在すれば、それぞれの光源
ごとに「ソフトな影」になる境界で物体をメッシュ分割
しなければならない。メッシュ分割は1つの光源に対す
るメッシュ分割後のメッシュに対して行われるので、メ
ッシュ処理は光源が増える毎に分割するメッシュの数が
増え、メッシュ分割処理に時間がかかるようになる。
If a plurality of light sources are present, the object must be mesh-divided at the boundary where each light source becomes a "soft shadow". Since the mesh division is performed on the mesh after the mesh division for one light source, the number of meshes to be divided increases each time the number of light sources increases, and the mesh division processing takes time.

【0026】しかも、上記従来技術では、ある光源に対
してあまり影響のない領域でも、メッシュの分割を省略
することが難しいという問題点があった。すなわち、あ
る光源Aに遠く、ある光源Bに近い物体の面は、光源A
のみの影響を考慮した場合は、光源Aの光には、その輝
度があまり影響されないので、メッシュの大きさを大き
く取りたいが、光源Bの光の影響を勘案したときは、光
の輝度を忠実に表現するために、できるだけメッシュの
大きさを小さくする方が望ましいからである。
In addition, the above-described conventional technique has a problem that it is difficult to omit the mesh division even in a region having little influence on a certain light source. That is, the surface of an object far from a certain light source A and close to a certain light source B is the light source A
When only the influence of the light source A is considered, the luminance of the light is not so much affected by the light of the light source A. Therefore, it is desirable to increase the size of the mesh. This is because it is desirable to reduce the size of the mesh as much as possible in order to faithfully represent.

【0027】また、対話処理により物体の位置を変化さ
せたときには、全ての光源を考慮して、全ての物体をメ
ッシュ分割しなおさなければならず、既存の計算結果を
利用して、演算速度の向上を図ることができないという
問題があった。
Further, when the position of the object is changed by the interactive processing, all the objects must be re-meshed in consideration of all the light sources. There was a problem that improvement could not be achieved.

【0028】また、第二に、第一の問題点とも関連した
ことであるが、物体のメッシュが複雑になると、後の放
射演算に時間がかかるという問題点があった。この放射
演算でおこなうエネルギの放射処理はメッシュ分割され
た各多角形または頂点に対しておこなわれる。従来の方
法では、1つの物体に対して全ての光源を考慮してメッ
シュ分割するので、光源が多くなると光源数に比例して
メッシュが細かく分割される。したがって、メッシュ分
割数が増加すればそれに比例して、放射演算にかかる時
間が多くなるという問題点があった。
Secondly, in connection with the first problem, if the mesh of the object becomes complicated, there is a problem that it takes a long time to calculate the radiation later. The radiation processing of the energy performed in the radiation calculation is performed on each polygon or vertex divided into meshes. In the conventional method, a single object is divided into meshes in consideration of all light sources. Therefore, when the number of light sources increases, the mesh is finely divided in proportion to the number of light sources. Therefore, there is a problem that the time required for the radiation calculation increases in proportion to the increase in the number of mesh divisions.

【0029】さらに、放射演算量の削減ということも考
慮されていない。というのも、光源の影響をあまり受け
ないメッシュの多角形または頂点に対する放射演算は、
演算しても、結果にはあまり影響を与えないからであ
る。
Further, reduction of the amount of radiation calculation is not considered. This is because radiation calculations on mesh polygons or vertices that are less affected by light sources are:
This is because the operation does not significantly affect the result.

【0030】ここで、光源の影響をあまり受けないメッ
シュの多角形または頂点の態様には、以下の二つがあ
る。
Here, there are the following two forms of polygons or vertices of the mesh which are not significantly affected by the light source.

【0031】(1)光源の影に存在するもの (2)光源からある程度距離が離れているもの (1)の場合はある光源から見たときに影になる領域に
存在するので、放射演算でエネルギを伝播する必要がな
い。(2)の場合は光のエネルギは距離の2乗に反比例
するので、ある程度距離が離れている物体には、光の輝
度はほとんどなく、これも放射演算でエネルギを伝播す
る必要がない。
(1) Objects that exist in the shadow of the light source (2) Objects that are at a certain distance from the light source (1) In the case of (1), the object exists in a shadowed area when viewed from a certain light source. There is no need to propagate energy. In the case of (2), since the energy of light is inversely proportional to the square of the distance, an object at a certain distance has almost no light brightness, and it is not necessary to propagate the energy in the radiation calculation.

【0032】上記従来の方法では、このような光源の影
響を受けない多角形または頂点に対しても、放射演算を
おこなわなければならない。言いかえれば、第一の問題
点であげたように、メッシュ分割を省略することが困難
だったので、放射演算の過程でもあまり実効のない処理
をやらなければならないようになり、一層余計な時間が
かかるという結果になったのである。
In the above-described conventional method, the radiation calculation must be performed even on a polygon or a vertex which is not affected by such a light source. In other words, as mentioned in the first problem, it was difficult to omit the mesh division, so it was necessary to perform less effective processing even in the radiation calculation process, and more extra time was required. The result is that it takes.

【0033】最後に、上記物体の動きに関する従来の大
域照明レンダリング方法は、対話システムのようにラン
ダムに形状の位置などが変化する場合には適応すること
ができないという問題点があった。上記従来技術6の大
域照明レンダリング方法は、物体の軌道があらかじめわ
かっている場合には、その軌道に沿って仮想的な領域を
仮定し、まえもって物体の軌道によって隠されるような
物体同志の形状因子計算を実行することは可能である。
しかしながら、対話システムの場合のように、ランダム
に物体の位置や形状が変化するときは、あらかじめ物体
の軌道を仮定することは不可能であり、上記従来技術6
の方法では、移動物体によって物体間の形状因子を計算
することはできないからである。
Finally, there is a problem that the conventional global illumination rendering method relating to the motion of the object cannot be applied when the position of the shape changes randomly as in an interactive system. When the trajectory of an object is known in advance, the global illumination rendering method according to the prior art 6 assumes a virtual area along the trajectory, and forms a form factor of objects that are hidden by the trajectory of the object in advance. It is possible to perform the calculations.
However, when the position or shape of an object changes randomly as in the case of a dialogue system, it is impossible to presuppose the trajectory of the object in advance.
This is because, in the method of (1), it is impossible to calculate the shape factor between the objects by the moving object.

【0034】本発明は、上記従来技術の問題点を解決す
るためになされたもので、その目的は、コンピュータグ
ラフィックスの分野におけるラジオシティ法による画像
生成において、メッシュ分割の数を減らすことにより、
高速に画像生成をなしうる大域照明レンダリング方法お
よび装置を提供することにある。
The present invention has been made to solve the above-mentioned problems of the prior art. It is an object of the present invention to reduce the number of mesh divisions in image generation by the radiosity method in the field of computer graphics.
An object of the present invention is to provide a global illumination rendering method and apparatus capable of generating images at high speed.

【0035】また、対象となるシーン内の物体や光源の
変化に対応させることが可能な大域照明レンダリング方
法および装置を提供することにある。さらに、その目的
は、対話システムによって物体の形状、属性、位置、光
源の強度、視点の変化に対して、高速に応答し、その変
化に応じた画像を生成し、表示させるための大域照明レ
ンダリング方法および装置を提供することにある。
Another object of the present invention is to provide a global illumination rendering method and apparatus capable of responding to changes in objects and light sources in a target scene. Furthermore, its purpose is to provide a global illumination rendering system that responds quickly to changes in the shape, attributes, position, light source intensity, and viewpoint of an object using an interactive system, and generates and displays an image according to the change. It is to provide a method and an apparatus.

【0036】[0036]

【課題を解決するための手段】上記目的を達成するため
に、本発明に係る大域照明レンダリング方法の第一の構
成は、計算機システムによって、仮想的な3次元シーン
を表示する大域照明レンダリング方法において、仮想的
な3次元シーンを構成する光源および物体に関する各種
パラメータを基に、前記物体表面上の輝度分布を演算す
る1つ以上の輝度分布演算部と、その各々の輝度分布演
算部に、シーン内に存在する光源ごとに処理を割り振る
光源選択部と、前記輝度分布演算部によって演算された
輝度分布を基に、任意の視点から見たときの画像を生成
する1つ以上の輝度分布画像生成部と、前記輝度分布画
像生成部によって生成された画像を合成する画像合成処
理部とを備え、 (1)前記光源選択部によって、前記各輝度分布演算部
ごとに対し、シーン内に存在する異なった1つ、または
重複しない一部の光源の情報のみを設定することで、シ
ーン内の各光源情報が、特定の1つの輝度分布演算部に
振り分けられるように処理する工程と、 (2)前記輝度分布演算部によって、1つの光源に対し
ての前記物体表面上の輝度分布を演算する工程と、 (3)前記輝度分布画像生成部によって、前記(2)の
工程で演算された輝度分布を基に、任意の視点から見た
ときの画像を生成する工程と、 (4)前記画像合成処理部によって、前記(3)の工程
で生成された各々の画像を合成する工程とを有し、前記
(1)ないし(4)の工程をこの順におこなうようにし
たものである。
According to a first aspect of the present invention, there is provided a global illumination rendering method for displaying a virtual three-dimensional scene by a computer system. One or more brightness distribution calculation units for calculating a brightness distribution on the surface of the object based on various parameters related to a light source and an object constituting a virtual three-dimensional scene; A light source selection unit for allocating processing for each light source existing in the image processing unit; and one or more luminance distribution image generation units for generating an image viewed from an arbitrary viewpoint based on the luminance distribution calculated by the luminance distribution calculation unit. And an image synthesis processing unit that synthesizes an image generated by the luminance distribution image generation unit. (1) The light source selection unit controls the luminance distribution calculation units.
For each, a different one that exists in the scene, or
By setting only the information of some non-overlapping light sources,
Each light source information in the image is sent to one specific luminance distribution calculation unit.
A step of processing as those distributed, by (2) the luminance distribution calculation unit, a step of calculating a luminance distribution on the surface of the object with respect to one light source, by (3) the intensity distribution image generating unit, A step of generating an image viewed from an arbitrary viewpoint based on the luminance distribution calculated in the step (2); and (4) a step of generating the image in the step (3) by the image synthesis processing unit. And a step of synthesizing the respective images, and the steps (1) to (4) are performed in this order.

【0037】[0037]

【0038】より詳しくは、上記の大域照明レンダリン
グ方法において、前記(2)の工程が、物体の表面をメ
ッシュ分割する工程を含むようにしたものである。
More specifically, in the above global illumination rendering method, the step (2) includes a step of dividing the surface of the object into meshes.

【0039】[0039]

【0040】[0040]

【0041】またさらに詳しくは、上記の大域照明レン
ダリング方法において、前記(2)の工程の輝度分布演
算では、シーン内の物体表面の輝度分布は、その輝度分
布が相対値であらわされた相対的な輝度分布であって、
前記(4)の工程で、前記輝度分布の相対値に各々の光
源の強度を掛け合わせた後に、各画像を合成するように
したものである。
More specifically, in the above-described global illumination rendering method, in the luminance distribution calculation in the step (2), the luminance distribution on the surface of the object in the scene is a relative value represented by a relative value. Brightness distribution,
In the step (4), each image is synthesized after multiplying the relative value of the luminance distribution by the intensity of each light source.

【0042】また、輝度分布演算過程の顕現性というこ
とから言えば、上記のメッシュ分割をおこなう工程を含
む大域照明レンダリング方法において、計算機システム
内のデータを視覚的に表示する手段を有し、前記(2)
の工程における前記メッシュ分割する工程の結果を表示
するようにしたものである。
In terms of the saliency of the luminance distribution calculation process, the global illumination rendering method including the step of performing the above-described mesh division has means for visually displaying data in a computer system. (2)
The result of the step of dividing the mesh in the step is displayed.

【0043】上記目的を達成するために、本発明に係る
大域照明レンダリング装置の第一の構成は、計算機シス
テムによって、仮想的な3次元シーンを表示する大域照
明レンダリング装置において、仮想的な3次元シーンを
構成する光源および物体に関する各種パラメータを基
に、前記物体表面上の輝度分布を演算する1つ以上の輝
度分布演算部と、その各々の輝度分布演算部に、シーン
内に存在する光源ごとに処理を割り振る光源選択部と、
前記輝度分布演算部によって演算された輝度分布を基
に、任意の視点から見たときの画像を生成する1つ以上
の輝度分布画像生成部と、前記輝度分布画像生成部によ
って生成された画像を合成する画像合成処理部とを備
え、前記光源選択部は、前記各輝度分布演算部ごとに対
し、シーン内に存在する異なった1つ、または重複しな
い一部の光源の情報のみを設定することで、シーン内の
各光源情報が、特定の1つの輝度分布演算部に振り分け
られるように処理し、前記輝度分布演算部は、1つの光
源に対しての前記物体表面上の輝度分布を演算し、前記
輝度分布画像生成部は、前記輝度分布演算部によって演
算された輝度分布を基に、任意の視点から見たときの画
像を生成し、前記画像合成処理部は、前記輝度分布画像
生成部によって生成された各々の画像を合成するように
したものである。
In order to achieve the above object, a first configuration of the global illumination rendering apparatus according to the present invention is a global illumination rendering apparatus for displaying a virtual three-dimensional scene by a computer system. One or more brightness distribution calculation units for calculating a brightness distribution on the surface of the object based on various parameters related to a light source and an object constituting the scene, and each of the brightness distribution calculation units for each light source present in the scene. A light source selection unit that assigns processing to
Based on the luminance distribution calculated by the luminance distribution calculation unit, one or more luminance distribution image generation units that generate an image when viewed from any viewpoint, and an image generated by the luminance distribution image generation unit An image synthesis processing unit for synthesizing, wherein the light source selection unit is provided for each of the luminance distribution calculation units.
Different ones that exist in the scene, or
By setting only the information of some light sources,
Each light source information is distributed to one specific luminance distribution calculation unit
The luminance distribution calculation unit calculates a luminance distribution on the object surface for one light source, and the luminance distribution image generation unit calculates the luminance distribution calculated by the luminance distribution calculation unit. , An image as viewed from an arbitrary viewpoint is generated, and the image synthesis processing unit synthesizes each image generated by the luminance distribution image generation unit.

【0044】[0044]

【0045】より詳しくは、上記の大域照明レンダリン
グ装置において、前記輝度分布演算部が、前記物体の表
面をメッシュ分割するようにしたものである。
More specifically, in the above-described global illumination rendering device, the luminance distribution calculation section divides the surface of the object into meshes.

【0046】[0046]

【0047】[0047]

【0048】またさらに詳しくは、上記の大域照明レン
ダリング装置において、前記輝度分布演算部において、
シーン内の物体表面の輝度分布が、その輝度分布を相対
値であらわした相対的な輝度分布であって、前記画像合
成処理部は、前記輝度分布の相対値に各々の光源の強度
を掛け合わせた後に、各画像を合成するようにしたもの
である。
More specifically, in the above-described global illumination rendering device, the luminance distribution calculation unit may include:
The luminance distribution of the object surface in the scene is a relative luminance distribution in which the luminance distribution is represented by a relative value, and the image synthesis processing unit multiplies the relative value of the luminance distribution by the intensity of each light source. After that, the respective images are combined.

【0049】また、輝度分布演算過程の顕現性というこ
とから言えば、計算機システム内のデータを視覚的に表
示する手段を有し、前記輝度分布演算部がおこなったメ
ッシュ分割の結果を表示するようにしたものである。
Further, in terms of the clarity of the luminance distribution calculation process, there is provided a means for visually displaying data in the computer system, and the result of the mesh division performed by the luminance distribution calculation unit is displayed. It was made.

【0050】上記目的を達成するために、本発明に係る
大域照明レンダリング方法の第二の構成は、上記第一の
大域照明レンダリング方法において、 (2)´前記輝度分布演算部によって、1つの光源に対
しての物体表面上の輝度分布を演算する工程であって、
その工程の中に物体の表面をメッシュ分割する工程を含
む工程を有し、前記(2)´の工程が、前記光源から見
た前記物体のエネルギ伝搬係数の大きさによって、メッ
シュ分割の密度を決定する工程であり、前記(2)の工
程を前記(2)´の工程に置き換えて、前記(1)、
(2)´、(3)、(4)の工程をこの順におこなう
うにしたものである。
In order to achieve the above object, the second configuration of the global illumination rendering method according to the present invention is characterized in that :
In the global illumination rendering method, (2) ′ a step of calculating a luminance distribution on an object surface with respect to one light source by the luminance distribution calculating unit,
The method includes a step of mesh-dividing the surface of the object in the step. In the step (2) ′, the density of the mesh division is determined by the magnitude of the energy transfer coefficient of the object viewed from the light source. This is the step of determining
The process is replaced with the process (2) ′, and the process (1),
Steps (2) ′, (3) and (4) are performed in this order .

【0051】[0051]

【0052】[0052]

【0053】[0053]

【0054】[0054]

【0055】[0055]

【0056】上記目的を達成するために、本発明に係る
大域照明レンダリング装置の第二の構成は、上記第一の
大域照明レンダリング装置において、前記輝度分布演算
部が、1つの光源に対しての物体表面上の輝度分布を演
算し、かつ、その演算処理の中で、前記光源から見た前
記物体のエネルギ伝搬係数の大きさによって、メッシュ
分割の密度を決定するようにしたものである。
In order to achieve the above object, the second configuration of the global illumination rendering device according to the present invention is characterized in that :
In the global illumination rendering device, the brightness distribution calculation unit calculates a brightness distribution on an object surface for one light source, and in the calculation process, an energy transfer coefficient of the object viewed from the light source in the calculation process. The density of the mesh division is determined according to the size of.

【0057】[0057]

【0058】[0058]

【0059】[0059]

【0060】[0060]

【0061】[0061]

【0062】[0062]

【作用】本発明によれば、輝度分布演算部は、光源ごと
に、間接照明と「ソフトな影」の効果を同時に満足する
ように物体をメッシュ分割する。したがって、このため
メッシュ分割処理が複雑にならず、メッシュ分割処理に
時間がかからないようになるという作用がある。
According to the present invention, the luminance distribution calculation section divides an object into meshes for each light source so as to simultaneously satisfy the effects of indirect illumination and "soft shadow". Therefore, there is an effect that the mesh division processing does not become complicated and the mesh division processing does not take much time.

【0063】また、光源ごとに、輝度分布演算とそれに
続く輝度分布画像生成をおこなうこととした利点は、各
々の処理を並列プロセッサに割り当てることで、並列処
理が可能になり、逐次に演算する場合に比べて、劇的な
処理速度の向上を見込むことができることである。
The advantage of performing the luminance distribution calculation and the subsequent generation of the luminance distribution image for each light source is that parallel processing becomes possible by allocating each processing to a parallel processor. It is possible to expect a dramatic improvement in processing speed as compared with.

【0064】さらに、光源の位置が変更された場合に
は、変更された光源の輝度分布演算部において影響ある
物体のみを分割するので、すべて一から計算しなければ
ならなかった従来技術と比べて、メッシュ分割処理が格
段に高速化される。すなわち、その他の光源の輝度分布
演算部は変更された光源のメッシュとその光源について
影響ある物体のみをメッシュ分割するので、影響のない
部分は、改めてメッシュ分割することはない。そのた
め、メッシュ分割処理が高速化されるという作用があ
る。同様に、物体の位置が変更された場合においても、
全ての輝度分布演算部群の中で、影響があるその他の物
体のメッシュ分割を変更すればよいので、メッシュ分割
処理が高速化される。
Further, when the position of the light source is changed, only the affected object is divided in the luminance distribution calculation unit of the changed light source. In addition, the mesh division processing is remarkably speeded up. That is, since the luminance distribution calculation unit of the other light source divides only the mesh of the changed light source and the object that has an effect on the light source into a mesh, the unaffected part is not re-meshed. Therefore, there is an effect that the mesh division processing is speeded up. Similarly, when the position of the object is changed,
Since the mesh division of the other affected objects may be changed in all the luminance distribution calculation units, the mesh division processing is speeded up.

【0065】また、1つの輝度演算部における物体のメ
ッシュは単純になり、放射演算部での放射演算数が減少
する。従来技術に係る輝度分布演算装置は、すべての光
源に対して、影になる領域やメッシュ分割しても影響の
ない全照領域でもメッシュ分割をおこなっていた。本発
明では、影になる領域やメッシュ分割しても影響のない
全照領域では、メッシュ分割を省略する。そのため、省
略したメッシュ数に比例した数だけ、メッシュ分割の処
理時間を削減できる。また、放射演算は、省略したメッ
シュ数の分だけ放射演算を省略できるので、処理時間削
減の効果は、一層顕著である。
Further, the mesh of the object in one luminance calculation unit is simplified, and the number of radiation calculations in the radiation calculation unit is reduced. The luminance distribution calculation device according to the related art performs mesh division on all light sources even in a shadow area or an all-illumination area where mesh division does not affect the light source. In the present invention, mesh division is omitted in a shadowed area or an all-illumination area where there is no effect even if the mesh is divided. Therefore, the processing time for mesh division can be reduced by a number proportional to the number of omitted meshes. In addition, since the radiation calculation can be omitted for the number of omitted meshes, the effect of reducing the processing time is more remarkable.

【0066】ここで、上述の並列処理の効果を鑑みる
と、一つの並列処理プロセッサがおこなう放射演算は、
上記メッシュ数が少ないメッシュ上でおこなうため、そ
の放射演算の計算量は、より少なくなり、相乗的に、一
層顕著な効果を期待できることになる。
Here, considering the effects of the parallel processing described above, the radiation calculation performed by one parallel processing processor is as follows.
Since the calculation is performed on a mesh having a small number of meshes, the calculation amount of the radiation calculation is reduced, and a more remarkable effect can be expected synergistically.

【0067】さらに、対話システムによってシーン内の
物体や光源の変更がおこなわれても、このように高速で
画像生成がおこなえるようになったため、対話環境で要
求される性能にふさわしいスピードで、変化させた画像
を生成し、画像表示をおこなえるという作用がある。
Furthermore, even if an object or a light source in the scene is changed by the interactive system, the image can be generated at such a high speed. Therefore, the image can be changed at a speed suitable for the performance required in the interactive environment. This has the effect of generating an image and displaying the image.

【0068】[0068]

【実施例】以下、本発明に係る一実施例を、図1ないし
図26を用いて説明する。 〔照明シミュレーションシステムのシステム構成〕先
ず、図1を用いて本発明に係る一実施例のシステム構成
について説明しよう。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment according to the present invention will be described below with reference to FIGS. [System Configuration of Lighting Simulation System] First, the system configuration of one embodiment according to the present invention will be described with reference to FIG.

【0069】図1は、本発明に係る大域照明レンダリン
グ装置を用いた照明シミュレーションシステムの構成例
をあらわすブロック図である。また、中央処理装置10
と大域照明レンダリング装置11の中のブロックは、各
機能モジュールをあらわしている。
FIG. 1 is a block diagram showing a configuration example of a lighting simulation system using a global lighting rendering apparatus according to the present invention. In addition, the central processing unit 10
And blocks in the global illumination rendering device 11 represent functional modules.

【0070】中央処理装置10は、システム全体の制御
をおこなう。また、大域照明レンダリング装置11から
みれば、これは画像生成のためのフロントエンドプロセ
ッサであると言うことができる。
The central processing unit 10 controls the entire system. Also, from the perspective of the global illumination rendering device 11, it can be said that this is a front-end processor for image generation.

【0071】入出力装置12は、システムに情報を入力
したり出力したりするためのもので、ユーザがシステム
に処理を指示するためのマウス12−1、キーボード1
2−2や表示装置12−3等からなっている。
The input / output device 12 is for inputting and outputting information to and from the system. The user has a mouse 12-1 and a keyboard 1 for instructing the system to perform processing.
2-2, the display device 12-3, and the like.

【0072】大域照明レンダリング装置11は、大域照
明レンダリング法を用いて表示装置13にリアルに表示
される画像を生成するためのものであり、構築したいシ
ーンのシーン情報を中央処理装置10から入力して、シ
ーン内に配置された光源と物体を考慮した各点の輝度を
計算し、それをある視点から見た二次元的な画像データ
に変換して、画像を生成する機能を有する。なお、ここ
で、シーンとは、全ての物体および光源が共通に配置さ
れる3次元空間である。
The global illumination rendering device 11 is for generating an image which is realistically displayed on the display device 13 by using the global illumination rendering method, and inputs scene information of a scene to be constructed from the central processing unit 10. In addition, it has a function of calculating the luminance of each point in consideration of a light source and an object arranged in a scene, converting the luminance into two-dimensional image data viewed from a certain viewpoint, and generating an image. Here, a scene is a three-dimensional space in which all objects and light sources are commonly arranged.

【0073】表示装置13は、大域照明レンダリング装
置11により生成された最終結果の画像を取りだし、表
示する。これは、一般には、高解像度のディスプレイ装
置である。
The display device 13 takes out and displays an image of the final result generated by the global illumination rendering device 11. This is typically a high resolution display device.

【0074】中央処理装置10は、イベント処理部10
1とイベント解釈部102とイベント管理部103とシ
ーンデータ管理部104とからなる。
The central processing unit 10 includes an event processing unit 10
1, an event interpreter 102, an event manager 103, and a scene data manager 104.

【0075】イベント管理部103は、中央処理装置1
0に接続された入出力装置12からの情報を受け取るた
めのものであり、入出力装置12の表示装置12−3の
カーソルの現在位置等を管理し、ユーザがマウス12−
1、キーボード12−2を用いて指示した位置や入力し
たデータをイベント解釈部102にわたす。
The event management unit 103 is a central processing unit 1
0 for controlling the current position of the cursor of the display device 12-3 of the input / output device 12 and the like.
1. The position designated using the keyboard 12-2 and the input data are passed to the event interpretation unit 102.

【0076】イベント解釈部102は、イベント管理部
103からのユーザの指示を判別し、イベント処理部1
01に存在する然るべきイベント処理ハンドラーを呼び
出して、入力されたデータをそのイベント処理ハンドラ
ー処理にわたす。
The event interpreter 102 determines the user's instruction from the event manager 103, and
01 is called, and the input data is passed to the event processing handler.

【0077】イベント処理部101は、イベント処理ハ
ンドラーの集合体である。イベント処理ハンドラーは、
ユーザの各種指示に対応して、シーンデータ管理部10
4に蓄えられたシーンデータを変更し、かつ、変更され
たシーンデータを大域照明レンダリング装置11に送信
する。
The event processing section 101 is a set of event processing handlers. The event handler is
The scene data management unit 10 responds to various user instructions.
4 is changed, and the changed scene data is transmitted to the global illumination rendering device 11.

【0078】シーンデータ管理部104は、イベント処
理部101の各イベント処理ハンドラーが加工する前の
データや加工したデータを格納する。
The scene data management unit 104 stores data before and after processing by each event processing handler of the event processing unit 101.

【0079】大域照明レンダリング装置11は、画像生
成インタフェース処理部110とパイプラインバイパス
111と光源選択部112と画像生成データ記憶部11
3と輝度分布演算部群114と輝度分布画像生成部群1
15と画像合成処理部116とアキュームレーションバ
ッファ117と最終画像記憶部118とから構成され
る。
The global illumination rendering device 11 includes an image generation interface processing unit 110, a pipeline bypass 111, a light source selection unit 112, and an image generation data storage unit 11.
3, luminance distribution calculation unit group 114, and luminance distribution image generation unit group 1
15, an image synthesis processing unit 116, an accumulation buffer 117, and a final image storage unit 118.

【0080】画像生成インタフェース処理部110は、
フロントエンドプロセッサである中央処理装置10から
送られて来るコマンドやデータに従い、大域照明レンダ
リング装置11内に存在する各機能モジュールを然るべ
く制御する。
The image generation interface processing unit 110
According to commands and data sent from the central processing unit 10 as a front-end processor, each functional module existing in the global illumination rendering device 11 is appropriately controlled.

【0081】フロントエンドプロセッサとのインタフェ
ースは、コマンドとそのコマンドに対するデータという
形式で交信する。大域照明レンダリング装置11内の各
機能モジュール間のインタフェースも同様にコマンドと
そのデータという形式で交信される。
The interface with the front-end processor communicates in the form of a command and data for the command. Similarly, interfaces between the functional modules in the global illumination rendering device 11 are communicated in the form of commands and their data.

【0082】例えば、光源や物体の属性情報を変更する
ときには、中央処理装置10は、どの光源のデータがど
れくらい変化したのか、どの物体の反射率がどれくらい
変化したのかというデータをコマンド識別子と光源の識
別子と光源の強度という形式、あるいは、コマンド識別
子と物体の識別子と物体の反射率という形式で送信す
る。逆に、画像生成インタフェース処理部110からは
画像生成の終了、異常終了の事象をあらわすコマンドを
送信する。
For example, when the attribute information of the light source or the object is changed, the central processing unit 10 uses the command identifier and the data of the light source as to which data of which light source has changed how much, and which reflectance of the object has changed how much. It is transmitted in the form of an identifier and the intensity of a light source, or in the form of a command identifier, an identifier of an object, and the reflectance of the object. Conversely, the image generation interface processing unit 110 transmits a command indicating the end of image generation or an abnormal end event.

【0083】そして、画像生成インタフェース処理部1
10は、上述のような光源や物体に関する情報の変更、
あるいは、画像生成のときの視点となるべきカメラの情
報等の変更に伴って、その大域照明レンダリング装置1
1内に存在する然るべき各機能モジュールを制御するの
である。
Then, the image generation interface processing section 1
10 is a change of information on the light source and the object as described above,
Alternatively, in response to a change in information on a camera to be a viewpoint at the time of image generation, the global illumination rendering device 1
It controls each appropriate functional module that exists within one.

【0084】パイプラインバイパス111は、各機能モ
ジュール間の情報の通信路であり、画像生成インタフェ
ース処理部110からの制御のための命令を伝達した
り、各機能モジュール間のデータ転送に用いられる。
The pipeline bypass 111 is a communication channel for information between the function modules, and is used for transmitting a control command from the image generation interface processing unit 110 and for transferring data between the function modules.

【0085】画像生成データ記憶部113は、中央処理
装置10から入力され画像生成インタフェース処理部1
10を介して伝達されたシーン内の光源や物体に関する
情報を、画像生成のためのデータとして所定のデータ構
造で格納する。なお、このデータ構造については、後に
詳述するものとする。
The image generation data storage unit 113 stores the image generation interface processing unit 1 input from the central processing unit 10.
The information about the light source and the object in the scene transmitted through the data 10 is stored in a predetermined data structure as data for generating an image. The data structure will be described later in detail.

【0086】ここで、本発明の要旨の一つについて説明
すると、その要旨は、大域照明レンダリング法をおこな
う際に、そのための輝度分布の演算や画像データの生成
を各光源ごとにおこなって、しかる後に、画像の合成に
よって、一つの画像を作成するものである。
Here, one of the gist of the present invention will be described. The gist is that when a global illumination rendering method is performed, a calculation of a luminance distribution and a generation of image data are performed for each light source. Later, one image is created by combining the images.

【0087】したがって、本発明の実施例に係る大域照
明レンダリング装置11は、複数の輝度分布演算部と輝
度分布画像生成部を備えていることになる。
Therefore, the global illumination rendering device 11 according to the embodiment of the present invention includes a plurality of luminance distribution calculation units and a luminance distribution image generation unit.

【0088】光源選択部112は、前述の画像生成デー
タ記憶部113から光源物体を選択し、上の理由から複
数存在する輝度分布演算部1,114−1、輝度分布演
算部2,114−2、・・・、輝度分布演算部n,11
4−3に各々の光源の情報を割り振って送るのである。
The light source selection unit 112 selects a light source object from the above-mentioned image generation data storage unit 113, and a plurality of brightness distribution calculation units 1, 114-1 and brightness distribution calculation units 2, 114-2 exist for the above reason. ,..., Luminance distribution calculation units n, 11
The information of each light source is allocated and sent to 4-3.

【0089】そして、輝度分布演算部群114は、入力
された光源情報を元にその一つ一つの光源による輝度分
布を演算するための、複数の輝度分布演算部の集合体で
あり、上述した輝度分布演算部1,114−1、輝度分
布演算部2,114−2、・・・、輝度分布演算部n,
114−3から構成されている。ここで、nは、各シー
ンに存在しうる光源の数より小さくない整数である。こ
のように、それぞれの輝度分布演算部は1つの光源に対
する輝度分布のみを演算するようになっており、それぞ
れの光源に対して独立に輝度分布を演算するようにして
いるのである。
The luminance distribution calculation section group 114 is an aggregate of a plurality of luminance distribution calculation sections for calculating the luminance distribution of each light source based on the input light source information. .., Brightness distribution calculation units n, 114-1, brightness distribution calculation units 2, 114-2,.
114-3. Here, n is an integer not smaller than the number of light sources that can exist in each scene. As described above, each luminance distribution calculation unit calculates only the luminance distribution for one light source, and calculates the luminance distribution independently for each light source.

【0090】次に、輝度分布画像生成部は、上述の輝度
分布演算部で演算された輝度分布をもとにして、予め定
められた画像を生成する際の視点となるべきカメラ情報
に適合する画像データを生成する(このことを、単に
「画像を生成する」ともいうことにする)。ここでも、
各光源に対して、独立に画像生成をおこなうために、輝
度分布画像生成部群115は、上述の輝度分布演算部の
個数と等しい数のn個の輝度分布画像生成部の集合体で
あり、上述した輝度分布画像生成部1,115−1、輝
度分布画像生成部2,115−2、・・・、輝度分布画
像生成部n,115−3から構成されている。
Next, based on the luminance distribution calculated by the above-described luminance distribution calculating section, the luminance distribution image generating section adapts to the camera information to be a viewpoint when generating a predetermined image. Generate image data (this is simply referred to as “generating an image”). even here,
In order to independently generate an image for each light source, the luminance distribution image generation unit group 115 is a set of n luminance distribution image generation units of the same number as the number of the luminance distribution calculation units, It is composed of the above-described luminance distribution image generation units 1 and 115-1, luminance distribution image generation units 2 and 115-2,..., And luminance distribution image generation units n and 115-3.

【0091】そして、画像合成処理部116は、上述の
輝度分布画像生成部群115の各輝度分布画像生成部に
よって作成された各光源に対する画像データを、一つ一
つアキュームレーションバッファ117上に累積加算し
ていく。
The image synthesizing unit 116 accumulates the image data for each light source generated by each luminance distribution image generation unit of the luminance distribution image generation unit group 115 on the accumulation buffer 117 one by one. Add up.

【0092】最後に、全ての光源について処理を終了し
た後に、画像合成処理部116はアキュームレーション
バッファ117に記憶されている画像データを表示用の
輝度データに変換し、最終画像記憶部118に格納す
る。
Finally, after finishing the processing for all the light sources, the image synthesis processing unit 116 converts the image data stored in the accumulation buffer 117 into luminance data for display, and stores it in the final image storage unit 118. I do.

【0093】したがって、アキュームレーションバッフ
ァ117は、画像合成処理部116が画像データを累積
加算するための一時的な記憶領域であると言うことがで
き、最終画像記憶部118は、このように画像合成部1
16によって得られる画像データを格納する(このこと
を、単に「画像を格納する」ともいうことにする)ため
の最終的な記憶領域であると言うことができよう。
Therefore, it can be said that the accumulation buffer 117 is a temporary storage area for the image combination processing section 116 to cumulatively add image data, and the final image storage section 118 Part 1
It can be said that this is the final storage area for storing the image data obtained by the step 16 (this is also simply referred to as “storage of an image”).

【0094】次に、図2を用いて、本発明の実施例に係
る大域照明レンダリング装置のアーキテクチャについて
説明する。
Next, the architecture of the global illumination rendering apparatus according to the embodiment of the present invention will be described with reference to FIG.

【0095】図2は、n個のプロセッサとメモリを有す
る並列計算機のハードウェア構成を示すブロック図であ
る。
FIG. 2 is a block diagram showing a hardware configuration of a parallel computer having n processors and memories.

【0096】上では、図1を用いて、大域照明レンダリ
ング装置の機能と処理概要について説明した。それによ
れば、大域照明レンダリング装置11を一つのプロセッ
サで構成することを想定している。しかしながら、画像
分布演算部と輝度分布生成部は、独立に動作させること
を前提としているので処理速度の向上という観点から見
れば、独立に動作しうるプロセッサに処理を受け持たせ
ることが望ましい。図2に示したハードウェア構成は、
それを実現するためのものである。
The function and processing outline of the global illumination rendering device have been described above with reference to FIG. According to this, it is assumed that the global illumination rendering device 11 is configured by one processor. However, since the image distribution calculation unit and the luminance distribution generation unit are presumed to operate independently, it is desirable to assign processing to an independently operable processor from the viewpoint of improving processing speed. The hardware configuration shown in FIG.
It is for realizing it.

【0097】プロセッサ1,1103、プロセッサ2,
1104、・・・、プロセッサn,1105とローカル
メモリ1,1106、ローカルメモリ2,1107、・
・・、ローカルメモリn,1108は、並列処理をおこ
なうためのプロセッサであり、その一つ一つが図1に示
した輝度分布演算部と輝度分布画像生成部の処理をする
役割を担うのである。
Processor 1, 1103, Processor 2,
1104,..., Processor n, 1105 and local memory 1, 1106, local memory 2, 1107,.
The local memory n, 1108 is a processor for performing parallel processing, and each of them plays a role of performing the processing of the luminance distribution calculation unit and the luminance distribution image generation unit shown in FIG.

【0098】また、ホスト1100は、図1の中央処理
装置10の役割以外に、各プロセッサの制御をおこなう
画像生成インタフェース110の役割と画像合成処理部
116の役割をも有している。
The host 1100 has a role of the image generation interface 110 for controlling each processor and a role of the image synthesis processing unit 116 in addition to the role of the central processing unit 10 in FIG.

【0099】図1に示した最終画像記憶部118とアキ
ュムレーションバッファ117は、外付けのメモリ11
01とアキュムレーションバッファ1102によって実
現する。
The final image storage unit 118 and accumulation buffer 117 shown in FIG.
01 and the accumulation buffer 1102.

【0100】また、ホスト1100からの制御とプロセ
ッサ1,1103、プロセッサ2,1104、・・・、
プロセッサn,1105およびローカルメモリ1,11
06、ローカルメモリ2,1107、・・・、ローカル
メモリn,1108とのデータの受け渡しは、パイプラ
インバイパス1109によっておこなう。
Control from the host 1100 and processors 1, 1103, processors 2, 1104,.
Processor n, 1105 and local memory 1, 11
, The local memories 2, 1107,..., The local memories n, 1108 are transferred by the pipeline bypass 1109.

【0101】さらに、図では示さないが、複数のワーク
ステーションを輝度分布演算機構を実装し、それぞれの
ワークステーションで各光源に対する輝度分布画像生成
部の役割輝度分布演算部の役割を受け持たせるような分
散処理の形態でも本発明の大域照明レンダリング装置を
実現することができる。
Further, although not shown in the figure, a plurality of workstations are provided with a brightness distribution calculation mechanism, and each work station plays a role of a brightness distribution image generation unit for each light source and a role of a brightness distribution calculation unit. The global illumination rendering device of the present invention can be realized even in a form of distributed processing.

【0102】〔モデルシーンとそれをあらわすデータ構
造〕次に、図3ないし図5を用いて、本発明の実施例に
係るモデルシーンとそれをあらわすデータ構造について
説明する。
[Model Scene and Data Structure Representing It] A model scene according to the embodiment of the present invention and a data structure representing the model scene will be described with reference to FIGS.

【0103】最初に、図3を用いて、本発明の実施例に
係るモデルシーンを説明しよう。図3は、表示装置12
−3または表示装置1110に表示される対話画面の一
例を示した説明図である。
First, a model scene according to an embodiment of the present invention will be described with reference to FIG. FIG. 3 shows the display device 12.
3 is an explanatory diagram showing an example of an interactive screen displayed on the display device 1110. FIG.

【0104】対話画面のメニュー201によって、物体
毎の属性の設定、光源の輝度の設定、形状データの読み
込み、階層関係規定、メッシュ分割後のメッシュの表示
などの命令をマウス12−1を用いて入力することがで
きる。
Using the menu 12 on the dialog screen, commands such as setting of attributes for each object, setting of the luminance of the light source, reading of shape data, definition of hierarchical relations, display of meshes after mesh division, etc. are performed using the mouse 12-1. Can be entered.

【0105】また、文字入出力領域202は、キーボー
ド12−2を用いてデータを入力する場合に用いられる
領域であり、ユーザがキーボード12−2で入力した文
字やシステムからの出力文字が表示される。
The character input / output area 202 is an area used when data is input using the keyboard 12-2, and displays characters input by the user on the keyboard 12-2 and output characters from the system. You.

【0106】編集領域203は、物体の移動、拡大縮
小、物体の選択等をマウス12−1を用いて、カーソル
204で指示することによっておこなう。
In the editing area 203, movement of the object, enlargement / reduction, selection of the object, and the like are performed by instructing with the cursor 204 using the mouse 12-1.

【0107】編集画面203には、光源を表現する平面
205、206と光源に照らされる平面207、208
が表示されている。ここで、光源は、点光源ではなく、
一定の広がりを有していることに留意しておこう。
On the edit screen 203, planes 205 and 206 representing the light source and planes 207 and 208 illuminated by the light source are displayed.
Is displayed. Here, the light source is not a point light source,
Note that it has a certain extent.

【0108】以下の説明では、この編集領域203に表
示されているこの比較的簡単なシーンをモデルシーンと
して説明していくことにしよう。
In the following description, this relatively simple scene displayed in the editing area 203 will be described as a model scene.

【0109】次に、図4および図5を用いて、このモデ
ルシーンをあらわすデータ構造について説明しよう。図
4は、図3にあらわされたモデルシーンをあらわすデー
タ構造の説明図である。ここで、主情報テーブル31と
形状データテーブル35のペア、・・・、主情報テーブ
ル34と形状データテーブル38のペアの一つが光源ま
たは物体に関する情報を表現している。すなわち、各々
のペアが図3の光源205,206と物体207,20
8をあらわしているわけである。
Next, a data structure representing this model scene will be described with reference to FIGS. FIG. 4 is an explanatory diagram of a data structure representing the model scene shown in FIG. Here, one of a pair of the main information table 31 and the shape data table 35,..., And one of a pair of the main information table 34 and the shape data table 38 represents information on the light source or the object. That is, each pair is composed of the light sources 205 and 206 and the objects 207 and 20 in FIG.
8 is represented.

【0110】ここで、主情報テーブル31と形状データ
テーブル35を例に採り、各項目の内容について説明し
よう。
Here, the contents of each item will be described using the main information table 31 and the shape data table 35 as an example.

【0111】次の物体(または次の光源)311は、テ
ーブルをリストとして管理するために、次のテーブルの
物体識別番号(または光源識別番号)を格納する項目で
ある。
The next object (or next light source) 311 is an item for storing the object identification number (or light source identification number) of the next table in order to manage the table as a list.

【0112】同様に、前の物体(または前の光源)31
2は、テーブルをリストとして管理するための前のテー
ブルの物体識別番号(または光源識別番号)を格納する
項目である。
Similarly, the previous object (or the previous light source) 31
Reference numeral 2 denotes an item for storing the object identification number (or light source identification number) of the previous table for managing the table as a list.

【0113】テーブルのリスト演算の一例を示せば、例
えば、主情報テーブル32の物体(または光源)を削除
する処理ときは、次の物体(または次の光源)311の
項目に主情報テーブル33の物体識別番号(または光源
識別番号)を入れ、前の物体(または前の光源)332
の項目に主情報テーブル31の物体識別番号(または光
源識別番号)を入れて、しかる後に、主情報テーブル3
2と形状テーブル36の領域を開放すれば良い。
An example of the list operation of the table is as follows. For example, when deleting the object (or light source) of the main information table 32, the item of the next object (or next light source) 311 is added to the item of the main information table 33. Enter the object identification number (or light source identification number), and enter the previous object (or previous light source) 332.
, The object identification number (or the light source identification number) of the main information table 31 is entered.
2 and the area of the shape table 36 may be opened.

【0114】物体識別番号(または光源識別番号)31
0は、そのテーブルが表現している物体(または光源)
の識別番号であり、この識別番号によってシステムは、
物体(または光源)を認識するのである。
Object identification number (or light source identification number) 31
0 is the object (or light source) represented by the table
The identification number allows the system to
It recognizes the object (or light source).

【0115】光源フラグ313は、そのテーブルが対象
としているのは光源であるのか、物体であるのかを判別
するためのフラグを格納する項目である。フラグが立っ
ていれば、すなわち、その項目が1であれば、そのテー
ブルが対象としているのは光源と判断され、逆の場合は
物体と判断される。
The light source flag 313 is an item for storing a flag for determining whether the target of the table is a light source or an object. If the flag is set, that is, if the item is 1, the target of the table is determined to be a light source, and the opposite is determined to be an object.

【0116】光学属性314は、物体(または光源)の
光学的な属性を格納する項目である。この光学的な属性
は、光源と物体によって各々異なっている。光源の光学
属性は、輝度(発光量)、配光特性、色等である。物体
の光学属性は、その物体の表面の色、完全拡散反射率、
直接反射率、透明度、屈折率等である。
The optical attribute 314 is an item for storing an optical attribute of an object (or a light source). This optical attribute differs depending on the light source and the object. Optical attributes of the light source include luminance (light emission amount), light distribution characteristics, and color. The optical attributes of an object include its surface color, perfect diffuse reflectance,
Direct reflectance, transparency, refractive index, etc.

【0117】完全拡散反射率は、物体の表面が完全拡散
反射面であるときの光の反射率である。直接反射率は、
鏡の如く物体表面に艶があり、周りの物体が写り込む度
合いを制御するために用いられる属性である。透明度と
屈折率は、物体が透明な物体であるときに用いられる属
性である。
The perfect diffuse reflectance is the reflectance of light when the surface of the object is a perfect diffuse reflective surface. The direct reflectance is
This attribute is used to control the degree to which surrounding objects are reflected, with the surface of the object being glossy like a mirror. The transparency and the refractive index are attributes used when the object is a transparent object.

【0118】位置315は、物体の配置位置を格納する
項目である。この配置位置のデータは、具体的には、回
転スケーリング、平行移動量などの成分を持つ4×4の
要素のマトリックスであらわされている。
The position 315 is an item for storing an arrangement position of an object. Specifically, the data of the arrangement position is represented by a matrix of 4 × 4 elements having components such as rotation scaling and translation amount.

【0119】形状タイプ316は、物体を定義している
形状の形態をあらわすタイプ番号を格納する項目であ
る。形状の形態には、ポリゴン、球等の2次方程式で定
義できる形状、および複数の制御点の多項式で定義され
る自由曲面がある。
The shape type 316 is an item for storing a type number representing a form of a shape defining an object. Shapes include a shape defined by a quadratic equation such as a polygon and a sphere, and a free-form surface defined by a polynomial of a plurality of control points.

【0120】形状データ317は、主情報テーブル31
から形状データテーブルをポイントするためのもので、
シーンデータ管理部104内に存在する形状データテー
ブル35のアドレスが格納されている。
The shape data 317 is stored in the main information table 31.
To point the shape data table from
The address of the shape data table 35 existing in the scene data management unit 104 is stored.

【0121】形状データテーブル35は、形状の実体デ
ータを格納するためのものである。形状の実体データの
持ち方は、形状タイプ316で示される形状タイプによ
って当然異なっている。形状タイプがポリゴンの場合に
は、頂点数と3次元の頂点データが記憶される。形状タ
イプが球の場合には、球の半径が記憶される等々であ
る。そして、図3で示されたモデルシーンでは、全ての
光源と物体が四角形なので、頂点数が4のポリゴンに該
当し、4つの頂点データがシーンデータ管理部104に
記憶されることになる。
The shape data table 35 is for storing the actual data of the shape. How to hold the entity data of the shape naturally depends on the shape type indicated by the shape type 316. When the shape type is polygon, the number of vertices and three-dimensional vertex data are stored. If the shape type is a sphere, the radius of the sphere is stored, and so on. In the model scene shown in FIG. 3, since all light sources and objects are quadrangular, the number of vertices corresponds to a polygon and four vertex data are stored in the scene data management unit 104.

【0122】次に、図5を用いて、カメラデータのデー
タ構造について説明する。図5は、カメラデータの格納
するためのテーブルの説明図である。
Next, the data structure of the camera data will be described with reference to FIG. FIG. 5 is an explanatory diagram of a table for storing camera data.

【0123】このカメラデータは、3次元データを2次
元の画像に投影するためのもとになるデータであり、た
とえて言えば、あたかも、その3次元のシーンをカメラ
で写真を取ったときの写真にマッピングするためのデー
タであると言える。
The camera data is data used to project the three-dimensional data into a two-dimensional image. For example, it is as if a photograph of the three-dimensional scene was taken with a camera. It can be said that it is data for mapping to photos.

【0124】位置41は、そのカメラの三次元空間にお
ける位置を格納する項目である。画角42は、カメラの
画角を格納する項目である。露光量43は、カメラの露
光量を格納する項目である。この露光量は現実のカメラ
と同様にイメージの明るさを調整するデータであり、こ
の大きさが小さいと露光量が少なく、できあがる画像が
暗くなる。
The position 41 is an item for storing the position of the camera in the three-dimensional space. The angle of view 42 is an item that stores the angle of view of the camera. The exposure amount 43 is an item for storing the exposure amount of the camera. This exposure amount is data for adjusting the brightness of the image as in the case of a real camera. If this size is small, the exposure amount is small, and the resulting image becomes dark.

【0125】〔照明シミュレーションシステムの動作の
概略〕次に、図1および図3を参照しつつ、本照明シミ
ュレーションシステムの動作の概略を説明する。
[Outline of Operation of Illumination Simulation System] Next, an outline of operation of the illumination simulation system will be described with reference to FIG. 1 and FIG.

【0126】ユーザは、表示装置12−3が表示するカ
ーソル204、メニュー201等を利用して、物体の指
定や命令の入力をおこなって、システムに所定の指示を
する。
The user uses the cursor 204, the menu 201, and the like displayed on the display device 12-3 to specify an object and input a command to give a predetermined instruction to the system.

【0127】入力は、イベント管理部103とイベント
解釈部で解釈されて、イベント処理部101内の対応す
るイベントハンドラーが呼び出される。
The input is interpreted by the event management unit 103 and the event interpretation unit, and the corresponding event handler in the event processing unit 101 is called.

【0128】イベントハンドラーは、必要ならば、シー
ンデータ管理部104内のシーンデータを参照して、大
域照明レンダリング装置11に、形状データ、カメラデ
ータ、光源データ等の既に説明した主情報テーブル、形
状データテーブル、カメラデータテーブルに格納された
データを送り画像を生成するように、コマンドを発行す
る。
The event handler refers to the scene data in the scene data management unit 104, if necessary, and sends to the global illumination rendering device 11 the main information table such as shape data, camera data, light source data, etc. A command is issued to send data stored in the data table and the camera data table to generate an image.

【0129】大域照明レンダリング装置11は、このコ
マンドを受けて、画像を生成する。生成した画像の画像
データは、最終的に、表示装置13に送られ、表示され
る。なお、この大域照明レンダリング装置11の画像生
成の動作は、後に詳細に説明していくであろう。
The global illumination rendering device 11 receives this command and generates an image. The image data of the generated image is finally sent to the display device 13 and displayed. The image generation operation of the global illumination rendering device 11 will be described later in detail.

【0130】生成された画像に対し物体の属性や位置を
変更する場合には、ユーザは、入出力装置12を利用
し、各種データの変更を入力することができる。
To change the attributes and positions of the object in the generated image, the user can use the input / output device 12 to input various data changes.

【0131】入力は、イベント管理部103で必要な数
値等を読み取られて、イベント解釈部102にわたされ
る。イベント解釈部102は、イベント管理部103か
らわたされた各種データを解釈し、イベント処理部10
1の所定のイベントハンドラーを呼び出し、そのイベン
トハンドラーに変更された物体識別番号(または光源識
別番号)と変更データをわたして処理を依頼する。
As for the input, necessary numerical values and the like are read by the event management section 103 and are passed to the event interpretation section 102. The event interpretation unit 102 interprets various data passed from the event management unit 103, and
A predetermined event handler is called, and the event handler is requested to perform processing by passing the changed object identification number (or light source identification number) and the changed data.

【0132】例えば、物体の位置を移動する場合には、
入出力装置12のマウス12−1を動かし、表示装置1
2−3の画面上に表示されているカーソル204を移動
させる。表示されている物体、例えば、物体207上に
カーソル204を移動し、画面上に表示されている物体
207を選択する。選択された状態でマウスを移動する
と物体の位置が移動する。そして、この場合の変更デー
タとしては、イベント解釈部103によって解釈された
移動量になる。
For example, when moving the position of an object,
By moving the mouse 12-1 of the input / output device 12, the display device 1
The cursor 204 displayed on the screen 2-3 is moved. The user moves the cursor 204 over a displayed object, for example, the object 207, and selects the object 207 displayed on the screen. When the mouse is moved in the selected state, the position of the object moves. The change data in this case is the movement amount interpreted by the event interpretation unit 103.

【0133】イベントハンドラーは、わたされた物体識
別番号(または光源識別番号)と変更データに従って、
シーンデータ管理部104の物体デ−タを変更する。さ
らに、イベント処理部101は、同時に物体識別番号
(または光源識別番号)と変更内容を大域照明レンダリ
ング装置11に送り、画像生成命令を送信する。
According to the passed object identification number (or light source identification number) and change data, the event handler determines
The object data of the scene data management unit 104 is changed. Further, the event processing unit 101 simultaneously sends the object identification number (or the light source identification number) and the content of the change to the global illumination rendering device 11, and transmits an image generation command.

【0134】大域照明レンダリング装置11は、変更さ
れた物体識別番号(または光源識別番号)を元に画像生
成データ記憶部113の内容を変更し、変更内容に伴う
画像生成をおこなうことは、既に述べたのと同様であ
る。
It has already been described that the global illumination rendering device 11 changes the content of the image generation data storage unit 113 based on the changed object identification number (or light source identification number) and generates an image according to the changed content. It is the same as that.

【0135】〔大域照明レンダリング装置の動作の詳
細〕以下では、ラジオシティ法のアルゴリズムによる大
域照明レンダリング装置の各機能モジュールの動作の詳
細について説明する。
[Details of Operation of Global Illumination Rendering Apparatus] In the following, details of the operation of each functional module of the global illumination rendering apparatus based on the algorithm of the radiosity method will be described.

【0136】(I) 画像インタフェース処理部の動作 最初に、図6および図7を用いて、画像生成インタフェ
ース処理部110の動作について説明しよう。
(I) Operation of Image Interface Processing Unit First, the operation of the image generation interface processing unit 110 will be described with reference to FIGS.

【0137】図6は、画像生成インタフェース処理部1
10の処理フローをあらわすPAD(Program
Analysis Diagram)図である(その
一)。図7は、画像生成インタフェース処理部110の
処理フローをあらわすPAD図である(その二)。
FIG. 6 shows the image generation interface processing unit 1.
PAD (Program) representing the processing flow of No. 10
8 is an Analysis Diagram (No. 1). FIG. 7 is a PAD diagram illustrating a processing flow of the image generation interface processing unit 110 (part 2).

【0138】すなわち、図6は、輝度分布演算部群、輝
度分布画像生成部群が一つの場合の処理をおこなうと考
えた図であり、図7は、光源がn個あって、それに対応
して輝度分布演算部と輝度分布画像生成部をn個、それ
ぞれ処理をするとして作図したものである。
That is, FIG. 6 is a diagram in which processing is performed when there is one luminance distribution calculation unit group and one luminance distribution image generation unit group. FIG. 7 shows a case where there are n light sources, In this figure, n luminance distribution calculation units and n luminance distribution image generation units are respectively processed.

【0139】画像生成インタフェース処理部110は、
中央処理装置10のイベント処理部101からコマンド
とデータを受け、それによって画像生成データ記憶部1
13に記憶される画像生成データを書き換え、大域照明
レンダリング装置11内の各機能モジュールの制御をお
こなう。この各機能モジュールの制御は、パイプライン
バイパス111を介しておこなう。また、この制御処理
の内容は、イベント処理部101からのコマンドによっ
て各々異なっている。これは、コマンドの内容によって
最適な機能モジュールを呼び出して処理をおこなうため
であり、後に示すように3パターンの処理に分類してい
る。
The image generation interface processing section 110
The command and data are received from the event processing unit 101 of the central processing unit 10, and the command and data are thereby received.
The image generation data stored in the memory 13 is rewritten to control each functional module in the global illumination rendering device 11. The control of each functional module is performed via the pipeline bypass 111. The content of the control processing differs depending on the command from the event processing unit 101. This is because an optimum function module is called according to the content of the command to perform the processing, and the processing is classified into three patterns as described later.

【0140】以下、図6のステップを追って説明しよ
う。 (1)中央処理装置10のイベント処理部101から来
るデータによって、画像生成データ記憶部113に記憶
される画像生成データを書き換える(処理501)。
Hereinafter, the steps of FIG. 6 will be described. (1) The image generation data stored in the image generation data storage unit 113 is rewritten by the data coming from the event processing unit 101 of the central processing unit 10 (process 501).

【0141】(2)イベント処理部101から来るコマ
ンドの内容によって、制御処理の内容を切替る(処理5
02)。処理502では、[形状付加、配置変更、属性
変更]、[光源強度変更]、[カメラ位置変更]の3パ
ターンの処理に分類している。[形状付加、配置変更、
属性変更]の場合には、画像生成インタフェース処理部
110は処理503、504、505を実行して画像を
生成する。[光源強度変更]の場合には、処理506を
実行して画像を生成する。[カメラ位置変更]の場合に
は、処理507、508を実行して画像を生成する。
(2) The content of the control process is switched according to the content of the command coming from the event processing unit 101 (process 5).
02). In the processing 502, the processing is classified into three types of processing: [shape addition, arrangement change, attribute change], [light source intensity change], and [camera position change]. [Add shape, change placement,
In the case of [attribute change], the image generation interface processing unit 110 executes processes 503, 504, and 505 to generate an image. In the case of [light source intensity change], the process 506 is executed to generate an image. In the case of [change camera position], an image is generated by executing processes 507 and 508.

【0142】(3−1)[形状付加、配置変更、属性変
更]の場合、輝度分布演算処理群114を実行して、輝
度分布演算処理する(処理503)。この輝度分布演算
処理は、より具体的には、全ての光源に対して(処理1
203)、各輝度分布演算部で輝度分布演算処理をおこ
なうものである(処理1204)。
(3-1) In the case of [shape addition, arrangement change, attribute change], the luminance distribution calculation processing group 114 is executed to perform the luminance distribution calculation processing (processing 503). More specifically, this luminance distribution calculation processing is performed for all light sources (processing 1
203), a luminance distribution calculation process is performed in each luminance distribution calculation unit (process 1204).

【0143】(3−2)輝度分布演算処理群114の処
理が終わった後に、輝度分布画像生成群115を実行し
て、輝度分布画像生成処理をおこなう(処理504)。
この輝度分布画像生成処理は、より具体的には、全ての
光源に対して(処理1205)、各輝度分布画像生成部
で輝度分布画像生成処理をおこなうものである(処理1
206)。
(3-2) After the processing of the luminance distribution calculation processing group 114 is completed, the luminance distribution image generation group 115 is executed to perform the luminance distribution image generation processing (processing 504).
More specifically, the brightness distribution image generation process is a process in which each brightness distribution image generation unit performs a brightness distribution image generation process on all light sources (process 1205) (process 1).
206).

【0144】(3−3)輝度分布画像生成処理群115
の実行が終わった後に、画像合成処理部116を実行し
て、画像合成をおこなう(処理505)。この画像合成
処理は、具体的には、輝度分布画像生成処理で得られた
画像データの値を各画素ごとに足しこんでいくものであ
る。
(3-3) Brightness Distribution Image Generation Processing Group 115
After the execution of is completed, the image composition processing unit 116 is executed to perform image composition (process 505). Specifically, the image synthesizing process adds the value of the image data obtained in the brightness distribution image generating process for each pixel.

【0145】(4)[光源強度変更]の場合、画像合成
処理部116を実行して、画像合成をおこなう(処理5
06)。この場合に、画像合成処理のみを実行して、輝
度分布演算処理と輝度分布生成処理をおこなわないの
は、各物体の表面上の相対的な輝度分布は変化せず、光
源の輝度が変化しただけだからである。
(4) In the case of [light source intensity change], the image synthesis processing unit 116 is executed to perform image synthesis (processing 5).
06). In this case, the reason why only the image synthesis processing is performed and the luminance distribution calculation processing and the luminance distribution generation processing are not performed is that the relative luminance distribution on the surface of each object does not change and the luminance of the light source changes. Because it is only.

【0146】(5−1)[カメラ位置変更]の場合、輝
度分布画像生成群115を実行して、輝度分布画像生成
処理をおこなう(処理507)。
(5-1) In the case of [camera position change], the luminance distribution image generation group 115 is executed to perform the luminance distribution image generation processing (processing 507).

【0147】(5−2)輝度分布画像生成処理群115
の実行が終わった後に、画像合成処理部116を実行し
て、画像合成をおこなう(処理508)。
(5-2) Brightness Distribution Image Generation Processing Group 115
Is completed, the image combining processing unit 116 is executed to combine the images (step 508).

【0148】[カメラ位置変更]の場合においても、輝
度分布画像生成処理と画像合成処理のみをおこない、輝
度分布演算処理をおこなわないのは、各物体の表面上の
相対的な輝度分布は変化しないからである。
Even in the case of [camera position change], only the luminance distribution image generation processing and the image synthesis processing are performed, and the luminance distribution calculation processing is not performed. The relative luminance distribution on the surface of each object does not change. Because.

【0149】すなわち、カメラ位置の変化したデータを
基にして、各光源ごとの画像を、画像生成部で作成し、
その後、画像合成処理部116により、画像を合成する
のである。
That is, an image for each light source is created by the image generation unit based on the data with the changed camera position.
Thereafter, the images are synthesized by the image synthesis processing unit 116.

【0150】(II) 輝度分布演算処理部の動作 次に、図8ないし図22を用いて、輝度分布演算部群1
14の動作について説明しよう。図8は、輝度分布演算
部を構成する各機能モジュールのブロック図である。
(II) Operation of Luminance Distribution Calculation Processing Unit Next, referring to FIG. 8 to FIG.
14 will be described. FIG. 8 is a block diagram of each functional module constituting the luminance distribution calculation unit.

【0151】これは、輝度分布演算部群114内の輝度
分布演算処理部114−1,2,3の1つのモジュール
内の構成図である。輝度分布演算処理部114−1,
2,3は同様の構成なので、以下、輝度分布演算処理部
114−1を例に採り説明しよう。
This is a block diagram of one module of the luminance distribution calculation processing units 114-1, 2, 3 in the luminance distribution calculation unit group 114. Luminance distribution calculation processing section 114-1,
Since 2 and 3 have the same configuration, the following description will be made by taking the luminance distribution calculation processing unit 114-1 as an example.

【0152】輝度分布演算部114−1は、図8の如く
形状データ参照部601と交点計算データ作成部602
と影領域分割処理部603とエレメントメッシュ生成部
604と放射演算部605と輝度分布出力部606と交
点計算データ記憶部608とエッジリスト記憶部609
と光源輝度分布記憶部610とメッシュ分割表示部61
1とからなり、データバス607によって各部が接続さ
れている。
As shown in FIG. 8, the luminance distribution calculation section 114-1 includes a shape data reference section 601 and an intersection calculation data creation section 602.
A shadow region division processing unit 603, an element mesh generation unit 604, a radiation calculation unit 605, a luminance distribution output unit 606, an intersection calculation data storage unit 608, and an edge list storage unit 609.
And light source luminance distribution storage unit 610 and mesh division display unit 61
1 are connected to each other by a data bus 607.

【0153】以下の図8に示された処理の流れを追って
説明していこう。 (II−1) 輝度分布演算部の処理開始 輝度分布演算部114−1は、光源選択部112から演
算すべき光源のデータを受け取る。
The following is a description of the processing flow shown in FIG. (II-1) Start of Processing of Luminance Distribution Calculation Unit The luminance distribution calculation unit 114-1 receives light source data to be calculated from the light source selection unit 112.

【0154】(II−2) 形状データ参照部によるシ
ーンの設定と輝度分布の格納 形状データ参照部601は、パイプラインバイパス11
1を介して画像生成データ記憶部113に格納されてい
る属性データと形状データと配置データとを参照する。
ここで、属性データは、既に説明した光学属性314の
項目のデータであり、形状データは、形状タイプ316
と形状データテーブル317の項目データ、配置データ
は、位置315の項目データである。
(II-2) Setting of Scene and Storage of Brightness Distribution by Shape Data Reference Unit The shape data reference unit 601
Reference is made to the attribute data, the shape data, and the arrangement data stored in the image generation data storage unit 113 via 1.
Here, the attribute data is the data of the item of the optical attribute 314 described above, and the shape data is the shape type 316.
And the item data and arrangement data of the shape data table 317 are the item data of the position 315.

【0155】この配置データを基に、各物体と光源とを
シーンに配置し、輝度分布記憶部610に属性データと
シーンに配置した形状を格納する。また、具体的にシー
ンに形状を配置するための処理は、ポリゴンであれば、
形状テーブルの各頂点のデータを、配置データである位
置315に格納されている配置マトリックスによって掛
け合わせて、各頂点のシーン内の座標を求めることであ
る。
Based on the arrangement data, each object and the light source are arranged in the scene, and the attribute data and the shape arranged in the scene are stored in the luminance distribution storage unit 610. Also, the process for arranging shapes in a scene is a polygon,
The data of each vertex in the shape table is multiplied by the arrangement matrix stored at the position 315, which is arrangement data, to obtain the coordinates of each vertex in the scene.

【0156】(II−3) 交点計算データ作成部によ
る交点データの作成 交点計算データ作成部602は、交点計算データを作成
する。ここで、交点計算データとは、光源の影になる物
体とその領域を判定するためのデータである。以下、図
9および図10を用いて、モデルシーンにおいて、交点
計算データを作成するプロセスについて説明しよう。
(II-3) Creation of Intersection Data by Intersection Calculation Data Creation Unit The intersection calculation data creation unit 602 creates intersection calculation data. Here, the intersection calculation data is data for determining an object that becomes a shadow of a light source and its area. Hereinafter, a process of creating intersection calculation data in a model scene will be described with reference to FIGS. 9 and 10.

【0157】図9は、光源206に半立方体の投影面を
仮定したモデルシーンの斜視図である。図10は、交点
計算データの具体的な内容をイメージするための各面の
データの内容を模式的にあらわした図である。
FIG. 9 is a perspective view of a model scene assuming a semi-cubic projection plane as the light source 206. FIG. FIG. 10 is a diagram schematically showing the data contents of each surface for imaging the specific contents of the intersection calculation data.

【0158】投影面設定のため、光源の中心を中心とし
て、半立方体を仮定する。ここで、図9に示すように、
光源206のある面を面710とし、その対向する面を
面715、側面が、順に、面711、面712、面71
3、面714とする。そして、図8に示す交点計算デー
タ作成部602は、半立方体の各平面を投影面とする画
像を作成し、交点データ記憶部608に格納する。
For setting the projection plane, a half cube is assumed with the center of the light source as the center. Here, as shown in FIG.
The surface on which the light source 206 is located is referred to as a surface 710, and the opposite surface is referred to as a surface 715.
3, surface 714. Then, the intersection calculation data creation unit 602 shown in FIG. 8 creates an image using each plane of the semi-cube as a projection plane, and stores the image in the intersection data storage unit 608.

【0159】さて、図10(c)によって、交点計算デ
ータ記憶部608に格納される交点計算データの内容を
具体的に説明する。先ず、光源の中心から物体の一点に
線分を引き、ある面と線分との交点を面上の(x,y)
座標であらわす。そして、このときの交点計算データを
(面識別番号,x,y,物体識別番号)と(面識別番
号,x,y,d)とするのである。ここで、面識別番号
とは、その面の識別番号であり、物体識別番号とは、そ
の物体の識別番号であり、dは、光源の中心から物体の
一点の距離(以下、これを「奥行き」という)である。
Now, the contents of the intersection calculation data stored in the intersection calculation data storage unit 608 will be specifically described with reference to FIG. First, a line segment is drawn from the center of the light source to one point of the object, and the intersection of a certain surface and the line segment is defined as (x, y) on the surface.
Expressed in coordinates. Then, the intersection calculation data at this time is (surface identification number, x, y, object identification number) and (surface identification number, x, y, d). Here, the surface identification number is the identification number of the surface, the object identification number is the identification number of the object, and d is the distance of one point of the object from the center of the light source (hereinafter referred to as “depth”). ").

【0160】図10(a)は、物体識別番号の画像とし
て、この(面識別番号,x,y,物体識別番号)が各面
に投影されていることを模式的に示したものである。ま
た、図10(b)は、奥行きデータの画像として、この
(面識別番号,x,y,d)が各面に投影されているこ
とを模式的に示したものである。なお、図におい
て、()内に示したのは、図9に示した対応する面の符
号である。
FIG. 10A schematically shows that (surface identification number, x, y, object identification number) is projected on each surface as an image of the object identification number. FIG. 10B schematically shows that (surface identification number, x, y, d) is projected on each surface as an image of depth data. In the figure, the numbers in parentheses indicate the reference numerals of the corresponding surfaces shown in FIG.

【0161】(II−4) メッシュ作成のための平面
分割処理 ラジオシティ法では、光の輝度を計算するために放射演
算という計算技法を使うがその前提のために平面を分割
して、メッシュを作成する必要がある。
(II-4) Plane division processing for mesh creation In the radiosity method, a calculation technique called radiation operation is used to calculate the luminance of light. Need to be created.

【0162】以下の影分割処理とエレメントメッシュ作
成処理は、このメッシュ作成のための平面分割処理であ
る。最初に、分割処理の理解のため「パッチ」と「エレ
メント」という概念について説明する。
The following shadow division processing and element mesh generation processing are plane division processing for this mesh generation. First, the concepts of “patch” and “element” will be described for understanding the dividing process.

【0163】「パッチ」とは、その中のエネルギ分布は
一定であり、光エネルギを放出する最小単位として平面
を分割したものである。「エレメント」とは、物体表面
上の輝度分布を決定する光のエネルギを受ける最小の単
位であり、パッチをさらに分割したものである。
A "patch" has a constant energy distribution therein, and is obtained by dividing a plane as a minimum unit for emitting light energy. An “element” is the smallest unit that receives the energy of light that determines the luminance distribution on the surface of an object, and is obtained by further dividing a patch.

【0164】両者共、後におこなう放射演算をするため
に光エネルギの観点から定義したものである。また、こ
のように二者の分割を使いわけるのは、放射演算を高速
におこなうという目的から、光エネルギの放射する計算
量を少なくするために、エレメントという小単位の上に
パッチという大単位を設けたからである。
Both are defined from the viewpoint of light energy in order to perform radiation calculation performed later. In addition, in order to perform the radiation calculation at a high speed, a large unit called a patch is superimposed on a small unit called an element in order to reduce the calculation amount of light energy radiated for the purpose of performing radiation calculation at high speed. This is because it was provided.

【0165】さて、メッシュ作成のための処理を概略説
明すると、影領域分割処理部603は、影領域分割処理
をおこなって、影となるべき領域を決定し、さらに、分
割された平面のデータ(エッジリスト)をエッジリスト
記憶部609に格納する。
Now, the processing for creating a mesh will be briefly described. The shadow area division processing section 603 performs a shadow area division processing to determine an area to be a shadow, and furthermore, the data of the divided plane ( Edge list) is stored in the edge list storage unit 609.

【0166】次に、エレメントメッシュ生成部604
は、輝度分布を求めるサンプル点を作成するために分割
された面を更に分割して、エレメントを作成し、輝度分
布記憶部610に格納する。
Next, the element mesh generation unit 604
Divides a plane divided to create a sample point for obtaining a luminance distribution, further generates an element, and stores the element in the luminance distribution storage unit 610.

【0167】そして、放射演算部605は、この作成さ
れたメッシュを基に放射演算をおこなうのである。
The radiation calculation unit 605 performs a radiation calculation based on the created mesh.

【0168】なお、作成された3次元の像であるメッシ
ュを、表示装置によってユーザに見せる機能も提供する
ことができる。その概略を説明すると、以下の通りであ
る。メッシュ表示部611は、輝度分布記憶部610に
記憶されているメッシュを輝度分布記憶部610のメッ
シュを画像生成データ記憶部113から視点データを読
み込み、3次元表示して画像を作成する。そして、最終
画像記憶部118に画像を格納する。
[0168] It is also possible to provide a function of displaying the created mesh, which is a three-dimensional image, to a user on a display device. The outline is as follows. The mesh display unit 611 reads viewpoint data of the mesh stored in the brightness distribution storage unit 610 from the image generation data storage unit 113 and creates a three-dimensional image by reading the mesh data of the brightness distribution storage unit 610. Then, the image is stored in the final image storage unit 118.

【0169】ユーザは、大域照明レンダリング装置11
に接続された表示装置13によって、この最終画像記憶
部118に格納されたメッシュの画像を見ることができ
る。
The user sets the global illumination rendering device 11
The image of the mesh stored in the final image storage unit 118 can be viewed by the display device 13 connected to the.

【0170】(II−4−1) 影領域分割処理部によ
る影領域分割処理 メッシュ作成のための第一の段階として、影領域分割処
理部603は、影領域分割処理をおこなう。さらに、影
領域分割処理部603は、分割されたデータを輝度分布
記憶部610に格納する。ここで、影領域分割処理と
は、交点データ記憶部608に格納している交点データ
を基に、影になる物体とその手前に存在する物体を検出
し、手前に存在する物体のエッジと光源の頂点が作成す
る平面によって、影になる物体を分割して、影となる領
域を求める処理である。
(II-4-1) Shadow Area Division Processing by Shadow Area Division Processing Unit As the first stage for creating a mesh, the shadow area division processing unit 603 performs shadow area division processing. Further, the shadow area division processing unit 603 stores the divided data in the luminance distribution storage unit 610. Here, the shadow area division processing refers to detecting an object to be a shadow and an object existing in front of the object based on the intersection data stored in the intersection data storage unit 608, and detecting an edge of the object existing in front and a light source. Is a process of dividing the object to be shadowed by the plane created by the vertices of, and finding the area to be shadowed.

【0171】さて、図11を用いて、影領域分割処理に
ついて詳細に説明する。図11は、影領域分割処理部6
03の処理フローをあらわすPAD図である。以下、図
11のステップを追って説明しよう。
Now, the shadow area division processing will be described in detail with reference to FIG. FIG. 11 shows a shadow area division processing unit 6.
FIG. 13 is a PAD diagram showing the process flow of No. 03. Hereinafter, the steps of FIG. 11 will be described.

【0172】(1)交点データ記憶部608に格納され
ている交点データの全ての要素に対して以下の処理をお
こなう(処理901)。 (2)現在対象としている交点データの要素と面上の
(x,y)であらわして、隣り合うことになる要素の物
体識別番号の比較をおこなう(処理902)。
(1) The following processing is performed on all elements of the intersection data stored in the intersection data storage unit 608 (processing 901). (2) Express the element of the intersection data that is the current object and (x, y) on the surface, and compare the object identification numbers of the adjacent elements (process 902).

【0173】比較の結果、物体識別番号が異なり、しか
も、片方の物体識別番号がNULLでない場合に処理9
03を実行する。この条件は、異なった物体が重なりあ
っているということだからである。
As a result of the comparison, if the object identification numbers are different and one of the object identification numbers is not NULL, the processing 9
Execute 03. This is because different objects are overlapping.

【0174】(3)対象としている交点データの要素と
隣り合う交点データの要素の奥行きデータを比較し、奥
行きが大きい、すなわち、光源から見て奥に存在する物
体を手前の物体を考慮して、分割処理をおこなう(処理
903)。この分割によって影領域が生成されるのであ
る。この分割処理は、詳細に以下で説明するように、手
前の物体の稜線と光源の頂点によって作られる平面によ
って、奥に存在する物体を分割する処理である。
(3) The depth data of the intersection data element and the adjacent intersection data elements are compared, and an object having a large depth, that is, an object located in the back as viewed from the light source is considered in consideration of an object in front. Then, a division process is performed (process 903). This division generates a shadow area. As described in detail below, this division processing is processing for dividing an object existing in the back by a plane formed by the ridge line of the object in front and the apex of the light source.

【0175】さて、図12ないし図16を用いて、処理
903でおこなった奥に存在する面の影領域分割処理に
ついて詳細に説明しよう。最初に、影の態様と影領域分
割の関係について考察しよう。
Now, the shadow area division processing of the surface existing in the back performed in the processing 903 will be described in detail with reference to FIGS. First, let us consider the relationship between the shadow mode and the shadow area division.

【0176】有限の大きさを持った光源の影は「ソフト
な影」を生成する。すなわち、影の中心部は、明度が極
端に低くほぼまっ黒であるが、光のあたっている部分と
影との境界あたりは、ぼやけた影になる。
The shadow of a light source having a finite size generates a “soft shadow”. That is, the central part of the shadow is extremely black with extremely low lightness, but a blurred shadow is formed around the boundary between the illuminated part and the shadow.

【0177】このような事情に鑑みて、「ソフトな影」
を本影(umbra)と半影(penumbra)に分
類する。本影とは、影となる領域の中心部に位置するま
っ黒な領域である。半影とは、影となる領域の周辺部に
位置して、その明度は、光のあたる領域と本影の中間で
あり、ぼやけたような影である。
In view of such circumstances, “soft shadows”
Are classified into umbra and penumbra. The true shadow is a black area located at the center of the shadow area. The penumbra is located at the periphery of the shadowed area, and its brightness is intermediate between the lighted area and the main shadow, and is a blurry shadow.

【0178】ところで、既に説明したようにパッチ内の
エネルギー分布は、一定なので、パッチが本影の領域
(以下、「本影領域」という)と半影の領域(以下、
「半影領域」という)をまたぐようにしてはならない。
また、影の領域と光源から光の当たっている領域(以
下、「全照領域」という)をまたぐようにしてはならな
い。したがって、可能な限り、各領域の境界をパッチの
境界になるよう分割していくのが望ましい。しかも、後
におこなう放射演算のためには、輝度計算量を少なくす
るために、その種類の領域のなかで(例えば、全照領域
のなかで)、できるだけ面積を大きく取るのが望まし
い。よって、このようにすれば、領域と他の領域で不連
続な輝度分布になるのも、パッチによって実現すること
もできるのである。
As described above, since the energy distribution in the patch is constant, the patch includes a region of a umbra (hereinafter, referred to as an “umbra region”) and an area of a penumbra (hereinafter, referred to as a “hemakage region”).
(Referred to as a “pen shadow area”).
In addition, it should not straddle the shadow area and the area where the light from the light source shines (hereinafter, referred to as “all-illuminated area”). Therefore, it is desirable to divide the boundary of each area so that it becomes the boundary of the patch as much as possible. In addition, for the radiation calculation to be performed later, it is desirable to make the area as large as possible in the area of that type (for example, in the full illumination area) in order to reduce the amount of luminance calculation. Therefore, in this way, a discontinuous luminance distribution between the region and another region can be realized by the patch.

【0179】上で示した方針に則って、図12ないし図
16を用いて、存在する物体を手前の物体によって分割
する処理を詳細に説明する。図12は、処理903の奥
に存在する物体を手前の物体によって分割する処理の詳
細な処理フローをあらわすPAD図である。図13は、
本影領域作成のためのパッチ分割を説明するモデルシー
ンの斜視図である。図14は、半影領域稜線の作成を説
明するモデルシーンの斜視図である。図15は、光源の
各辺に対して、半影領域稜線を作成しているモデルシー
ンの斜視図である。図16は、光源の各辺の半影領域稜
線によって分割される半影領域作成のためのパッチ分割
を説明するモデルシーンの上面図である。
A process of dividing an existing object by a nearer object in accordance with the above-described policy will be described in detail with reference to FIGS. FIG. 12 is a PAD diagram showing a detailed processing flow of the processing of dividing the object existing in the back of the processing 903 by the near object. FIG.
FIG. 4 is a perspective view of a model scene for explaining patch division for creating a shadow region. FIG. 14 is a perspective view of a model scene for explaining the creation of a penumbra area ridgeline. FIG. 15 is a perspective view of a model scene in which a penumbra region ridge line is created for each side of the light source. FIG. 16 is a top view of a model scene illustrating patch division for creating a penumbra area divided by a penumbra area ridge line of each side of the light source.

【0180】先ず、本影領域作成のためのパッチ分割に
ついて説明する。この処理は、具体的に視覚的に図示す
ると図13(a)のようになる。
First, the patch division for creating the shadow area will be described. FIG. 13A shows this processing in a visual manner.

【0181】この例の場合、手前に存在する面は207
であり、奥に存在する面は208である。光源206の
中心と手前に存在する面207の稜線によって張られる
楔(くさび)状の面をface0とする。face0と
奥に存在する面208の交差する線が本影境界の稜線に
なる。この本影境界稜線で面208を分割することによ
り、本影境界で面208を分割することができる。
In this example, the surface existing in the foreground is 207
, And the surface existing at the back is 208. A wedge-shaped surface formed by the center of the light source 206 and the ridge line of the surface 207 existing in the front is defined as face0. The line at which face0 intersects with the plane 208 existing in the back is the ridgeline of the umbra boundary. By dividing the surface 208 by the umbra boundary line, the surface 208 can be divided by the umbra boundary.

【0182】そして、手前に存在する面207の各辺に
対して、同様の操作をおこなったのが図13(b)で示
されるパッチ分割である。結局、奥に存在する面208
は、パッチ0〜パッチ4の五つのパッチに分割されるこ
とになる。
A similar operation is performed on each side of the surface 207 existing in the foreground in the patch division shown in FIG. After all, the surface 208 existing in the back
Is divided into five patches, patch 0 to patch 4.

【0183】次に、半影領域作成のためのパッチ分割に
ついて説明する。この処理は、具体的に視覚的に図示す
ると図14ないし図16のようになる。この場合も、手
前に存在する面は207であり、奥に存在する面は20
8である。図14に示されるように、光源206のエッ
ジと手前に存在する面207の上部の辺の頂点によって
張られる楔状の面をface1と定義する。face1
と奥に存在する面208の交差する線が半影境界の稜線
になる。この半影境界稜線で面208を分割することに
より、半影境界で面208を分割することになる。な
お、本処理に入る段階で奥に存在する面208は、本影
領域と全照領域に分割されているので、その分割された
パッチをさらに分割することになる。
Next, patch division for creating a penumbra area will be described. This process is shown in FIG. 14 through FIG. Also in this case, the surface existing in the front is 207, and the surface existing in the back is 20.
8 As shown in FIG. 14, a wedge-shaped surface formed by the edge of the light source 206 and the vertex of the upper side of the surface 207 existing in front is defined as face1. face1
And the line that intersects the plane 208 at the back is the ridgeline of the penumbra boundary. By dividing the surface 208 at the penumbra boundary ridge, the surface 208 is divided at the penumbra boundary. It should be noted that since the plane 208 existing in the back at the stage of entering this processing is divided into the umbrella area and the illuminated area, the divided patches are further divided.

【0184】図15は、上述の処理を光源206の各エ
ッジと上部の2頂点に対しておこなったものである。こ
のとき、奥に存在する面208に切られる半影境界稜線
は、二つの菱形を形作ることになる。
FIG. 15 shows the above processing performed on each edge of the light source 206 and the upper two vertices. At this time, the penumbra boundary ridge line cut by the plane 208 existing in the back forms two rhombuses.

【0185】図16は、これを上部から見たもので、奥
に存在する面208は、このように、本影領域、半影領
域、全照領域にパッチ分割されることになる。以下、図
12の順を追って、上述の本影領域作成のためのパッチ
分割と半影領域作成のためのパッチ分割について説明し
よう。
FIG. 16 shows this as viewed from above, and the surface 208 located at the back is thus patch-divided into a main shadow area, a penumbra area, and a full illumination area. Hereinafter, the patch division for creating the main shadow area and the patch division for creating the penumbra area will be described with reference to FIG.

【0186】(1)処理1001から処理1005まで
は本影領域の境界を求める処理である。 (1−1)手前に存在する全ての面のエッジに対して、
処理1002を繰り返し実行する(処理1001)。
(1) Processes 1001 to 1005 are processes for obtaining the boundary of the main shadow area. (1-1) For the edges of all the faces existing in front,
The process 1002 is repeatedly executed (process 1001).

【0187】(1−2)対象となっている光源の中心と
手前に存在する面の1つのエッジが作る楔状の面fac
e0を作成する(処理1002)。 (1−3)作成されたface0と奥に存在する面との
交差を計算する(処理1003)。処理1003の結
果、交差する場合には、処理1004が実行される。
(1-2) A wedge-shaped surface fac formed by the center of the target light source and one edge of the surface existing in front of the light source
e0 is created (process 1002). (1-3) The intersection between the created face0 and the plane existing in the back is calculated (process 1003). If the result of the process 1003 is that they intersect, the process 1004 is executed.

【0188】(1−4)メッシュ分割判定処理をおこな
い(1004)、パッチ分割をおこなうと判断された場
合は、処理1005をおこなう。これは、分割をして
も、さして、後の放射計算に影響のないものは、演算速
度を向上させるためパッチ分割をおこなわないようにす
るものである。すなわち、輝度は、距離の2乗に反比例
するため、交差の奥行きの2乗の大きいものは、輝度に
は影響なしと判断して、パッチ分割をおこなわないよう
にする。
(1-4) Mesh division determination processing is performed (1004). If it is determined that patch division is to be performed, processing 1005 is performed. This is to prevent the division of patches that do not affect the subsequent radiation calculation even if the division is performed, in order to improve the calculation speed. That is, since the luminance is inversely proportional to the square of the distance, it is determined that a pixel having a large square of the depth of intersection has no effect on the luminance, and the patch division is not performed.

【0189】(1−5)面face0と奥に存在する面
とで本影境界稜線を求め、それで奥に存在する面を分割
する(処理1005)。この処理では、物体は、本影領
域と全照領域に分割される。この際、本影領域のパッチ
か全照領域のパッチかの識別子を、各パッチに付与して
おく。
(1-5) An umbra shadow ridge line is obtained by using the face face0 and the face existing in the back, and the face existing in the back is divided by this (processing 1005). In this process, the object is divided into a main shadow area and a full illumination area. At this time, each patch is given an identifier indicating whether it is a patch in the umbrella area or a patch in the illuminated area.

【0190】この処理によって、一般には、奥に存在す
る面は、複数のパッチに分割されるので、その情報を奥
に存在する面と関連づけて、検索できる形で蓄えてお
く。
By this processing, generally, the surface located in the back is divided into a plurality of patches, and the information is stored in a form that can be searched in association with the surface existing in the back.

【0191】(2)処理1006から処理1012まで
は半影領域の境界を求める処理である。 (2−1)光源面のエッジに対して、処理1007を繰
り返し実行する(処理1006)。
(2) Processes 1006 to 1012 are for obtaining the boundary of the penumbra area. (2-1) The process 1007 is repeatedly executed on the edge of the light source surface (process 1006).

【0192】(2−2)手前に存在する物体の然るべき
頂点に対して処理1008を繰り返し実行する(処理1
007)。 (2−3)奥に存在する面に関連づけられて、ステップ
(1−5)で記憶された全てのパッチに対して、処理1
009と処理1010を繰り返し実行する(処理100
8)。
(2-2) The process 1008 is repeatedly executed for the appropriate vertex of the object existing in front (process 1).
007). (2-3) Process 1 is performed on all patches stored in step (1-5) in association with the surface existing in the back.
009 and processing 1010 are repeatedly executed (processing 100
8).

【0193】(2−4)光源のエッジと物体の頂点が張
る楔状の面face1を求める(処理1009)。 (2−5)face1と奥に存在する面との交差判定を
おこない、交差する場合には処理1011を実行する
(処理1010)。
(2-4) A wedge-shaped surface face1 extending between the edge of the light source and the vertex of the object is obtained (process 1009). (2-5) The intersection between face1 and the surface existing in the back is determined, and if they intersect, the process 1011 is executed (process 1010).

【0194】(2−6)メッシュ分割判定処理をおこな
い(処理1011)、パッチ分割をおこなうと判断され
た場合は、処理1012をおこなう。これも、(1−
4)と同様に、後の放射計算の、演算速度を向上させ、
むだなパッチ分割を省略するためのものである。
(2-6) A mesh division determination process is performed (process 1011). If it is determined that patch division is to be performed, a process 1012 is performed. This is also (1-
As in 4), the calculation speed of the subsequent radiation calculation is improved,
This is to omit useless patch division.

【0195】ここで、輝度は、距離の2乗に反比例する
ため、交差の奥行きの2乗の大きいものは、輝度には影
響なしと判断して、パッチ分割をおこなわないようにす
るのは(1−4)と同様であるが、半影領域は、輝度の
変化が激しい領域なので、この特質を考慮して(1−
4)よりも大きな密度で分割をおこなうように判定をす
る。
Here, since the luminance is inversely proportional to the square of the distance, it is determined that those having a large square of the depth of intersection have no effect on the luminance, and the patch division is not performed. The same as 1-4), but the penumbra area is a region where the luminance changes drastically, and therefore, taking this characteristic into account,
The determination is made such that the division is performed at a density higher than 4).

【0196】(2−7)面face1と奥に存在する面
とで半影境界稜線を求め、それで奥に存在する面を分割
する(処理1012)。この処理で、結局、物体は、本
影領域、半影領域、全照領域に分割されることになる。
この際、本影領域のパッチか半影領域のパッチか全照領
域のパッチかの識別子を各パッチに付与しておくのは、
(1−6)と同様である。なお、分割された面は、後の
処理においては独立な面として、各々エレメント分割や
放射計算の単位となるのである。
(2-7) A semi-shadow boundary ridge line is obtained from the plane face1 and the plane existing in the back, and the plane existing in the back is divided by this (step 1012). In this process, the object is eventually divided into a main shadow area, a penumbra area, and a full illumination area.
At this time, the identifier of the patch of the main shadow area, the patch of the penumbra area, or the patch of the illuminated area is given to each patch in advance.
Same as (1-6). The divided planes are independent planes in the subsequent processing, and serve as units for element division and radiation calculation.

【0197】(II−4−2) エレメントメッシュ生
成部によるエレメント分割 次に、図17ないし図20を用いて、上述の(II−
4)でパッチ分割した物体を、さらに小さな単位である
エレメントに分割するプロセスについて説明しよう。メ
ッシュ作成の第二の段階として、エレメントメッシュ生
成部604は、後の放射演算のための輝度分布を求める
サンプル点を作成するために、パッチ分割された面を更
に分割してエレメントを作成し、そのデータを輝度分布
記憶部610に格納する。
(II-4-2) Element Division by Element Mesh Generation Unit Next, referring to FIGS.
The process of dividing the patch-divided object in 4) into elements, which are smaller units, will be described. As a second stage of mesh generation, the element mesh generation unit 604 further divides the patch-divided surface to generate an element in order to generate a sample point for obtaining a luminance distribution for a later radiation operation, The data is stored in the luminance distribution storage unit 610.

【0198】最初に、エレメント分割をする場合の判断
の要因となるエレメント分割密度について詳細に説明す
る。パッチ分割の際にも説明したが、より良い輝度分布
を求めるためには、メッシュの分割が細かい方が良い。
一方、放射演算の演算速度を向上させるためには、メッ
シュの分割の目が粗く、エレメントの大きさは大きい方
が良い。つまり両者は、トレードオフの関係にある。
First, a detailed description will be given of the element division density, which is a factor for determining when dividing an element. As described in the case of the patch division, it is better to finely divide the mesh in order to obtain a better luminance distribution.
On the other hand, in order to improve the calculation speed of the radiation calculation, it is preferable that the mesh division is coarse and the element size is large. That is, the two have a trade-off relationship.

【0199】そこで、輝度の計算に大きく影響する部分
は、細かくエレメント分割し、影響が少ない部分は、粗
くエレメントを分割しようとするのである。このエレメ
ント分割を制御するのがエレメント分割密度(以下、単
に、「分割密度」ともいう)である。すなわち、エレメ
ント分割密度を、面積あたりのエレメントの個数で定義
する。そして、エレメント分割をした場合の分割密度
が、定められた分割密度より大きくなる場合には、分割
をおこなわないようにするのである。この分割密度は、
エレメントの最小の大きさを規定するファクターであ
り、後の放射演算の輝度のサンプル密度を規定するファ
クターともなる。所定の分割密度の値は、予めシステム
で定まっているか、必要ならば、随時、ユーザが入力す
ることもできる。
Therefore, a portion that greatly affects the calculation of luminance is finely divided into elements, and a portion that has little influence is roughly divided into elements. The element division is controlled by the element division density (hereinafter, also simply referred to as “division density”). That is, the element division density is defined by the number of elements per area. If the division density when the element division is performed is higher than the predetermined division density, the division is not performed. This split density is
It is a factor that defines the minimum size of the element, and also a factor that defines the sample density of luminance for later radiation calculation. The value of the predetermined division density is predetermined by the system or can be input by the user at any time if necessary.

【0200】(II−4−1)のプロセスでは、物体を
三種類の領域、すなわち、本影領域と半影領域と全照領
域に分類したが、分割密度の決定もそれぞれの領域の特
質に応じて、異なった方法を用いる。すなわち、本影領
域や全照領域では輝度分布の変化は少なく、逆に半影領
域は輝度分布の変化が激しいということである。
In the process of (II-4-1), the object is classified into three types of areas, namely, a main shadow area, a penumbra area, and a full illumination area. The division density is determined according to the characteristics of each area. Different methods are used accordingly. That is, the change in the luminance distribution is small in the main shadow area and the fully illuminated area, and the change in the luminance distribution is conspicuous in the penumbra area.

【0201】さて、各々の分割密度は、以下のようにし
て、決定する (a)全照領域 物体の光源輝度は、光源とパッチとの距離の二乗に反比
例する。すなわち、光源とパッチとの距離が小さければ
変化率が高く、大きければ変化率は低い。そこで、距離
に応じて分割密度を決定し、距離が大きくなるほど分割
密度を減らして、分割しないようにする。
The respective division densities are determined as follows. (A) Illuminated area The light source luminance of an object is inversely proportional to the square of the distance between the light source and the patch. That is, if the distance between the light source and the patch is small, the rate of change is high, and if the distance is large, the rate of change is low. Therefore, the division density is determined according to the distance, and as the distance increases, the division density is reduced so that the division is not performed.

【0202】分割密度の取り方は、距離に従って単調に
減少させれば良いので、様々な取り方が考えられるが、
例えば、次の(式1)が成り立つようにすればよい。
Since the division density may be monotonically decreased according to the distance, various methods are conceivable.
For example, the following (Equation 1) may be satisfied.

【0203】[0203]

【数1】 Density−Shine∝(1/r2)…(式1) Density−Shine…全照領域のエレメント分
割密度 したがって、式(1)における比例定数を予め、ユーザ
に入力させるなどして定めておくと、全照領域の所定の
エレメント分割密度は、次の(式2)で求められる。
[Number 1] Density-Shineα (1 / r 2 ) ... ( Equation 1) Density-Shine ... Accordingly element dividing density of ZenTeru area, advance the proportionality constant in equation (1), determined such as by input from the user In this case, the predetermined element division density of the entire illumination area is obtained by the following (Equation 2).

【0204】[0204]

【数2】 Density−Shine=(κ1/r2)…(式2) (b)半影領域 半影領域の分割密度の定め方も、全照領域の場合と基本
的に同じであり、光源からの距離が大きくなるときに、
分割密度を単調に減少させれば良い。したがって、全照
領域の場合と同じく、次の(式3)、(式4)のように
すれば良い。
[Number 2] Density-Shine = (κ 1 / r 2) ... ( Equation 2) (b) Method of Determination of division density of penumbra area penumbral region is basically the same as for ZenTeru region, When the distance from the light source increases,
What is necessary is just to decrease the division density monotonously. Therefore, the following (Equation 3) and (Equation 4) may be used as in the case of the full illumination area.

【0205】[0205]

【数3】 Density−Penumbra∝(1/r2)…(式3) Density−Penumbra=(κ2/r2)…(式4) Density−Penumbra…半影領域のエレメ
ント分割密度しかしながら、半影領域は、全照領域より
も輝度分布の変化の激しい領域である。したがって、放
射演算で充分な精度を得るためには、全照領域よりも常
に分割密度を大きくする必要がある。すなわち、次の
(式5)が成立しなければならない。
(3) Density-Penumbrab (1 / r 2 ) (Equation 3) Density-Penumbra = (κ 2 / r 2 ) (Equation 4) Density-Penumbra: Element division density of penumbra area However, penumbra The region is a region where the luminance distribution changes more sharply than the full illumination region. Therefore, in order to obtain sufficient accuracy in the radiation calculation, it is necessary to always make the division density larger than that of the entire illumination area. That is, the following (Equation 5) must be satisfied.

【0206】[0206]

【数4】 Density−Shine≦Density−Penumbra …(式5) もし、分割密度の算出に、(式2)、(式4)を採用し
た場合、κ1≦κ2とすることが必要である。
[Expression 4] Density-Shine ≦ Density-Penumbra (Equation 5) If (Equation 2) and (Equation 4) are used to calculate the division density, it is necessary to satisfy κ 1 ≦ κ 2. .

【0207】(c)本影領域 本影領域の輝度は、変化しないので、エレメント分割を
おこなう意味がない。したがって、本影領域は、エレメ
ント分割をおこなわないようにする。すなわち、本影領
域の密度は、次の(式6)である。
(C) Main shadow area Since the luminance of the main shadow area does not change, there is no point in performing element division. Therefore, element division is not performed in the umbra area. That is, the density of the umbrella area is expressed by the following (Equation 6).

【0208】[0208]

【数5】 Density−umbra=∞…(式6) Density−umbra…本影領域のエレメント分
割密度 ここで、∞は、一つの記号であり、任意の数よりも大き
いと定義するのである。
## EQU5 ## Density-umbra = ∞ (Equation 6) Density-umbra ... element division density of umbra area Here, ∞ is one symbol and is defined as being larger than an arbitrary number.

【0209】さて、次に、エレメント分割の具体的な処
理手順を図17を用いて、説明する。 図17は、エレ
メントメッシュ生成部604の処理フローをあらわすP
AD図である。以下、図17の順を追って説明しよう。
Next, a specific processing procedure of element division will be described with reference to FIG. FIG. 17 is a flowchart showing a process flow of the element mesh generation unit 604.
It is an AD diagram. Hereinafter, description will be made in the order of FIG.

【0210】(1)全てのパッチについて、処理130
2と処理1303を繰り返し実行する(1301)。 (2)各パッチのエレメント分割密度を計算する(処理
1302)。 (3)(2)のエレメント分割密度を勘案し、パッチを
エレメント分割し、エレメントを輝度分布記憶部610
に格納する(処理1303)。
(1) Process 130 for all patches
2 and processing 1303 are repeatedly executed (1301). (2) The element division density of each patch is calculated (process 1302). (3) In consideration of the element division density of (2), the patch is divided into elements, and the elements are stored in the luminance distribution storage unit 610.
(Step 1303).

【0211】次に、エレメント分割の具体的な方法につ
いて、図18ないし図19を用いて、説明する。図18
は、エレメント分割処理1303のさらに詳細な処理フ
ローをあらわすPAD図である。図19は、パッチをエ
レメント分割する方法の模式的な説明図である。
Next, a specific method of element division will be described with reference to FIGS. FIG.
13 is a PAD diagram showing a more detailed processing flow of element division processing 1303. FIG. FIG. 19 is a schematic diagram illustrating a method of dividing a patch into elements.

【0212】先ず、エレメント分割のアルゴリズムにつ
いて説明する。本実施例では、トリクアメッシングとい
う手法を用いて、エレメント分割をおこなう場合を想定
しているが、その他の分割方法を用いても素より差し支
えない。
First, the element division algorithm will be described. In this embodiment, it is assumed that the element division is performed by using a technique called triqua meshing, but other division methods may be used.

【0213】トリクアメッシング手法は、分割が終わる
まで、面を順次2分割していく方法である。分割を終え
るのは、エレメント分割が基本的な単位に達するまでお
こなわれたときであり、例えば、三角形または四角形に
なるまでと定めておけばよい。
The tri-meshing method is a method of sequentially dividing a plane into two parts until the division is completed. The division is completed when the element division is performed until the element reaches the basic unit. For example, the element division may be determined to be a triangle or a quadrangle.

【0214】この具体的な手順の一例を、図19を用い
て示すと以下の通りである。与えられたパッチの頂点の
中で適切な分割を行える頂点P1とP2を探し出し、P
1とP2の間でパッチを分割する。分割後のパッチをF
0、F1とすると、各F0、F1に対して、この2分割
操作を実行する。これを、分割後のパッチが三角形また
は四角形になるまで続けていくのである。
An example of this specific procedure is shown below with reference to FIG. The vertices P1 and P2 that can be appropriately divided from the vertices of the given patch are searched, and P
Divide the patch between 1 and P2. The patch after division is F
Assuming 0 and F1, the two-partitioning operation is performed on each of F0 and F1. This is continued until the patch after division becomes a triangle or a quadrangle.

【0215】ここで、分割の2頂点の選び方として、適
切な分割をおこなえる2頂点の条件としては、 (A)切断線とP1,P2に接続する稜線との成す角度
(図19の場合は、γ0,γ1,γ2,γ3)が90°
の倍数に近いこと (B)切断線の長さが短いこと (C)切断線上の分割数が少ないこと が挙げられる。(A)〜(C)を総合的に評価し、最も
評価の高い2頂点を選択すればよい。
Here, as a method of selecting the two vertices of the division, the conditions of the two vertices for performing the appropriate division are as follows: (A) The angle formed between the cutting line and the ridge line connected to P1 and P2 (in the case of FIG. 19, γ0, γ1, γ2, γ3) are 90 °
(B) The length of the cutting line is short (C) The number of divisions on the cutting line is small. (A) to (C) are comprehensively evaluated, and the two vertices with the highest evaluation may be selected.

【0216】以下、エレメント分割の具体的手順を、図
18の順を追って説明しよう。 (1)入力されたパッチの頂点数を算出する(処理14
01)。 (2)算出されたパッチの頂点数が3または4であるか
どうかを判定する(処理1402)。もし、頂点数が3
または4であれば、分割処理は終わりなので、処理14
03を実行する。さもなければ、処理1404から処理
1409を実行する。
The specific procedure of element division will be described below in the order of FIG. (1) Calculate the number of vertices of the input patch (Process 14)
01). (2) It is determined whether the calculated number of vertices of the patch is 3 or 4 (process 1402). If the number of vertices is 3
If the number is 4 or 4, the division processing is completed, so the processing 14
Execute 03. Otherwise, processing 1404 to processing 1409 are executed.

【0217】(3)与えられた面F0をエレメントとし
て輝度分布記憶部610に格納する(処理1403)。 (4)面F0に属する頂点の中から面F0を分割するの
に最も適切な2頂点を選択する(処理1404)。
(3) The given plane F0 is stored as an element in the luminance distribution storage unit 610 (processing 1403). (4) From the vertices belonging to the plane F0, two vertices most suitable for dividing the plane F0 are selected (processing 1404).

【0218】2頂点の選択の方法は、既に上で説明した
が、上記の(A)〜(C)に加えて、次の条件(D)を
も考慮しなければならない。 (D)処理1302のエレメント分割密度計算処理で求
めた分割密度が、所定の密度よりも大きくないこと
The method of selecting two vertices has already been described above, but the following condition (D) must be considered in addition to the above (A) to (C). (D) The division density calculated in the element division density calculation processing of the processing 1302 is not higher than a predetermined density.

【0219】(5)P1,P2間のエッジを作成して、
パッチF1を生成する(処理1405)。 (6)パッチF0において、(5)の処理によって持つ
ことになる新しいエッジの再登録をおこなう(処理14
06)。すなわち、パッチF0とパッチF1を分割した
ことにより、元々のパッチF0を構成しているエッジと
新しくできたパッチF0を構成するエッジは異なるよう
になるため、パッチF0のエッジを再登録するのであ
る。
(5) Create an edge between P1 and P2,
A patch F1 is generated (process 1405). (6) In the patch F0, re-registration of a new edge to be obtained by the processing of (5) is performed (processing 14).
06). That is, by dividing the patch F0 and the patch F1, the edge configuring the original patch F0 and the edge configuring the newly formed patch F0 are different, and the edge of the patch F0 is re-registered. .

【0220】(7)(6)と同様に新しく作成されたパ
ッチF1を構成するエッジをパッチF0に登録する(処
理1407)。 (8)面F0に関して、このエレメント分割処理を再起
呼び出しする(処理1408)。
(7) Similarly to (6), the edges constituting the newly created patch F1 are registered in the patch F0 (process 1407). (8) For the plane F0, this element division processing is called again (processing 1408).

【0221】(9)面F1に関して、このエレメント分
割処理を再起呼び出しする(処理1409) なお、この処理は、再起呼びだしをおこなっているた
め、パッチF0,F1のエッジに関するデータは、スタ
ック構造で記憶しておかなければ、ならないことに留意
しなければならない。
(9) The element division process is recursively called for the surface F1 (process 1409). Since this process is a recurring call, data relating to the edges of the patches F0 and F1 is stored in a stack structure. You must keep in mind that you must do so.

【0222】(II−4−3) 本発明によるメッシュ
と従来技術によるメッシュの比較 さて、最後に、図20を用いて、このようにして作成さ
れたメッシュを従来技術と比較して、その特徴を説明し
てみよう。図20は、最終的に、メッシュが作成された
ときに、本発明によるものと従来技術によるものを対比
して示したモデルケースのメッシュの上面図である。
(II-4-3) Comparison between the mesh according to the present invention and the mesh according to the prior art Finally, referring to FIG. 20, the mesh created in this way is compared with the prior art, and its features are described. Let's explain. FIG. 20 is a top view of the mesh of the model case showing the comparison between the mesh according to the present invention and the mesh according to the prior art when the mesh is finally created.

【0223】図20(a)は、本発明に係るモデルケー
スの作成例である。これは、エレメントメッシュ生成部
604の処理を終えたときに、輝度分布演算部114−
1を通して、メッシュ表示部611が表示装置13に表
示させている例であると考えて良い。
FIG. 20A is an example of creating a model case according to the present invention. This is because when the processing of the element mesh generation unit 604 is completed, the luminance distribution calculation unit 114-
1 may be considered as an example in which the mesh display unit 611 causes the display device 13 to display.

【0224】なお、既に述べたように、ユーザが入力装
置12からメッシュの分割密度を入力して、メッシュの
細かさを制御することも可能である。
As described above, it is also possible for the user to control the fineness of the mesh by inputting the mesh division density from the input device 12.

【0225】図20(a)に示すように、面208は本
影領域u0、半影領域p0、全照領域s0に分離され、
それぞれがパッチを構成している。さらに、上述の(I
I−4−2)で説明したように、エレメントメッシュ生
成部604によって、各パッチは点線のようにエレメン
ト分割される。1つの光源のみを仮定して、メッシュ作
成をすればよいので、従来技術であったような光源と光
源の相互作用を考慮しなくともよい。すなわち、一つの
光源によって生ずる領域は、本影領域、半影領域、全照
領域に完全に分離され、従来技術で考えなければならな
い影領域間の合成などを考慮しなくてもよい。
As shown in FIG. 20A, the surface 208 is divided into a main shadow area u0, a penumbra area p0, and a full illumination area s0.
Each constitutes a patch. Further, the above (I
As described in I-4-2), each patch is divided into elements by dotted lines by the element mesh generation unit 604. Since it is sufficient to create a mesh assuming only one light source, it is not necessary to consider the interaction between the light sources as in the prior art. That is, a region generated by one light source is completely separated into a main shadow region, a penumbra region, and a full illumination region, and it is not necessary to consider a combination between shadow regions that must be considered in the related art.

【0226】さらに、各領域の特質に応じて、光源から
の距離を考慮して、所定の密度を定めておき、実際に分
割したときの密度がそれよりも大きくなるときは、メッ
シュ分割をおこなわないという技法によって、メッシュ
を構成するパッチやエレメントの量を減らすことができ
る。
Further, according to the characteristics of each area, a predetermined density is determined in consideration of the distance from the light source, and mesh division is performed when the actual density becomes larger than that. This technique can reduce the amount of patches and elements that make up the mesh.

【0227】これによって、放射演算の計算量を減らす
ことができ、かつ、シーンの輝度への影響度に応じて、
各領域の分割の細かさを調整できるので、計算量の割に
は、良い放射演算の結果をえることができ、現実に近い
画像を表示しうるのである。
Thus, the calculation amount of the radiation calculation can be reduced, and in accordance with the degree of influence on the luminance of the scene,
Since the fineness of division of each area can be adjusted, a good radiation calculation result can be obtained for the amount of calculation, and an image close to reality can be displayed.

【0228】一方、図20(b)は、従来技術によっ
て、モデルシーンのメッシュを作成した場合である。す
なわち、光源の数が2つであり、その2つの光源によっ
てできる本影領域、半影領域、全照領域を求め、各エレ
メント分割をおこなったものである。
On the other hand, FIG. 20B shows a case where a mesh of a model scene is created by a conventional technique. In other words, the number of light sources is two, and a real shadow area, a penumbra area, and a full illumination area formed by the two light sources are obtained, and each element is divided.

【0229】図20(b)から、面208は本影領域u
1,u2、半影領域p1,p2、全照領域s1に分離さ
れている。これは、2つの光源をもつことから当然であ
るが、点線で表示されたエレメントの数が(a)に比べ
て格段に多いことがわかるであろう。すなわち、この多
い分、放射演算に時間がかかり、本発明と比べて、演算
速度が遅くなるのである。
As shown in FIG. 20B, the plane 208 is the umbra area u
1, u2, a penumbra area p1, p2, and a full illumination area s1. This is obvious from having two light sources, but it will be understood that the number of elements indicated by dotted lines is much larger than that in FIG. In other words, the radiation calculation takes a longer time due to the increase, and the calculation speed becomes slower than in the present invention.

【0230】(II−5) 放射演算部による放射演算
処理 次に、図21および図22を用いて、放射演算部による
放射演算処理について説明する。
(II-5) Radiation Calculation Processing by Radiation Calculation Unit Next, the radiation calculation processing by the radiation calculation unit will be described with reference to FIGS. 21 and 22.

【0231】図21は、放射演算部605の処理フロー
をあらわすPAD図である。放射演算とは、物体間の輝
度の伝搬をエネルギの放射に擬えて計算するものであ
る。以下、図21のステップを追って説明しよう。
FIG. 21 is a PAD diagram showing the processing flow of radiation calculation section 605. The radiation calculation is to calculate the propagation of luminance between objects by simulating the radiation of energy. Hereinafter, the steps of FIG. 21 will be described.

【0232】(1)放射演算をおこなう光源のエネルギ
を1に設定する(処理1701)。ここで、1にしたの
は、放射演算部では、光源と他の面の相対的なエネルギ
分配率のみを求め、実際の光源の強度を考慮した輝度を
求めるのは、後工程で処理しようという意図である。
(1) The energy of the light source for performing the radiation calculation is set to 1 (process 1701). Here, the reason why the value is set to 1 is that the radiation calculation unit calculates only the relative energy distribution ratio between the light source and the other surface, and calculates the luminance in consideration of the actual intensity of the light source in a later process. It is intention.

【0233】(2)各パッチの中の最大エネルギを持っ
ているパッチを、次の計算ステップのための新たな光源
とし、そのエネルギが許容量以下になるまで、処理17
03、処理1706、処理1707、処理1708を繰
り返し実行する(処理1702)。(エレメントでない
ことに注意) ここで、許容量を定める目的は、放射演算の効率化をね
らったものであり、許容量とは、放射エネルギが充分0
に近くて、これ以下の放射エネルギでは、もう演算する
必要がないと考えられる量である。
(2) The patch having the maximum energy in each patch is used as a new light source for the next calculation step.
03, processing 1706, processing 1707, and processing 1708 are repeatedly executed (processing 1702). (Note that this is not an element.) Here, the purpose of determining the allowable amount is to improve the efficiency of the radiation calculation.
, And below this is the amount that would not need to be computed anymore.

【0234】(3)シーンに存在する物体の面をメッシ
ュ分割して得られた全ての頂点に対して処理1704を
実行する(処理1703)。 (4)対象頂点と光源とを結ぶ直線と他の物体との交差
を判定し、交差しない場合には処理1705を実行する
(処理1704)。この処理は、頂点と光源の間に光の
伝播をさえぎる物体が存在するかどうかを判定する処理
である。
(3) Process 1704 is executed for all vertices obtained by dividing the surface of the object existing in the scene into meshes (process 1703). (4) The intersection between the straight line connecting the target vertex and the light source and another object is determined, and if they do not intersect, the process 1705 is executed (process 1704). This process is a process for determining whether or not there is an object that blocks light propagation between the vertex and the light source.

【0235】(5)もし、存在すれば、対象の頂点には
光が届かないので、エネルギ伝播の計算をしないように
する。 (6)パッチのエネルギを対象頂点に伝播させる計算を
おこなう(処理1705)。
(5) If it exists, the light does not reach the target vertex, so that the calculation of energy propagation is not performed. (6) A calculation for propagating the energy of the patch to the target vertex is performed (process 1705).

【0236】(7)各面に伝播した平均エネルギを算出
し、算出した平均エネルギを現在持っている面のエネル
ギに加え、新たな面のエネルギとする(処理170
6)。ここで求められた平均エネルギは光源から面が受
け取ったエネルギである。また、求められたエネルギを
パッチに加えているのは、パッチに受け取ったエネルギ
を蓄えるための処理である。
(7) The average energy that has propagated to each surface is calculated, and the calculated average energy is added to the energy of the surface that currently exists, and is set as the energy of a new surface (process 170).
6). The average energy determined here is the energy received by the surface from the light source. Adding the obtained energy to the patch is a process for storing the energy received in the patch.

【0237】(8)(2)で光源としたパッチのエネル
ギを0にする(処理1707)。これは、そのパッチが
蓄えているエネルギをシーンに放射し、エネルギが無く
なったことをシミュレートしている。
(8) The energy of the patch used as the light source in (2) is set to 0 (processing 1707). This radiates the energy stored by the patch into the scene, simulating the loss of energy.

【0238】(9)現在、最も大きいエネルギを持った
パッチを探索する(処理1708)。以上の処理を繰り
返すことにより、徐々に最初の光源のエネルギが全ての
パッチに行き渡っていく。このエネルギの伝搬処理は、
現実世界のモデルの間接照明をシミュレートしている。
したがって、この処理により間接照明を忠実にシミュレ
ートした輝度分布を得ることができる。
(9) Search for the patch having the highest energy at present (process 1708). By repeating the above processing, the energy of the first light source gradually spreads to all patches. This energy propagation process
Simulates indirect lighting of a real-world model.
Therefore, it is possible to obtain a luminance distribution simulating the indirect illumination faithfully by this processing.

【0239】次に、図22および図23を用いて、交差
判定処理1704の動作についてさらに詳細に説明す
る。図22は、交差判定処理1704のさらに詳細な処
理フローをあらわすPAD図である。図23は、交差判
定処理をおこなうための2つの物体の奥行きの比較を説
明するモデルケースの斜視図である。
Next, the operation of the intersection determination processing 1704 will be described in more detail with reference to FIGS. FIG. 22 is a PAD diagram showing a more detailed processing flow of intersection determination processing 1704. FIG. 23 is a perspective view of a model case for explaining the comparison of the depths of two objects for performing the intersection determination processing.

【0240】以下、図22の順を追って説明しよう。 (1)対象としている頂点が交点計算データ記憶部60
8に格納している半立方体画像800のどの面に投影さ
れるかを選択する(処理1801)。 (2)投影面に対して対象としている頂点を投影する
(処理1802)。
Hereinafter, description will be made in order of FIG. (1) The target vertex is the intersection calculation data storage unit 60
8 is selected to which surface of the semi-cubic image 800 stored in the image 8 is projected (process 1801). (2) The target vertex is projected on the projection plane (process 1802).

【0241】(3)この投影面を利用して、対象として
いる頂点の手前に、物体が存在しないか判断する(処理
1803)。この判断の仕方は、以下の通りである。
(3) Using this projection plane, it is determined whether an object exists before the target vertex (step 1803). The method of this determination is as follows.

【0242】今、対象としている点を三次元座標であら
わして、(X1,Y1,Z1)とする。図10で求めたよ
うに、この点は、面713に投影されて、面713上で
(x,y)座標を持つ。この点(x,y)の図10
(a)の面800に存在する物体識別番号を調べる。
Now, the target point is represented by three-dimensional coordinates and is represented by (X 1 , Y 1 , Z 1 ). As determined in FIG. 10, this point is projected onto surface 713 and has (x, y) coordinates on surface 713. FIG. 10 of this point (x, y)
The object identification number existing on the surface 800 shown in FIG.

【0243】そして、図10(b)で模式的に表示され
たデータを基にして、その物体識別番号の物体の(x,
y)での奥行きを求める。
Then, based on the data schematically displayed in FIG. 10B, (x,
Find the depth in y).

【0244】この求めた奥行きが対象としている頂点の
奥行きより小さければ、手前に物体があるので、その頂
点と光源間の光線は、交差していると判断される。も
し、そうでなければ、手前に物体はなく、その頂点と光
源間の光線は、手前の物体とは交差していないと判断さ
れる。
If the obtained depth is smaller than the depth of the target vertex, it is determined that the light beam between the vertex and the light source intersects because there is an object in front. If not, it is determined that there is no object in front and the ray between the vertex and the light source does not intersect with the object in front.

【0245】図23(a)で示すと、対象としている物
体は、207であり、(x,y)での奥行きは、その頂
点の奥行きd1と等しいので、手前に物体はなく、その
頂点と光源間の光線は、手前の物体とは交差していない
と判断される。
[0245] When shown in FIG. 23 (a), the object as an object is 207, (x, y) depth in is equal to the depth d 1 of the vertex is not an object in front, the vertex It is determined that the light beam between the light source and the light source does not intersect the object in front.

【0246】図23(b)の場合は、対象としている物
体は、208であり、(x,y)での物体207の奥行
きをd2とすると、d1>d2となるので、手前に物体が
存在し、その頂点と光源間の光線は、手前の物体と交差
していると判断される。
In the case of FIG. 23B, the target object is 208, and if the depth of the object 207 at (x, y) is d 2 , d 1 > d 2. It is determined that an object exists, and the ray between the vertex and the light source intersects the object in front.

【0247】(III) 輝度分布画像生成部による輝
度分布画像生成処理 次に、図24ないし図25を用いて、輝度分布画像生成
部による輝度分布画像生成処理について説明する。図2
4は、輝度分布画像生成部を構成する各機能モジュール
のブロック図である。
(III) Luminance Distribution Image Generation Processing by Luminance Distribution Image Generation Unit Next, the luminance distribution image generation processing by the luminance distribution image generation unit will be described with reference to FIGS. FIG.
FIG. 4 is a block diagram of each functional module constituting the luminance distribution image generation unit.

【0248】ここで、図1における輝度分布画像生成部
115−1,2,3は同じ構成なので、115−1を例
に採り説明する。輝度分布画像生成部115−1は、輝
度分布表示処理部1901と図形表示処理部1902と
輝度分布画像記憶部1903からなり、バス1904に
よって各機能モジュールが接続されている。
Here, since the luminance distribution image generating units 115-1, 2, 3 in FIG. 1 have the same configuration, description will be made by taking 115-1 as an example. The luminance distribution image generation unit 115-1 includes a luminance distribution display processing unit 1901, a graphic display processing unit 1902, and a luminance distribution image storage unit 1903, and each functional module is connected by a bus 1904.

【0249】輝度分布表示処理部1901は、光源の輝
度分布記憶部610からシーンデータとその輝度分布と
を読み込み、それらを図形表示処理部1902に送る。
図形表示処理部1902は、画像生成データ記憶部11
3に記憶されているカメラデータを読み込み、そのカメ
ラデータとシーンデータ、その輝度分布とから画像を生
成する。
The luminance distribution display processing section 1901 reads scene data and its luminance distribution from the luminance distribution storage section 610 of the light source, and sends them to the graphic display processing section 1902.
The graphic display processing unit 1902 includes the image generation data storage unit 11
3 is read, and an image is generated from the camera data, the scene data, and the luminance distribution.

【0250】この図形表示処理部は、シーン内に配置さ
れた物体における拡散反射成分を考慮した画像を生成す
る場合は、Zバッファ法による画像生成処理を用いる。
Zバッファ法は、被写体を仮想的なカメラスクリーンに
投影し、投影された被写体の内部に存在する画素の輝度
を決定する方法である。
The graphic display processing unit uses an image generation process based on the Z-buffer method when generating an image in consideration of diffuse reflection components of an object arranged in a scene.
The Z-buffer method is a method of projecting a subject on a virtual camera screen and determining the luminance of pixels existing inside the projected subject.

【0251】さらに、シーン内に配置された直接反射成
分を考慮する場合には、図形表示処理部1902で、光
線追跡法による画像生成処理が用いられる。光線追跡法
は視点からスクリーンの各画素へ光線をのばし、最初に
交差する被写体をその画素に描くべき被写体とし、その
被写体の輝度を持ってくる手法である。
Further, when the direct reflection component arranged in the scene is considered, the graphic display processing unit 1902 uses an image generation process by a ray tracing method. The ray tracing method is a method in which a light ray is extended from a viewpoint to each pixel of a screen, a subject that intersects first is set as a subject to be drawn on the pixel, and the brightness of the subject is obtained.

【0252】被写体の光学的な属性である反射、屈折な
ども同様に、被写体から反射光線や透過光線をのばし、
その光線が交差したときの被写体の輝度を決定すること
で表現できる。この方法は、反射や屈折による周りの被
写体の映り込みを正確に表現することができる。
Similarly, the reflection and refraction, etc., which are the optical attributes of the subject, extend the reflected or transmitted light from the subject.
It can be expressed by determining the brightness of the subject when the light beams intersect. This method can accurately represent the reflection of the surrounding subject due to reflection or refraction.

【0253】次に、図25を用いて、輝度分布表示処理
部1901の動作について説明する。図25は、輝度分
布表示処理部1901の処理フローをあらわすPAD図
である。
Next, the operation of the luminance distribution display processing section 1901 will be described with reference to FIG. FIG. 25 is a PAD diagram showing a processing flow of luminance distribution display processing section 1901.

【0254】(1)画像生成データ記憶部113に格納
されているカメラデータを読み込み、図形表示処理部1
902のカメラ位置を設定する(処理2001)。以
降、この設定されたカメラ位置に従い、図形表示処理部
1902は画像を生成するのである。
(1) The camera data stored in the image generation data storage section 113 is read and the graphic display processing section 1
A camera position 902 is set (process 2001). Thereafter, the graphic display processing unit 1902 generates an image according to the set camera position.

【0255】(2)シーンに登録されている全ての面に
対して処理2003を繰り返し実行する(処理200
2)。 (3)面に登録されている全てのエレメントについて処
理2004と処理2005を実行する(処理200
3)。
(2) Process 2003 is repeatedly executed for all surfaces registered in the scene (process 200).
2). (3) Processes 2004 and 2005 are executed for all elements registered on the surface (process 200).
3).

【0256】(4)各エレメントについて図形に分割す
る処理をおこなう(処理2004)。 (5)作成された図形を図形表示処理部1902に渡
し、図形表示処理部1902の呼び出す(処理200
5)。
(4) A process for dividing each element into figures is performed (process 2004). (5) The created graphic is passed to the graphic display processing unit 1902 and called by the graphic display processing unit 1902 (processing 200).
5).

【0257】(6)全ての面の処理が終わり、生成され
た画像を光源輝度分布画像記憶部1903に格納する
(処理2006)。
(6) After processing of all surfaces is completed, the generated image is stored in the light source luminance distribution image storage unit 1903 (Process 2006).

【0258】次に、図26を用いて、画像合成処理部1
16による画像合成処理について説明しよう。
Next, referring to FIG. 26, the image synthesis processing unit 1
16 will be described.

【0259】図26は、画像合成処理部116による画
像合成処理の処理フローをあらわすPAD図である。画
面をあらわす画像データは、横×縦の行列で表現されう
る。これを仮に、(ξij)とする。縦、横の大きさは、
システムが持っているハードウェア、ソフトウェアの能
力で決められるが、大きいほど解像度がよくなり、10
00以上が好ましい。この画像データがアキュムレーシ
ョンバッファ上で演算される。
FIG. 26 is a PAD showing a processing flow of the image synthesizing process by the image synthesizing section 116. Image data representing a screen can be represented by a horizontal x vertical matrix. This is assumed to be (ξ ij ). The vertical and horizontal dimensions are
The resolution is determined by the hardware and software capabilities of the system.
00 or more is preferable. This image data is calculated on the accumulation buffer.

【0260】以下、図26の順を追って説明しよう。 (1)アキュムレーションバッファ117上の各画素の
値を0にクリアする(処理2101)。すなわち、次の
(式7)をおこなう。
Hereinafter, description will be made in order of FIG. (1) The value of each pixel on the accumulation buffer 117 is cleared to 0 (processing 2101). That is, the following (Equation 7) is performed.

【0261】[0261]

【数6】(ξij)←0…(式7) ここで、←は、行列の全ての要素に0を代入することを
意味する。
ij ) ← 0 (Equation 7) Here, ← means that 0 is substituted for all elements of the matrix.

【0262】(2)シーンに存在する全ての光源に対し
て処理2103と処理2104を繰り返し実行する(処
理2102)。 (3)該当する光源強度のデータを形状データ記憶部1
13から読みだす(処理2103)。
(2) Processes 2103 and 2104 are repeatedly executed for all light sources existing in the scene (process 2102). (3) The data of the corresponding light source intensity is stored in the shape data storage unit 1.
13 (processing 2103).

【0263】(4)(式8)を実行する(処理210
4)。
(4) Execute (Equation 8) (Process 210)
4).

【0264】[0264]

【数7】 (ξij)←(ξij)+(λij)×(intensity)…(式8) ここで、(ξij)は、アキュムレーションバッファ上の
画素を行列表現したもので、各要素は、その画素の輝度
をあらわしている。(λij)は、足し込むべき画面の画
素を行列表現したもので、各要素は、その相対表現であ
らわされた画素の輝度である。intensityは、スカラー
であり、処理2103において読み込まれた光源の強度
である。
(7) (ξ ij ) ← (ξ ij ) + (λ ij ) × (intensity) (Equation 8) Here, (ξ ij ) is a matrix representation of the pixels on the accumulation buffer. Represents the luminance of the pixel. (Λ ij ) is a matrix representation of the pixels of the screen to be added, and each element is the luminance of the pixel represented by its relative representation. Intensity is a scalar, and is the intensity of the light source read in the process 2103.

【0265】また、←は、左辺の行列の全ての要素に、
右辺の行列の全ての要素を代入することを意味すること
をあらわしている。同様に、+,×などの演算も、行列
の全ての要素ごとにおこなわれる。
Further, ← indicates that all elements of the matrix on the left side are:
This means that all the elements of the matrix on the right side are substituted. Similarly, operations such as + and × are performed for every element of the matrix.

【0266】(5)(4)の処理で、求められた画像を
表示に適した値に変換する処理をおこなう(処理210
5)。表示に適した値に変換するとは、いわゆるガンマ
補正と呼ばれるもので、通常表示装置はある値の範囲し
か表示できないので、その範囲に収まる値に補正するこ
とである。
(5) In the processing of (4), processing for converting the obtained image into a value suitable for display is performed (processing 210).
5). Converting to a value suitable for display is what is called gamma correction. Normally, a display device can only display a certain range of values, so that the value is corrected to a value within the range.

【0267】(6)処理2105によって変換された画
像を最終画像記憶部118に格納する(処理210
6)。
(6) The image converted by the process 2105 is stored in the final image storage unit 118 (process 210).
6).

【0268】このように画像毎に線形演算することによ
り全ての光源の輝度分布が考慮された画像が生成でき
る。しかも、メッシュが細かいときの放射演算と違っ
て、この演算は、単純な掛け算と足算なので演算時間も
あまりかからない。また、場合によれば、ベクトルプロ
セッサでベクトル演算をおこなわせることもできる。ゆ
えに、光源ごとに画像を求めてから合成するこの方法
は、結果として、画像合成の演算時間の短縮となるので
ある。
As described above, by performing a linear operation for each image, an image can be generated in which the luminance distribution of all light sources is considered. In addition, unlike the radiation calculation when the mesh is fine, this calculation is a simple multiplication and addition, and therefore does not take much calculation time. In some cases, a vector processor can perform a vector operation. Therefore, this method of obtaining an image for each light source and then synthesizing the image results in a reduction in the operation time of the image synthesis.

【0269】なお、光の成分として、拡散反射成分、直
接反射成分、透過成分の複数の分布を同時に扱いたいと
きは、(式8)の実行において、各成分をあらわす行列
の要素を足し込んでいけばよい。
When a plurality of distributions of a diffuse reflection component, a direct reflection component, and a transmission component are to be treated simultaneously as light components, the elements of the matrix representing each component are added in the execution of (Equation 8). I should go.

【0270】〔表示装置による画面表示〕最後に、最終
画像記憶部118に格納された画像データは、表示装置
13に画面として表示される。
[Screen Display by Display Device] Finally, the image data stored in the final image storage unit 118 is displayed on the display device 13 as a screen.

【0271】[0271]

【発明の効果】本発明によれば、第一として、コンピュ
ータグラフィックスの分野におけるラジオシティ法によ
る画像生成において、メッシュ分割の数を減らすことに
より、高速に画像生成をなしうる大域照明レンダリング
方法および装置を提供することができる。
According to the present invention, first, a global illumination rendering method capable of generating images at high speed by reducing the number of mesh divisions in image generation by the radiosity method in the field of computer graphics, and An apparatus can be provided.

【0272】また、第二として、対象となるシーン内の
物体や光源の変化に対応させることが可能な大域照明レ
ンダリング方法および装置を提供することができ、さら
に、第三として、対話システムによって物体の形状、属
性、位置、光源の強度、視点の変化に対して、高速に応
答し、その変化に応じた画像を生成し、表示させるため
の大域照明レンダリング方法および装置を提供すること
ができる。
[0272] Second, a global illumination rendering method and apparatus capable of responding to changes in objects and light sources in a target scene can be provided. Global illumination rendering method and apparatus for responding quickly to changes in the shape, attribute, position, light source intensity, and viewpoint, and generating and displaying an image corresponding to the change.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明に係る大域照明レンダリング装置を用い
た照明シミュレーションシステムの構成例をあらわすブ
ロック図である。
FIG. 1 is a block diagram illustrating a configuration example of a lighting simulation system using a global lighting rendering device according to the present invention.

【図2】n個のプロセッサとメモリを有する並列計算機
のハードウェア構成を示すブロック図である。
FIG. 2 is a block diagram illustrating a hardware configuration of a parallel computer having n processors and a memory;

【図3】表示装置12−3または表示装置1110に表
示される対話画面の一例を示した説明図である。
FIG. 3 is an explanatory diagram showing an example of an interactive screen displayed on a display device 12-3 or a display device 1110.

【図4】図3にあらわされたモデルシーンをあらわすデ
ータ構造の説明図である。
FIG. 4 is an explanatory diagram of a data structure representing the model scene shown in FIG. 3;

【図5】カメラデータの格納するためのテーブルの説明
図である。
FIG. 5 is an explanatory diagram of a table for storing camera data.

【図6】画像生成インタフェース処理部110の処理フ
ローをあらわすPAD図である(その一)。
FIG. 6 is a PAD diagram showing a processing flow of an image generation interface processing unit 110 (part 1).

【図7】画像生成インタフェース処理部110の処理フ
ローをあらわすPAD図である(その二)。
FIG. 7 is a PAD diagram showing a processing flow of image generation interface processing section 110 (part 2).

【図8】輝度分布演算部を構成する各機能モジュールの
ブロック図である。
FIG. 8 is a block diagram of each functional module constituting a luminance distribution calculation unit.

【図9】光源206に半立方体の投影面を仮定したモデ
ルシーンの斜視図である。
FIG. 9 is a perspective view of a model scene assuming a semi-cubic projection plane as a light source 206;

【図10】交点計算データの具体的な内容をイメージす
るための各面のデータの内容を模式的にあらわした図で
ある。
FIG. 10 is a diagram schematically showing the data contents of each surface for imagining the specific contents of the intersection calculation data.

【図11】影領域分割処理部603の処理フローをあら
わすPAD図である。
FIG. 11 is a PAD diagram illustrating a processing flow of a shadow area division processing unit 603.

【図12】処理903の奥に存在する物体を手前の物体
によって分割する処理の詳細な処理フローをあらわすP
AD図である。
FIG. 12 is a flowchart showing a detailed process flow of a process of dividing an object present at the back of the process 903 by a near object
It is an AD diagram.

【図13】本影領域作成のためのパッチ分割を説明する
モデルシーンの斜視図である。
FIG. 13 is a perspective view of a model scene for explaining patch division for creating a real shadow area.

【図14】半影領域稜線の作成を説明するモデルシーン
の斜視図である。
FIG. 14 is a perspective view of a model scene illustrating creation of a penumbra area ridge line.

【図15】光源の各辺に対して、半影領域稜線を作成し
ているモデルシーンの斜視図である。
FIG. 15 is a perspective view of a model scene in which a penumbra area ridge line is created for each side of the light source.

【図16】光源の各辺の半影領域稜線によって分割され
る半影領域作成のためのパッチ分割を説明するモデルシ
ーンの上面図である。
FIG. 16 is a top view of a model scene illustrating patch division for creating a penumbra area divided by a penumbra area ridge line of each side of the light source.

【図17】エレメントメッシュ生成部604の処理フロ
ーをあらわすPAD図である。
FIG. 17 is a PAD diagram illustrating a processing flow of the element mesh generation unit 604.

【図18】エレメント分割処理1303のさらに詳細な
処理フローをあらわすPAD図である。
FIG. 18 is a PAD diagram showing a more detailed processing flow of element division processing 1303.

【図19】パッチをエレメント分割する方法の模式的な
説明図である。
FIG. 19 is a schematic explanatory view of a method of dividing a patch into elements.

【図20】最終的に、メッシュが作成されたときに、本
発明によるものと従来技術によるものを対比して示した
モデルケースのメッシュの上面図である。
FIG. 20 is a top view of a mesh of a model case showing a comparison between a mesh according to the present invention and a mesh according to the prior art when a mesh is finally created.

【図21】放射演算部605の処理フローをあらわすP
AD図である。
FIG. 21 is a flowchart showing a process flow of a radiation calculation unit 605;
It is an AD diagram.

【図22】交差判定処理1704のさらに詳細な処理フ
ローをあらわすPAD図である。
FIG. 22 is a PAD diagram showing a more detailed processing flow of intersection determination processing 1704.

【図23】交差判定処理をおこなうための2つの物体の
奥行きの比較を説明するモデルケースの斜視図である。
FIG. 23 is a perspective view of a model case for explaining the comparison of the depth of two objects for performing the intersection determination processing.

【図24】輝度分布画像生成部を構成する各機能モジュ
ールのブロック図である。
FIG. 24 is a block diagram of each functional module constituting the luminance distribution image generation unit.

【図25】輝度分布表示処理部の処理フローをあらわす
PAD図である。
FIG. 25 is a PAD diagram showing a processing flow of a luminance distribution display processing section.

【図26】画像合成処理部による画像合成処理の処理フ
ローをあらわすPAD図である。
FIG. 26 is a PAD diagram illustrating a processing flow of an image synthesis process performed by an image synthesis processing unit.

【符号の説明】[Explanation of symbols]

10…中央処理装置、11…大域照明レンダリング装
置、12…入力装置、13…表示装置、101…イベン
ト処理部、102…イベント解釈部、103…イベント
管理部、104…シーンデータ管理部、110…画像生
成インタフェース、111…パイプラインバイパス、1
12…光源選択部、113…画像生成データ記憶部、1
14…輝度分布演算部群、115…輝度分布画像生成部
群、116…画像合成処理部、117…アキュムレーシ
ョンバッファ、118…最終画像記憶部。
DESCRIPTION OF SYMBOLS 10 ... Central processing unit, 11 ... Global illumination rendering device, 12 ... Input device, 13 ... Display device, 101 ... Event processing unit, 102 ... Event interpretation unit, 103 ... Event management unit, 104 ... Scene data management unit, 110 ... Image generation interface, 111 ... pipeline bypass, 1
12: light source selection unit, 113: image generation data storage unit, 1
14: luminance distribution calculation unit group, 115: luminance distribution image generation unit group, 116: image synthesis processing unit, 117: accumulation buffer, 118: final image storage unit

フロントページの続き (72)発明者 福田 善文 茨城県日立市大みか町七丁目1番1号 株式会社日立製作所日立研究所内 (56)参考文献 Lischinsky D 他,”C ombining Hierarchi cal Radiosity and Discontinuity Mesh ing”,PROCEEDINGS C OMPUTER GRAPHICS, (1993),p199−208 (58)調査した分野(Int.Cl.7,DB名) G06T 15/00 - 15/60 Continuation of the front page (72) Inventor Yoshifumi Fukuda 7-1-1, Omika-cho, Hitachi City, Ibaraki Prefecture Inside Hitachi Research Laboratory, Hitachi, Ltd. (56) References Lischinsky D et al. , PROCEEDINGS COMPUTER GRAPHICS, (1993), p199-208 (58) Fields investigated (Int. Cl. 7 , DB name) G06T 15/00-15/60

Claims (10)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 計算機システムによって、仮想的な3次
元シーンを表示する大域照明レンダリング方法におい
て、 仮想的な3次元シーンを構成する光源および物体に関す
る各種パラメータを基に、前記物体表面上の輝度分布を
演算する1つ以上の輝度分布演算部と、 その各々の輝度分布演算部に、シーン内に存在する光源
ごとに処理を割り振る光源選択部と、 前記輝度分布演算部によって演算された輝度分布を基
に、任意の視点から見たときの画像を生成する1つ以上
の輝度分布画像生成部と、 前記輝度分布画像生成部によって生成された画像を合成
する画像合成処理部とを備え、 (1)前記光源選択部によって、前記各輝度分布演算部
ごとに対し、シーン内に存在する異なった1つ、または
重複しない一部の光源の情報のみを設定することで、シ
ーン内の各光源情報が、特定の1つの輝度分布演算部に
振り分けられるように処理する工程と、 (2)前記輝度分布演算部によって、1つの光源に対し
ての前記物体表面上の輝度分布を演算する工程と、 (3)前記輝度分布画像生成部によって、前記(2)の
工程で演算された輝度分布を基に、任意の視点から見た
ときの画像を生成する工程と、 (4)前記画像合成処理部によって、前記(3)の工程
で生成された各々の画像を合成する工程とを有し、 前記(1)ないし(4)の工程をこの順におこなうこと
を特徴とする大域照明レンダリング方法。
1. A global illumination rendering method for displaying a virtual three-dimensional scene by a computer system, comprising: a luminance distribution on a surface of the object based on various parameters related to a light source and an object constituting the virtual three-dimensional scene. One or more brightness distribution calculation units, a light source selection unit that allocates processing to each of the brightness distribution calculation units for each light source present in the scene, and a brightness distribution calculated by the brightness distribution calculation unit. Based on at least one brightness distribution image generation unit that generates an image when viewed from an arbitrary viewpoint, and an image synthesis processing unit that synthesizes an image generated by the brightness distribution image generation unit. A) each of the luminance distribution calculation units by the light source selection unit;
For each, a different one that exists in the scene, or
By setting only the information of some non-overlapping light sources,
Each light source information in the image is sent to one specific luminance distribution calculation unit.
A step of processing as those distributed, by (2) the luminance distribution calculation unit, a step of calculating a luminance distribution on the surface of the object with respect to one light source, by (3) the intensity distribution image generating unit, A step of generating an image viewed from an arbitrary viewpoint based on the luminance distribution calculated in the step (2); and (4) a step of generating the image in the step (3) by the image synthesis processing unit. And synthesizing the respective images, wherein the steps (1) to (4) are performed in this order.
【請求項2】 前記(2)の工程が、物体の表面をメッ
シュ分割する工程を含むことを特徴とする請求項1記載
の大域照明レンダリング方法。
2. The global illumination rendering method according to claim 1, wherein the step (2) includes a step of dividing the surface of the object into meshes.
【請求項3】 前記(2)の工程の輝度分布演算では、
シーン内の物体表面の輝度分布は、その輝度分布が相対
値であらわされた相対的な輝度分布であって、前記
(4)の工程で、前記輝度分布の相対値に各々の光源の
強度を掛け合わせた後に、各画像を合成することを特徴
とする請求項1記載の大域照明レンダリング方法。
3. In the luminance distribution calculation in the step (2),
The luminance distribution of the object surface in the scene is a relative luminance distribution in which the luminance distribution is represented by a relative value. In the step (4), the intensity of each light source is set to the relative value of the luminance distribution. The global illumination rendering method according to claim 1, wherein each image is synthesized after the multiplication.
【請求項4】 計算機システム内のデータを視覚的に表
示する手段を有し、前記(2)の工程における前記メッ
シュ分割する工程の結果を表示することを特徴とする請
求項2記載の大域照明レンダリング方法。
4. The global illumination according to claim 2, further comprising means for visually displaying data in the computer system, and displaying a result of the mesh dividing step in the step (2). Rendering method.
【請求項5】 計算機システムによって、仮想的な3次
元シーンを表示する大域照明レンダリング装置におい
て、 仮想的な3次元シーンを構成する光源および物体に関す
る各種パラメータを基に、前記物体表面上の輝度分布を
演算する1つ以上の輝度分布演算部と、 その各々の輝度分布演算部に、シーン内に存在する光源
ごとに処理を割り振る光源選択部と、 前記輝度分布演算部によって演算された輝度分布を基
に、任意の視点から見たときの画像を生成する1つ以上
の輝度分布画像生成部と、 前記輝度分布画像生成部によって生成された画像を合成
する画像合成処理部とを備え、 前記光源選択部は、前記各輝度分布演算部ごとに対し、
シーン内に存在する異なった1つ、または重複しない一
部の光源の情報のみを設定することで、シーン内の各光
源情報が、特定の1つの輝度分布演算部に振り分けられ
るように処理し、 前記輝度分布演算部は、1つの光源に対しての前記物体
表面上の輝度分布を演算し、 前記輝度分布画像生成部は、前記輝度分布演算部によっ
て演算された輝度分布を基に、任意の視点から見たとき
の画像を生成し、 前記画像合成処理部は、前記輝度分布画像生成部によっ
て生成された各々の画像を合成することを特徴とする大
域照明レンダリング装置。
5. A global illumination rendering device for displaying a virtual three-dimensional scene by a computer system, comprising: a luminance distribution on the surface of the object based on various parameters relating to a light source and an object constituting the virtual three-dimensional scene. One or more brightness distribution calculation units, a light source selection unit that allocates processing to each of the brightness distribution calculation units for each light source present in the scene, and a brightness distribution calculated by the brightness distribution calculation unit. Based on at least one brightness distribution image generation unit that generates an image when viewed from an arbitrary viewpoint; and an image synthesis processing unit that synthesizes an image generated by the brightness distribution image generation unit. The selection unit is provided for each of the luminance distribution calculation units.
One different or non-overlapping one in the scene
By setting only the light source information for each part,
Source information is distributed to one specific luminance distribution calculation unit.
The brightness distribution calculation unit calculates the brightness distribution on the object surface for one light source, and the brightness distribution image generation unit calculates the brightness distribution calculated by the brightness distribution calculation unit. A global illumination rendering device, wherein an image as viewed from an arbitrary viewpoint is generated based on the image, and the image synthesis processing unit synthesizes each image generated by the luminance distribution image generation unit.
【請求項6】 前記輝度分布演算部が、前記物体の表面
をメッシュ分割することを特徴とする請求項5記載の大
域照明レンダリング装置。
6. The global illumination rendering device according to claim 5, wherein the luminance distribution calculation unit divides the surface of the object into meshes.
【請求項7】 前記輝度分布演算部において、シーン内
の物体表面の輝度分布が、その輝度分布を相対値であら
わした相対的な輝度分布であって、前記画像合成処理部
は、前記輝度分布の相対値に各々の光源の強度を掛け合
わせた後に、各画像を合成することを特徴とする請求項
5記載の大域照明レンダリング装置。
7. The luminance distribution calculating section, wherein the luminance distribution on the surface of the object in the scene is a relative luminance distribution in which the luminance distribution is represented by a relative value, and wherein the image synthesis processing section comprises: 6. The global illumination rendering device according to claim 5, wherein each image is synthesized after multiplying the relative value of? By the intensity of each light source.
【請求項8】 計算機システム内のデータを視覚的に表
示する手段を有し、前記輝度分布演算部がおこなったメ
ッシュ分割の結果を表示することを特徴とする請求項6
記載の大域照明レンダリング装置。
8. The apparatus according to claim 6, further comprising means for visually displaying data in the computer system, and displaying a result of mesh division performed by said luminance distribution calculation unit.
A global lighting rendering device as described.
【請求項9】 (2)´前記輝度分布演算部によって、
1つの光源に対しての物体表面上の輝度分布を演算する
工程であって、その工程の中に物体の表面をメッシュ分
割する工程を含む工程を有し、 前記(2)´の工程が、前記光源から見た前記物体のエ
ネルギ伝搬係数の大きさによって、メッシュ分割の密度
を決定する工程であり、 前記(2)の工程を前記(2)´の工程に置き換えて、 前記(1)、(2)´、(3)、(4)の工程をこの順
におこなうことを特徴とする請求項1記載の 大域照明レ
ンダリング方法。
9. (2) ′ The luminance distribution calculating section
A step of calculating a luminance distribution on the object surface for one light source, including a step of dividing the surface of the object into meshes in the step, wherein the step (2) ′ includes: A step of determining the density of mesh division according to the magnitude of the energy propagation coefficient of the object viewed from the light source , wherein the step (2) is replaced by the step (2) ′, and the steps (1) and (2) are performed. Steps (2) ′, (3) and (4) are performed in this order.
The global illumination rendering method according to claim 1, wherein the global illumination rendering method is performed.
【請求項10】 前記輝度分布演算部が、1つの光源に
対しての物体表面上の輝度分布を演算し、かつ、その演
算処理の中で、前記光源から見た前記物体のエネルギ伝
搬係数の大きさによって、メッシュ分割の密度を決定す
ることを特徴とする請求項5記載の大域照明レンダリン
グ装置。
10. The brightness distribution calculation unit calculates a brightness distribution on the surface of an object with respect to one light source, and calculates, in the calculation process, an energy propagation coefficient of the object viewed from the light source. The global illumination rendering device according to claim 5, wherein a density of the mesh division is determined according to the size.
JP04856094A 1994-03-18 1994-03-18 Global illumination rendering method and apparatus Expired - Fee Related JP3181464B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04856094A JP3181464B2 (en) 1994-03-18 1994-03-18 Global illumination rendering method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04856094A JP3181464B2 (en) 1994-03-18 1994-03-18 Global illumination rendering method and apparatus

Publications (2)

Publication Number Publication Date
JPH07262405A JPH07262405A (en) 1995-10-13
JP3181464B2 true JP3181464B2 (en) 2001-07-03

Family

ID=12806780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04856094A Expired - Fee Related JP3181464B2 (en) 1994-03-18 1994-03-18 Global illumination rendering method and apparatus

Country Status (1)

Country Link
JP (1) JP3181464B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102502449B1 (en) * 2015-10-05 2023-02-22 삼성전자주식회사 Device and method to display illumination
JP6202118B2 (en) 2016-03-09 2017-09-27 日本電気株式会社 Drawing apparatus, drawing method and program
CN113671476B (en) * 2021-07-27 2024-04-02 杭州电子科技大学 Novel passive millimeter wave imaging method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Lischinsky D 他,"Combining Hierarchical Radiosity and Discontinuity Meshing",PROCEEDINGS COMPUTER GRAPHICS,(1993),p199−208

Also Published As

Publication number Publication date
JPH07262405A (en) 1995-10-13

Similar Documents

Publication Publication Date Title
CN111105491B (en) Scene rendering method and device, computer readable storage medium and computer equipment
CN112270756B (en) Data rendering method applied to BIM model file
US6184891B1 (en) Fog simulation for partially transparent objects
CN108090947B (en) Ray tracing optimization method for 3D scene
KR101054702B1 (en) Determining Pixel Colors in Ray-traced Image Processing Systems
JP2669599B2 (en) Shadow drawing method and three-dimensional graphic computer system
US20090102844A1 (en) Method for synthesizing a virtual image by beam launching
US20070035545A1 (en) Method for hybrid rasterization and raytracing with consistent programmable shading
US6384833B1 (en) Method and parallelizing geometric processing in a graphics rendering pipeline
JPH0757117A (en) Forming method of index to texture map and computer control display system
KR102151443B1 (en) Graphics processing apparatus based on hybrid gpu architecture
US11854141B2 (en) Early release of resources in ray tracing hardware
Funkhouser Database and display algorithms for interactive visualization of architectural models
US11341708B2 (en) Graphics processing
US6366283B1 (en) Generating image data
US7133052B1 (en) Morph map based simulated real-time rendering
Haines An introductory tour of interactive rendering
Kuchkuda An introduction to ray tracing
JP3181464B2 (en) Global illumination rendering method and apparatus
CN117723266A (en) Improving efficiency of light-box testing
Měch Hardware-accelerated real-time rendering of gaseous phenomena
JP2973413B2 (en) Illuminance calculation method and display device for computer graphics
KR100372901B1 (en) Ray-tracing acceleration method using ZF-buffer
İşler et al. Fast ray tracing 3D models
JP3559336B2 (en) CG data creation device and CG animation editing device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees