JP2669599B2 - 陰影描画方法及び3次元グラフィック・コンピュータ・システム - Google Patents

陰影描画方法及び3次元グラフィック・コンピュータ・システム

Info

Publication number
JP2669599B2
JP2669599B2 JP6221761A JP22176194A JP2669599B2 JP 2669599 B2 JP2669599 B2 JP 2669599B2 JP 6221761 A JP6221761 A JP 6221761A JP 22176194 A JP22176194 A JP 22176194A JP 2669599 B2 JP2669599 B2 JP 2669599B2
Authority
JP
Japan
Prior art keywords
loop
image
light
shadow
data
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 - Lifetime
Application number
JP6221761A
Other languages
English (en)
Other versions
JPH0896161A (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP6221761A priority Critical patent/JP2669599B2/ja
Priority to US08/527,316 priority patent/US5808620A/en
Priority to EP95306537A priority patent/EP0702333A3/en
Publication of JPH0896161A publication Critical patent/JPH0896161A/ja
Application granted granted Critical
Publication of JP2669599B2 publication Critical patent/JP2669599B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

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

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータ・グラフ
ィックスに関し、より詳しくは3次元コンピュータ・グ
ラフィックスにおける陰影処理に関する。
【0002】
【従来の技術】コンピュータ・グラフィックスにおい
て、より現実性の高い画像を生成するのには陰影の表示
は重要である。この陰影も、光線が完全に遮断される空
間を示す本影空間(umbra)と、光線の一部が放射される
空間を示す半影空間(penumbra)の両方がより写実的に表
現されると、より現実性が高まる。
【0003】このような現実性の高い画像生成に用いら
れる手法としてラジオシティ法がある。このラジオシテ
ィ法は、熱工学の理論に基づき、拡散面の相互反射を考
慮した放射照度場を求めるアルゴリズムである。ラジオ
シティとは、光源から直接受けた光と相互反射によって
間接的に受けた光を、受光面が放射する、単位時間、単
位面積当たりのエネルギーである。このラジオシティ法
では、受光面をメッシュに分割して計算を行うが、この
メッシュ分割は計算量、記憶容量、画質の観点から非常
に重要である。当然メッシュの数が増えれば計算量やデ
ータ量が増加し、メッシュの数を減らせば画質の低下は
避けられない。
【0004】このラジオシティ法を実際に適用するにあ
たり、プログレッシブ・レファインメント・ラジオシテ
ィ法(progressive refinement radiosity)において、輝
度変化の大きい部分のメッシュのみを動的に再分割す
る、アダプティブ・メッシング・アルゴリズム(adaptiv
e meshing)が提案された。M.F.Cohen, S.E.Chen,J.R.Wa
llen, and D.P.Greenberg,"A Progressive Refinement
Approach for realisticImage Systhesis",Computer Gr
aphics,Vol.22,No.4,pp75-84,1988、A.T.Campbell III
and D.Fussell,"Adaptive Mesh Generation for Global
Diffuse Illumination", Computer graphics, Vol.24,
No.4,pp155-164,1990、D.R.Baum, S.Mann, P.S.Kevin,
and J.M.Winget,"Making Radiosity Usable: Automatic
Preprocessing and Meshing Techniques for the Gene
ration of Accurate Radiosity Solutions",Computer G
raphics,Vol.25,No.4,pp51-69,1990を参照のこと。
【0005】しかしこの方法では、以下のような欠点が
ある。(1)分割する際のしきい値である輝度値の差や、
最小メッシュ幅を指定すること自体が困難であり、ユー
ザが試行錯誤しなければならない。また、(2)生成され
るメッシュの数がいくらかになるか予想がつかないため
に、メモリの制約を受ける。(3)領域ごとに光源情報を
持っていないため、分割を行うたびに輝度計算を行う必
要がある。(4)メッシュの大きさを変更するごとにサン
プリング誤差が生じるので、生成される画像に大きな欠
陥を残しやすい。(5)シャドウ・リーク(shadow leak)、
ライト・リーク(light leak)を防止することができな
い。(6)点光源や非常に面積の小さい光源には、大量の
メッシュが必要となる。
【0006】上記の問題を解決するために、輝度が不連
続であることを表す境界線、すなわち輝度不連続線(dis
continuity edge)を受光面において求め、これに沿って
メッシュを生成することにより、不連続な輝度分布を鮮
明に表現する手法が提案された。D.Linschinski,F.Tamp
ieri, and D.P.Greenberg,"Combining Hierachical Rad
iosity and Discontinuity Meshing", Computer Graphi
cs,Vol.27,No.3,1993を参照のこと。
【0007】この輝度不連続線とは、光源と遮閉面がつ
くるがつくる輝度不連続面(critical surface)と、受光
面の交線の集合で与えられる。輝度不連続面は、光源の
頂点と遮閉面の辺、又は光源の辺と遮閉面の頂点で形成
される多角形である。たとえば、図15において、受光
面(一般的には受光物体(receiver))の輝度が不連続と
なる線分は、光源の各頂点s1,s2,s3,s4と、遮閉面
(occluder)の各辺o1o2,o2o3,o3o4,o4o1を含む
平面との交線、または光源の各辺s1s2,s2s3,s3s
4,s4s1と、遮閉面の各頂点o1,o2,o3,o4,を含む平
面の交線として得ることができる。
【0008】このようにして輝度不連続線を用いれば、
不連続な輝度分布を明瞭にでき、メッシュに分割するの
に有用な情報を得ることができる。しかし、上述の論文
では、輝度不連続線を保持するためのデータ構造として
BSP(Binary Space Partition) Treeを用いてい
る。このBSP法は、図16に示すように、輝度不連続
線が1本生じる度に受光面を2分してしまうので、最終
的にかなり多くの小片が生成され、データ量が増大しや
すい。また、生成される形状は細長くなりがちであるか
ら、レンダリング時に不自然な影を生じやすくなる。こ
れは、輝度計算時に誤差が生じやすいことと、レンダリ
ングする際に線形補間で色補間を行うためである。
【0009】
【発明が解決しようとする課題】よって、本発明の目的
は上述した欠点を解決するものであり、輝度不連続線が
形成する領域を利用することにより、ラジオシティ法の
ためのメッシュ生成を効率化し、ラジオシティ法のレン
ダリングを高速化することである。
【0010】他の目的は、メッシュ生成の効率化を図る
ことにより、データ量の適正化を行うことである。
【0011】このような目的を達成することにより、よ
り現実感のあるコンピュータ・グラフィックスによる画
像を提供することである。
【0012】
【課題を解決するための手段】
【0013】上記の目的を達成する本発明は、表示装置
を有する3次元コンピュータ・グラフィック・システム
において、表示装置により表される、少なくとも1の光
源の像から発せられる仮想的な光線を少なくとも1の遮
閉面の像が遮ることにより受光面の像上に生ずる陰影の
像を描画する方法であり、(a)光線が遮閉面の像によ
り完全に遮断される、受光面の像上の部分を区切る仮想
的な輝度不連続線を表すデータと、光線の一部分が放射
される、受光面の像上の部分を区切る輝度不連続線を表
すデータとを生成するステップと、(b)受光面の像
を、輝度不連続線を構成する各線分のデータにより仮想
的に分割し、分割することにより形成された各領域を、
それらを囲う前記各線分のループに関するデータとして
保持するステップと、(c)各領域ごとに、光源ごとの
照射状態を調査、保持するステップと、(d)照射状態
を参照して、各領域を仮想的にメッシングするステップ
と、(e)照射状態を参照して、メッシングにより生成
された各エレメントの輝度値を計算し、陰影の付された
画像データを生成するステップと、(f)生成された画
像データを表示装置に表示するステップとを含む。この
ように、領域ごとに、光源ごとの照射状態を保持してお
くと、後のメッシング及び輝度計算の際に必要なデータ
量及び計算量を減少させることができる。
【0014】この方法においてステップ(a)は、光線
が前記遮閉面の像により完全に遮断される、仮想的な空
間である本影空間を規定する影多面体のデータ、及び光
線の一部分が放射される、仮想的な空間である半影空間
を規定する影多面体のデータを生成し、その影多面体の
データを用いて、受光面の像上に生ずる、仮想的な輝度
不連続線を表すデータを生成するようにしてもよい。こ
のようにすると、より高速な描画が可能になる。
【0015】また、この方法においてステップ(b)
は、(g)生成された輝度不連続線を構成する各線分を
登録するステップと、(h)線分ごとに、その線分を1
の方向に経由して成るループと、1の方向の逆方向に経
由して成るループとを生成するステップとを含んでもよ
い。このようにして、ループ作成漏れを防止しつつ、簡
単にループを生成することができる。
【0016】さらに、ステップ(g)は、登録された各
線分ごとに、1の方向と1の方向の逆方向とにつきフラ
グを設定するステップをさらに含んでもよい。このよう
にすると、チェックが簡単に行える。
【0017】またステップ(h)は、1の方向に経由し
て成るループを仮想的に生成した場合には、1の方向に
対するフラグをセットし、1の方向と逆方向に経由して
成るループを仮想的に生成した場合には、1の方向の逆
方向に対するフラグをセットするステップをさらに含ん
でもよい。
【0018】ステップ(b)は、1のループ内部に他の
ループが存在するかを判断するステップと、1のループ
内部に他のループが存在しない場合には、1のループに
関するデータにて領域を保持し、1のループ内部に他の
ループが存在する場合には、1のループに関するデータ
と1のループとは逆の方向に回る他のループに関するデ
ータにて領域を保持するステップとをさらに含んでもよ
い。このようにすると、簡単に受光面上に形成された領
域を把握することができる。
【0019】上述の照射状態は、光源と遮閉面の組み合
わせから、本影空間に含まれる状態、半影空間に含まれ
る状態、照射されている状態とに分けられる。このよう
にすると、1の光源についき2ビットで情報を保持する
ことができ、データ量を減らすことができる。
【0020】上述したステップを実行する3次元コンピ
ュータ・グラフィック・システムであっても、上述した
目的は達成することができる。
【0021】
【実施例】図1に本発明が実施される装置を示す。処理
装置1は、メイン・メモリ3に接続されており、メイン
・メモリ3に格納されたプログラム及びデータを用いて
演算を行う。入出力装置7は、キーボード、マウス、プ
リンタなどを含み、処理装置1等に対する命令、データ
を入力し、必要なデータなどを出力する。記憶装置5
は、メイン・メモリ3等にロードするためのデータを格
納しておくためのハードディスク等の装置である。ここ
ではデータとして、光源、遮閉面、受光面等の位置情
報、光源の照射情報等も格納されている。このシステム
には、表示装置11に高速に描画するためのグラフィッ
ク・サブシステム9が接続されており、処理装置1及び
メイン・メモリ3にロードされたプログラム及びデータ
と共動して、表示装置11への描画を行う。
【0022】図2に本発明の処理装置1の詳細を示す。
図示のように、影多面体生成部13、輝度不連続線算出
部15、輝度不連続線ループ形成部17、光源状況管理
部19、メッシュ形成部21、画像生成部23の6つの
大きな部分に分けることができ、それぞれ後に述べる動
作を行う。
【0023】すなわち、図3に示すアルゴリズムに従
う。まず、影多角形生成部13にて表示画像に関連する
遮閉面ごとに影多角形を生成する(ステップ33)。影
多角形については後に述べる。この後、輝度不連続線算
出部15にて、受光面ごとに輝度不連続線を算出する
(ステップ39)。輝度不連続線が算出されると、受光
面がいくつかの領域に分割されるので、その領域を把握
するために、輝度不連続線ループ形成部17にて輝度不
連続線ループをつくる(ステップ41)。そして、ルー
プにより各領域ごとに光源からの光線が照射されている
か、半影か本影か等の照射関係(照射状態)を光源状況
管理部19にて確認する(ステップ43)。ここまでで
生成されたデータを用い、メッシュ生成部21にてメッ
シュに分割し(ステップ47)、分割されたメッシュの
エレメントごとに画像生成に必要な計算を画像生成部2
3にて行う(ステップ49)。
【0024】なお、簡略化のため、本発明で扱うのは光
源、遮閉面、受光面を凸多角形(convex polygon)に限定
している。そのため、光源および面はそれぞれ前処理で
凸多角形に分割されているものとする。また、メッシュ
生成までの処理の間に凸多角形の形状を保つため、輝度
不連続線ループによる受光面の分割は、すべての輝度不
連続線が生成された後に一括して実行されている。
【0025】以下、上述したアルゴリズムの詳細を述べ
る。
【0026】[影多面体の生成]光源及び遮閉面を上述の
ように凸多角形に限定すると、光線が遮閉される空間は
多面体になる。この多面体を影多面体(shadow polygon)
という。例えば、図4の遮閉面と受光面の間にある多角
形(点線にて表示)である。上述のように輝度不連続線
は複数あるが、特に影多面体を構成する面と受光面との
交線である輝度不連続線は重要である。なぜなら、本影
空間を表す影多面体と、半影空間を表す影多面体を求
め、その多面体を構成する面と受光面との交線により、
受光面上の影のようすが明らかになるからである。ま
た、このようにすると、輝度不連続線のデータ量と処理
量を効率化することができる。
【0027】そこで、本影空間を表す影多角形を求め
る。まず、遮閉面の辺を1つ選択し、これと光源の各頂
点を含む平面を形成する。例えば、図5を参照して、遮
閉面の辺o1o2を選択する。この辺と光源の各頂点s1,
s2・・を含む平面を各々生成する。この生成された平
面のうち、遮閉面とのなす角が最小である平面を選択す
る。この平面が本影空間を表す影多面体の1つの面とな
る。遮閉面の辺o2o3,o3o4,o4o1の各々について同
様の操作を行い、生成された各面の交線で切ることによ
り、図6のような本影空間を表す角柱が生成される。
【0028】次に半影空間を表す影多角形を求める。本
影空間の時と同様に遮閉面の辺を1つ選択し、これと光
源の各頂点を含む平面を形成する。しかし、生成された
平面のうち遮閉面とのなす角が最大となる平面を選択す
る。例えば、図7では平面s1o2o3とs2o2o3では、
平面s1o2o3の方がなす角が大きい。よって、平面s1
o2o3が選択される。続いて、この選択された平面s1
o2o3と隣接し、かつ平面s1o2o3となす角が最大の
ものを選択する。例えば、図8では、選択された平面s
1o2o3の線s1o3を共有する面の中で、面s1o3s4が
平面s1o2o3となす角が最大であり、選択される。以
下同様になす角が最大の隣接する平面を順次選択するこ
とにより、平面群の凸包(convex hull)を形成すること
ができる(図9参照)。この凸包は、半影空間を表す角
柱に相当する。このような計算を図2における影多面体
生成部13にて行う(ステップ35)。
【0029】なお、図15で示した方法にて生成される
輝度不連続面の数は、光源及び遮閉面のそれぞれの辺の
数をN1,N2とすると、2N1N2であるのに対し、影多
面体を用いる方法では、N1+2N2であり、その処理量
及びデータ量において効率的であることがはっきりす
る。なお、この影多面体を用いる方法は、N.Chin, and
S.Feiner,"Near Real-Time Shadow Generation Using B
SP Trees",Computer Graphics,Vol.23,No.3,pp.99-106,
1989に記載されている。
【0030】[輝度不連続線の算出]前のステップの説明
でも述べたように、受光面上の輝度不連続線は、本影空
間を表す影多角形と受光面の交線、半影空間を表す影多
角形と受光面の交線を求めることにより得られる。本発
明では影多角形の各辺(図9参照)と受光面との交点を
求め、それを結ぶことにより、交線を求めるようになっ
ている。このような計算を図2における輝度不連続線算
出部15において行う(ステップ39)。
【0031】[輝度不連続線ループの形成]本発明では、
輝度不連続線により分割された受光面の領域を把握する
ために、輝度不連続線ループというものをつくる。ま
ず、輝度不連続線ループの生成方法を述べる。
【0032】最初に、生成された輝度不連続線を線分と
して把握し、その線分の一覧表を生成する。各線分は表
中に「前向き」と「後向き」の2つのフラグを有してお
り、ある輝度不連続線ループが作成された時にその線分
が含まれていれば、そのループの向きによって「前向
き」又は「後向き」のフラグを立てる。これによりルー
プ作成漏れを防止する。
【0033】新しいループを生成するために、輝度不連
続線の線分のうち、上記の表のフラグが立てられていな
い1つを選択する。その線分を出発点として、頂点を共
有する不連続線を順次探索する。ここで、新しい輝度不
連続線の線分を探索した場合には、その線分についてそ
の探索方向から表のフラグの一方を順次立てる。頂点を
多くの不連続線が共有する場合には、そのなす角が最小
である線分を選択し、探索を続行する。最初に選択した
線分に再び到達したら、探索をやめ、探索した輝度不連
続線群をループとして登録する。この探索を、表のすべ
てのフラグが立つまで繰り返すことにより、輝度不連続
線ループの生成が終了する。
【0034】具体例を図10を用いて説明する。最初は
(1)に示すように、点線で示されたループl1からl7
により受光面内の領域は把握されている。この状態に、
v1−v6の6つの頂点からなる新しい輝度不連続線が生
成された場合を考える。この時既存の輝度不連続線との
交点をva,vb,vc,vdとする。よって、新たに生成さ
れた線分は、v1v2,v2v3,v3va,vavb,vbv4,v4
vc,vcv5,v5vd,vdv6であり、これを図11のよう
に表に登録する。新しいループを作成するために、表に
ある線分をフラグの立てられていない方向で選択し、隣
接線分を順次選択する。例えば、線分v1v2を「前向
き」方向に選択し、順次探索すると、(3)のl1'とな
る。このループl1'は、頂点v1から探索を開始し、頂
点vaにて、なす角が最小である既存の不連続線の線分
を選択する。そして頂点vdにおいて、なす角が最小で
ある線分を選択した後に、v1に戻っている。この探索
により、新規の線分である、v1v2,v2v3,v3va,vd
v6を「前向き」に探索した。よって、この線分の「前
向き」方向に、図11の表のようにフラグが立てられ
る。(3)ではさらに線分vavbから「前向き」に探索
を開始するところが描かれているが、このように表のフ
ラグが立てられていない線分のその方向に探索をしてい
くと、(4)のようにループが描かれるようになる。
(4)では、l1'からl8'までのループがあるが、新規
の輝度不連続線との交点がなかったl4'とl5'は、
(1)のl6とl7にそれぞれ等しい。
【0035】このようにして生成されたループは、受光
面の分割時に分割された領域の外枠(Outside Loop)又は
穴(Inside Hole)を形成する。本発明では、ループ作成
時に新規に作成されたループの回転方向を求め、そのル
ープが外枠になるか、穴になるかを判別している。例え
ば(4)の場合、l2',l3',l6',l7',l8'はその各ル
ープにより受光面の領域をそのまま表しているので問題
ないが、l1'内部のl4',l5'は穴を形成している。こ
の時、l1'は「前向き」のループであったので、l4',
l5'のうちで「後向き」のループ(ここではl5')との対
により、領域を把握することとなる。そして、l4'がそ
の穴の内部の領域を表す。
【0036】このように図2の輝度不連続線ループ形成
部17による図3のステップ41の動作が実行される。
【0037】[照射関係の把握・保持]上述のように、輝
度不連続線ループを形成することにより、受光面を分割
する各領域を把握することができる。よって、この領域
ごとに影多面体との内外判定を行う。図10(4)の例
では、先に述べたように一部を除いてループごとに内外
判定を行えばよい。この処理により、各領域に、光源か
ら光線が照射されているか、一部照射されているか、全
く照射されていないか、を求めることができる。照度計
算は光源ごとに行うので、光源ごとにその領域がどのよ
うな照射関係にあるかを保持することは、計算量を減ら
すために重要である。各領域(ループ)は、すべての光
源との照射関係を状態変数として保持する。例えば、本
影である場合には3、半影である場合には2、照射され
ている場合には1、未処理の場合には0を割り当てる。
これにより1つの光源につき2ビットで済む。この保持
の例を図12に示す。
【0038】例えば、図10のようにv1−v6の6つの
頂点からなる新しい輝度不連続線が生成された場合であ
って、このv1−v6から下の部分が新たな光源による半
影であるとするならば、l2'と、l3'と、l4'と、l1'
及びl5'とにより把握される領域のデータ構造の新たな
光源の欄に2が入力されるようになる。
【0039】このようにして図2の光源状況管理部19
による図3のステップ43の動作が実行される。
【0040】[メッシュの生成]本発明では、輝度不連続
線を交差するメッシュを生成しないために、輝度不連続
線ループ形成部にて把握した各領域(ループ)ごとにメッ
シュを生成する。ところで、輝度不連続線の両側におけ
る輝度の連続性には、輝度値そのものが不連続であるD
0級と、輝度値のn(n=1,2,3・・・)階微分値
が不連続であるDn級がある。このD0級となる輝度不連
続線には、点光源によって生成される輝度不連続線や、
遮閉面を受光面に遮閉面のある辺で接するようすること
で生ずる輝度不連続線(図13参照)等があり、このよ
うな場合に、メッシュの隣接するエレメントが頂点を共
有することは好ましくない。また、面光源により遮閉面
と受光面が接することのない状態でつくられる輝度不連
続線は、輝度の連続性がDn級となるので、隣接するエ
レメントが異なる頂点を有すると、Dn級の連続性を保
てなくなる可能性がある。
【0041】よって、受光面の分割時に、D0級の輝度
不連続線上については、両側の領域に個別の辺と頂点を
与えている。Dn級の輝度不連続線については、両側の
領域の辺と頂点を共有させている。例えば図14の場
合、1の面光源により本影60と半影61が生成され、
他の点光源により領域63が生成されている。領域62
は、面光源、点光源ともに光線が照射される領域であ
り、領域60乃至62に関しては輝度の連続性があるの
でDn級の輝度不連続線により分割されている。しか
し、領域63は点光源による本影であるから、輝度の連
続性がなく、D0級の輝度不連続線であり、図示のよう
に別個の頂点、辺を与える必要がある。
【0042】このようにすると輝度の洩れ(shadow leak
及びlight leak)は生じなくなる。
【0043】実際にメッシングする際には、光源との照
射関係を参照する。一般に半影領域においては輝度の変
化が大きいので、メッシュを構成するエレメントの数を
多くして、各エレメントの大きさを小さくする。また、
本影領域や光線の照射された領域は、輝度の変化が小さ
いのでエレメントの数を減らして、各エレメントの大き
さを大きくしても何等問題ない。このようなメッシュの
大きさの制御の容易さのほか、輝度不連続線の特性とメ
ッシュ境界の整合性、歪みのないメッシュ形状といった
特徴を有するメッシングが必要である。本発明では、物
理現象の支配方程式をモデルとしてノードを配置するよ
うな方法を用いる。このノードをDelauney網を用いて接
続し、メッシュを形成する。例えば、嶋田憲司,球の最
密充填とDelauney網による曲面の自動三角形メッシュ分
割,情報処理学会グラフィックスとCAD研究報告,N
o.67,pp1−8,1994に詳細に記載されている
メッシングの方法を用いてもよい。
【0044】このようにすると、得られる画像の質を落
とすことなく、エレメントの数の増加を全体として抑え
ることができる。上述したように、図2のメッシュ形成
部21は、図3のステップ47の動作を実行する。
【0045】[画像生成] 画像生成では、直接光による輝度と間接光による輝度と
を別々に求める。しかし、直接光による影領域の判定は
照射関係の把握・保持の段階で終了しているので、半影
以外の領域に関しては容易に計算することができる。面
光源により生じる半影領域に関しては、従来からある光
線追跡法を用いてポイント・サンプリングによ求めて
もよい。また、近似解として光源状況管理部の情報のみ
で算出することもできる。
【0046】間接光計算では、光源からの放射によって
各パッチごとにフォームファクタを求め、そのパッチか
らの未放射ラシオシティを放射している。放射する単位
としてのパッチ領域と光を受け取るエレメント領域は、
輝度不連続線ループを3角形分割して用いている。パッ
チからの放射により間接光を計算する方法は、光を収集
する方法に比べ、高速に計算することができる。しか
し、使用するホームファクタは、Fiji=Fjijに示
す関係式により求めるため、精度上誤差が生じやすい。
そのため、各エレメントをヘミスフィアベースに投影
し、プレビュー時にはzバッファ法によるポイントサン
プリング、最終的な画像生成ではスキャンライン単位に
よる線サンプリングを用いて、フォームファクタを求め
ている。これは、Akio Doi,Bidirectional Radiosity A
pproach for Complex Environments,Denshi Tokyo, IEE
E Tokyo Section,No.32,pp.93-99,1993に詳細に述べら
れている。
【0047】鏡面反射は、視点からの方向に大きく依存
するため、相互反射光を求めた後に光線追跡法を使用し
ている。従来では、拡散反射成分を求める際の影の領域
を抽出していなかったため、鏡面反射成分を求める時に
影の領域に当たるかどうかをもう一度計算していた。し
かし、本発明では各領域ごとに各光源に対する影情報を
有しているので、半影領域以外、影判定を行う必要がな
い。
【0048】このように、画像生成の計算は、照射関係
がすでに分かっているために、直接光による計算が大幅
に簡略化される。上で述べない他の部分又は詳細な部分
は従来の方法を用いて計算することができるので、これ
以上は述べない。必要な場合には、Michael F. Cohen &
John R. Wallace, "RAdiosity and Realistics ImageSy
nthesis", Academic Press Professional,pp.65-130,19
93 及び、Roy Hall,"Illumination and Color in Compu
ter Generated Imagery", Springer-Verlag等を参照す
るとよい。
【0049】以上のように、図2の画像生成部23は、
ステップ49に対応する動作を行う。このようにして生
成された画像は、図1の処理装置1及びグラフィック・
サブシステム9が共動して表示装置11に表示する。
【0050】本発明は上述の実施例に限定されるもので
はなく、例えば、図1に本発明を実施する構成を示した
が、この装置構成に限定されるものではなく、別のバス
構成であっても、また処理装置を複数有してもよい。ま
た、ループを形成する際に「前向き」と「後向き」を定
義したが、この「前向きは」「時計回り」でも「反時計
回り」でもよい。また、穴のあいた領域を把握する際
に、外枠を「前向き」のループ、内枠を「後向き」とし
た例を示したが、この関係も反対向きであればどちらで
もよい。また、光源と領域の照射関係を、本影=3、半
影=2、照射=1、未処理=0で表す例を示したが、こ
れは本影=0、半影=1、照射=2、未処理=3でも、
他の割り当てでもよい。影多面体の生成方法、輝度不連
続線の生成方法、メッシングの方法、画像生成の方法
は、上述の方法のほか、高速で照射関係を考慮可能な方
法であれば、置換可能である。
【0051】
【発明の効果】以上述べたように、輝度不連続線により
形成された領域ごとに、光源ごとの照射状態を保持する
ことにより、ラジオシティ法のためのメッシュ生成を効
率化し、ラジオシティ法のレンダリングを高速化するこ
とができた。
【0052】また、メッシュ生成の効率化を図ることに
より、データ量の適正化を行うこともできた。
【0053】他の効果は、明細書全体に記載されたとお
りである。
【図面の簡単な説明】
【図1】本発明の全体構成のブロック図である。
【図2】本発明の処理装置1のブロック図である。
【図3】本発明の高レベルのフローチャートである。
【図4】影多面体の例を示した図である。
【図5】本影空間を表す影多面体の形成方法を説明する
ための図である。
【図6】本影空間を表す影多面体の形成方法を説明する
ための図である。
【図7】半影空間を表す影多面体の形成方法を説明する
ための図である。
【図8】半影空間を表す影多面体の形成方法を説明する
ための図である。
【図9】半影空間を表す影多面体の形成方法を説明する
ための図である。
【図10】輝度不連続線ループの形成方法を説明するた
めの図である。
【図11】輝度不連続線ループの形成方法を説明するた
めの図である。
【図12】光源と領域の照射関係を示す図である。
【図13】D0級輝度不連続線を説明する図である。
【図14】D0級及びDn級輝度不連続線を説明する図で
ある。
【図15】輝度不連続面、輝度不連続線を説明する図で
ある。
【図16】従来の輝度不連続線を保持方法を説明する図
である。
【符号の説明】
1 処理装置 3 メイン・メモリ 5 記憶装置 7 入出力装置 9 グラフィック・サブシステム 11 表示装置 13 影多面体生成部 15 輝度不連続線算出部 17 輝度不連続線ループ形成部 19 光源状況管理部 21 メッシュ形成部 23 画像生成部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 嶋田 憲司 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 東京基礎研 究所内 (72)発明者 伊藤 貴之 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 東京基礎研 究所内 (56)参考文献 特開 平4−222076(JP,A) 特開 平4−317185(JP,A)

Claims (13)

    (57)【特許請求の範囲】
  1. 【請求項1】表示装置を有する3次元コンピュータ・グ
    ラフィック・システムにおいて、 前記表示装置により表される、少なくとも1の光源の像
    から発せられる仮想的な光線を少なくとも1の遮閉面の
    像が遮ることにより受光面の像上に生ずる陰影の像を描
    画する方法であって、(a)前記光線が前記遮閉面の像
    により完全に遮断される、前記受光面の像上の部分を区
    切る仮想的な輝度不連続線を表すデータと、前記光線の
    一部分が放射される、前記受光面の像上の部分を区切る
    輝度不連続線を表すデータとを生成するステップと、
    (b)前記受光面の像を、前記輝度不連続線を構成する
    各線分のデータにより仮想的に分割し、分割することに
    より形成された各領域を、それらを囲う前記各線分のル
    ープに関するデータとして保持するステップと、(c)
    前記各領域ごとに、前記光源ごとの照射状態を調査、保
    持するステップと、(d)前記照射状態を参照して、前
    記各領域を仮想的にメッシングするステップと、(e)
    前記照射状態を参照して、前記メッシングにより生成さ
    れた各エレメントの輝度値を計算し、陰影の付された画
    像データを生成するステップと、(f)生成された前記
    画像データを前記表示装置に表示するステップとを含む
    陰影描画方法。
  2. 【請求項2】表示装置を有する3次元コンピュータ・グ
    ラフィック・システムにおいて、 前記表示装置により表される、少なくとも1の光源の像
    から発せられる仮想的な光線を少なくとも1の遮閉面の
    像が遮ることにより受光面の像上に生ずる陰影の像を描
    画する方法であって、(a)前記光線が前記遮閉面の像
    により完全に遮断される、仮想的な空間である本影空間
    を規定する影多面体のデータ、及び前記光線の一部分が
    放射される、仮想的な空間である半影空間を規定する影
    多面体のデータを生成し、その影多面体のデータを用い
    て、前記受光面の像上に生ずる、仮想的な輝度不連続線
    を表すデータを生成するステップと、(b)前記受光面
    の像を、前記輝度不連続線を構成する各線分のデータに
    より仮想的に分割し、分割することにより形成された各
    領域を、それらを囲う前記各線分のループに関するデー
    タとして保持するステップと、(c)前記各領域ごと
    に、前記光源ごとの照射状態を調査、保持するステップ
    と、(d)前記照射状態を参照して、前記各領域を仮想
    的にメッシングするステップと、(e)前記照射状態を
    参照して、前記メッシングにより生成された各エレメン
    トの輝度値を計算し、陰影の付された画像データを生成
    するステップと、(f)生成された前記画像データを前
    記表示装置に表示するステップとを含む陰影描画方法。
  3. 【請求項3】前記ステップ(b)が、(g)前記輝度不
    連続線を構成する各線分を登録するステップと、(h)
    前記線分ごとに、その線分を1の方向に経由して成るル
    ープと、前記1の方向の逆方向に経由して成るループと
    を仮想的に生成するステップとを含む請求項1又は2記
    載の陰影描画方法。
  4. 【請求項4】前記ステップ(g)が、 登録された前記各線分ごとに、前記1の方向と前記1の
    方向の逆方向とにつきフラグを設定するステップをさら
    に含む請求項3記載の陰影描画方法。
  5. 【請求項5】前記ステップ(h)が、 前記1の方向に経由して成るループを仮想的に生成した
    場合には、前記1の方向に対するフラグをセットし、前
    記1の方向と逆方向に経由して成るループを仮想的に生
    成した場合には、前記1の方向の逆方向に対するフラグ
    をセットするステップをさらに含む請求項4記載の陰影
    描画方法。
  6. 【請求項6】前記ステップ(b)が、 1のループ内部に他のループが存在するかを判断するス
    テップと、 前記1のループ内部に他のループが存在しない場合に
    は、前記1のループに関するデータにて領域を保持し、
    前記1のループ内部に他のループが存在する場合には、
    前記1のループに関するデータと前記1のループとは逆
    の方向に回る前記他のループに関するデータにて領域を
    保持するステップとをさらに含む請求項1又は2記載の
    陰影描画方法。
  7. 【請求項7】前記照射状態が、本影空間に含まれる状
    態、半影空間に含まれる状態、照射されている状態を含
    む請求項1又は2記載の陰影描画方法。
  8. 【請求項8】少なくとも1の光源の像から発せられる仮
    想的な光線を少なくとも1の遮閉面の像が遮ることによ
    り受光面の像上に生ずる陰影の像を計算して、表示装置
    に表す3次元グラフィック・システムであって、(a)
    前記光線が前記遮閉面の像により完全に遮断される、前
    記受光面の像上の部分を区切る仮想的な輝度不連続線を
    表すデータと、前記光線の一部分が放射される、前記受
    光面の像上の部分を区切る輝度不連続線を表すデータと
    を生成する手段と、(b)前記受光面の像を、前記輝度
    不連続線を構成する各線分のデータにより仮想的に分割
    し、分割することにより形成された各領域を、それらを
    囲う前記各線分のループに関するデータとして保持する
    手段と、(c)前記各領域ごとに、前記光源ごとの照射
    状態を調査、保持する手段と、(d)前記照射状態を参
    照して、前記各領域を仮想的にメッシングする手段と、
    (e)前記照射状態を参照して、前記メッシングにより
    生成された各エレメントの輝度値を計算し、陰影の付さ
    れた画像データを生成する手段と、(f)生成された前
    記画像データを前記表示装置に表示する手段とを有する
    3次元コンピュータ・グラフィック・システム。
  9. 【請求項9】前記手段(a)が、 前記光線が前記遮閉面の像により完全に遮断される、仮
    想的な空間である本影空間を規定する影多面体のデー
    タ、及び前記光線の一部分が放射される、仮想的な空間
    である半影空間を規定する影多面体のデータを生成する
    手段を含む請求項8記載の3次元コンピュータ・グラフ
    ィック・システム。
  10. 【請求項10】前記手段(b)が、(g)生成された前
    記輝度不連続線を構成する各線分を登録する手段と、
    (h)前記線分ごとに、その線分を1の方向に経由して
    成るループと、前記1の方向の逆方向に経由して成るル
    ープとを仮想的に生成する手段とを有する請求項8又は
    9記載の3次元コンピュータ・グラフィック・システ
    ム。
  11. 【請求項11】前記手段(g)が、 登録された前記各線分ごとに、前記1の方向と前記1の
    方向の逆方向とにつきフラグを設定する手段をさらに有
    する請求項10記載の3次元コンピュータ・グラフィッ
    ク・システム。
  12. 【請求項12】前記手段(h)が、 前記1の方向に経由して成るループを仮想的に生成した
    場合には、前記1の方向に対するフラグをセットし、前
    記1の方向と逆方向に経由して成るループを仮想的に生
    成した場合には、前記1の方向の逆方向に対するフラグ
    をセットする手段をさらに有する請求項11記載の3次
    元コンピュータ・グラフィック・システム。
  13. 【請求項13】前記手段(b)が、 1のループ内部に他のループが存在するかを判断する手
    段と、 前記1のループ内部に他のループが存在しない場合に
    は、前記1のループに関するデータにて領域を保持し、
    前記1のループ内部に他のループが存在する場合には、
    前記1のループに関するデータと前記1のループとは逆
    の方向に回る前記他のループに関するデータにて領域を
    保持する手段とをさらに有する請求項8又は9記載の3
    次元コンピュータ・グラフィック・システム。
JP6221761A 1994-09-16 1994-09-16 陰影描画方法及び3次元グラフィック・コンピュータ・システム Expired - Lifetime JP2669599B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP6221761A JP2669599B2 (ja) 1994-09-16 1994-09-16 陰影描画方法及び3次元グラフィック・コンピュータ・システム
US08/527,316 US5808620A (en) 1994-09-16 1995-09-12 System and method for displaying shadows by dividing surfaces by occlusion into umbra penumbra, and illuminated regions from discontinuity edges and generating mesh
EP95306537A EP0702333A3 (en) 1994-09-16 1995-09-15 Shadow drawing method and three-dimensional graphic calculator system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6221761A JP2669599B2 (ja) 1994-09-16 1994-09-16 陰影描画方法及び3次元グラフィック・コンピュータ・システム

Publications (2)

Publication Number Publication Date
JPH0896161A JPH0896161A (ja) 1996-04-12
JP2669599B2 true JP2669599B2 (ja) 1997-10-29

Family

ID=16771795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6221761A Expired - Lifetime JP2669599B2 (ja) 1994-09-16 1994-09-16 陰影描画方法及び3次元グラフィック・コンピュータ・システム

Country Status (3)

Country Link
US (1) US5808620A (ja)
EP (1) EP0702333A3 (ja)
JP (1) JP2669599B2 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3208358B2 (ja) * 1997-09-05 2001-09-10 インターナショナル・ビジネス・マシーンズ・コーポレーション メッシング方法及びコンピュータ
US6295066B1 (en) * 1997-09-12 2001-09-25 Hitachi, Ltd. Method for generating virtual three-dimensional space
US6411297B1 (en) 1999-03-03 2002-06-25 Discreet Logic Inc. Generating image data
US6496597B1 (en) 1999-03-03 2002-12-17 Autodesk Canada Inc. Generating image data
US6487322B1 (en) 1999-03-03 2002-11-26 Autodesk Canada Inc. Generating image data
US6313842B1 (en) 1999-03-03 2001-11-06 Discreet Logic Inc. Generating image data
US6366283B1 (en) * 1999-03-03 2002-04-02 Discreet Logic Inc. Generating image data
US20030063383A1 (en) * 2000-02-03 2003-04-03 Costales Bryan L. Software out-of-focus 3D method, system, and apparatus
AUPQ691100A0 (en) * 2000-04-14 2000-05-11 Lim, Dr Hong Lip Improvements to 3d graphics
JP3625184B2 (ja) 2000-09-25 2005-03-02 コナミ株式会社 ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置
KR100454070B1 (ko) * 2001-01-31 2004-10-20 학교법인 중앙대학교 컴퓨터를 이용한 그림자를 포함한 실시간 툰 렌더링 방법
TWI268454B (en) * 2003-12-23 2006-12-11 Inst Information Ind Interactive 3D-scenery light illumination method and its system thereof calculating the light source energy received by each triangular lattice to improve the imaging quality
US7567248B1 (en) * 2004-04-28 2009-07-28 Mark William R System and method for computing intersections between rays and surfaces
US7596763B2 (en) * 2005-10-24 2009-09-29 International Business Machines Corporation Automatic 3D object generation and deformation for representation of data files based on taxonomy classification
US20080002889A1 (en) * 2006-06-02 2008-01-03 Kenji Shimada Systems and methods for extracting an approximated medial surface from a thin-wall solid
KR100849693B1 (ko) * 2006-12-28 2008-07-31 엔에이치엔(주) 정적 그림자 생성 방법 및 정적 그림자 생성 시스템
US7817823B1 (en) * 2007-04-27 2010-10-19 Adobe Systems Incorporated Calculating shadow from area light sources using a spatially varying blur radius
US7982734B2 (en) * 2007-08-01 2011-07-19 Adobe Systems Incorporated Spatially-varying convolutions for rendering soft shadow effects
US7970237B2 (en) * 2007-08-01 2011-06-28 Adobe Systems Incorporated Spatially-varying convolutions for rendering glossy reflection effects
CN101127127B (zh) * 2007-09-29 2011-07-27 腾讯科技(深圳)有限公司 阴影绘制方法及渲染装置
JP5034841B2 (ja) * 2007-10-01 2012-09-26 トヨタ自動車株式会社 設計支援装置
CN107093203A (zh) * 2010-06-30 2017-08-25 巴里·林恩·詹金斯 图形信息的基于导航的预取发送或接收的控制方法和系统
US8928662B2 (en) 2010-09-01 2015-01-06 Musco Corporation Apparatus, method, and system for demonstrating a lighting solution by image rendering
US9792724B2 (en) 2013-03-14 2017-10-17 Robert Bosch Gmbh System and method for generation of shadow effects in three-dimensional graphics
WO2016109768A1 (en) * 2014-12-31 2016-07-07 Robert Bosch Gmbh System and method of shadow effect generation for concave objects with dynamic lighting in three-dimensional graphics
US9886790B2 (en) 2013-03-14 2018-02-06 Robert Bosch Gmbh System and method of shadow effect generation for concave objects with dynamic lighting in three-dimensional graphics
KR102211142B1 (ko) * 2013-07-16 2021-02-04 삼성전자주식회사 영상 처리 장치 및 방법
US9986225B2 (en) * 2014-02-14 2018-05-29 Autodesk, Inc. Techniques for cut-away stereo content in a stereoscopic display
JP2015228186A (ja) * 2014-06-02 2015-12-17 株式会社ソニー・コンピュータエンタテインメント 画像処理装置および画像処理方法
US9262861B2 (en) * 2014-06-24 2016-02-16 Google Inc. Efficient computation of shadows
US9639976B2 (en) * 2014-10-31 2017-05-02 Google Inc. Efficient computation of shadows for circular light sources
JP6039042B1 (ja) * 2015-11-20 2016-12-07 株式会社スクウェア・エニックス 描画処理プログラム、描画処理装置、描画処理方法、発音処理プログラム、発音処理装置、及び、発音処理方法
US10740954B2 (en) 2018-03-17 2020-08-11 Nvidia Corporation Shadow denoising in ray-tracing applications
US10991079B2 (en) 2018-08-14 2021-04-27 Nvidia Corporation Using previously rendered scene frames to reduce pixel noise
US10943387B2 (en) 2018-08-30 2021-03-09 Nvidia Corporation Generating scenes containing shadows using pixel noise reduction techniques
CN110880169A (zh) * 2019-10-16 2020-03-13 平安科技(深圳)有限公司 病灶区域标注方法、装置、计算机系统及可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727581B2 (ja) * 1988-09-09 1995-03-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 図形処理装置
US5175806A (en) * 1989-03-28 1992-12-29 Computer Design, Inc. Method and apparatus for fast surface detail application to an image
US5555352A (en) * 1991-04-23 1996-09-10 International Business Machines Corporation Object-based irregular-grid volume rendering
US5572235A (en) * 1992-11-02 1996-11-05 The 3Do Company Method and apparatus for processing image data

Also Published As

Publication number Publication date
EP0702333A2 (en) 1996-03-20
US5808620A (en) 1998-09-15
JPH0896161A (ja) 1996-04-12
EP0702333A3 (en) 1996-06-12

Similar Documents

Publication Publication Date Title
JP2669599B2 (ja) 陰影描画方法及び3次元グラフィック・コンピュータ・システム
CN111105491B (zh) 场景渲染方法、装置、计算机可读存储介质和计算机设备
US11024077B2 (en) Global illumination calculation method and apparatus
US8115767B2 (en) Computer graphics shadow volumes using hierarchical occlusion culling
EP4242973A1 (en) Image processing method and related apparatus
US8593459B2 (en) Tree insertion depth adjustment based on view frustum and distance culling
US7973790B2 (en) Method for hybrid rasterization and raytracing with consistent programmable shading
US20200160587A1 (en) Systems and methods for reducing rendering latency
JP5476138B2 (ja) 変化する視野に基づいてフレーム間の光線追跡のアクセラレーション・データ構造体を更新する方法
US9508191B2 (en) Optimal point density using camera proximity for point-based global illumination
US20080192050A1 (en) Efficient and Flexible Data Organization for Acceleration Data Structure Nodes
US20080024489A1 (en) Cache Utilization Optimized Ray Traversal Algorithm with Minimized Memory Bandwidth Requirements
JP5873672B2 (ja) 仮想環境のポイントにおいて受光された光の量の推定方法
US6791544B1 (en) Shadow rendering system and method
KR101100650B1 (ko) 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법
US9811944B2 (en) Method for visualizing freeform surfaces by means of ray tracing
Moreau et al. Importance sampling of many lights on the GPU
Kolivand et al. Anti-aliasing in image based shadow generation techniques: a comprehensive survey
JP3181464B2 (ja) 大域照明レンダリング方法および装置
Simion et al. Practical gpu and voxel-based indirect illumination for real time computer games
EP3940651A1 (en) Direct volume rendering apparatus
Yoon et al. Visibility
WO2022119469A1 (en) Device and method for multi-frustum rasterization
Schertler et al. Visualization of Scanned Cave Data with Global Illumination.
Kammaje et al. Row tracing using hierarchical occlusion maps