九州大学学術情報リポジトリ
Kyushu University Institutional Repository
ミエ ノ シュカン ヒョウカ ニ モトヅク オ リモノ ノ コンピューター グラフィックス ノ ケンキュウ
卓, 炫住
九州大学芸術工学府
https://doi.org/10.15017/19758
出版情報:Kyushu University, 2010, 博士(芸術工学), 課程博士 バージョン:
権利関係:
第1章 フォトリアリスティクレンダリングの概念と反射モデル
1. フォトリアリスティクレンダリングとは 1.1光のエネルギーと放射束
1.2 双方向反射分布関数 (BRDF : Bidierectional Reflectance Distribution Function)
1.3 ローカルイルミネーション(local illumination)と
グローバルイルミネーション(global illumination)
- 5 - 1.フォトリアリスティクレンダリングとは
我々が住居している3次元の空間がカメラによる写真という2次元イメージに変わ って記録されるように、パソコンの中の仮想空間においても、3次元の場面が2次元イ メージに転換されて我々の目に見える。こういた仮想空間の転換過程をレンダリングと いう。転換過程というのは、視点と物体との間の置かれたイメージプレーン上に3次元 空間の物体を投影し、イメージプレーン上の位置の色を算出する作業を指す。算出する 作業おける物の見え方に色を限りなく近くものを作り出すことを目指しており、よりリ アリズムを追求したレンダリング技法の総称として、フォトリアリスティックレンダリ ングという言葉が用いられるようになった。
自然世界では、物体に当たって散乱した光は非常に複雑な振る舞いをする。そしてこ の光の挙動こそが、フォトリアリスティックと呼ばれる物の見え方を作り出している。
自然科学の分野では、これらの物理法則を空間座標や数式を用いたジオメトリ(幾何学 的な)モデルとして表す試みが、1950年代から行われてきた。そして、CG分野でも、
1980 年初頭から、このようなジオメトリモデルを導入したレンダリングモデルの数々
が考案されてきた。
自然科学のあらゆる分野の研究と同様に、フォトリアリスティックレンダリングの研 究分野でも、単純な現象に対して考案されたジオメトリモデルの適用範囲を、より複雑 な現象までも拡張していくという方向性がとられてきた。具体的には、まず、物体表面 上の光の反射がモデル化され、次に物体内部を通過する光の伝播の両者の特徴を併せ持 った現象がモデル化されていった。
- 6 - 1. 1 光のエネル-ギと放射束
フォトリアリスティックレンダリングのレンダリングモデルは、光のエネルギーの伝 達をシミュレートすることを考えて作り出されている。そのためモデルの記述には、光 のエネルギーをベースにした、いくつかの物理量が用いられる。
最も基本的な光を物理量としては、光のエネルギーの時間的な変化を表す放射束
(flux) :
Φ
というものが挙げられる。放射束というのは、ある領域を単位時間当たり通過する光のエネルギーのことで、その単位はワットとなっている。光源が放つ光の強さは 放射束によって表される。
Φ =
1. 1. 1 イラディアンス (irradiance)
物体表面に到達した光を表すためには、物体表面上の位置を引数とする物理量が用い られる。領域内のある特定の位置(点χ)に、単位時間あたりに流れ込む光のエネルギー は、イラディアンス(irradiance) : E(χ)と呼ばれる。イラディアンスは、単位面積当た り放射束と定義されている。ここでいう単位面積(dA)とは、点 χ の法線方向に垂直な 微小面の面積を示している。
E(χ) =
- 7 - 1. 1. 2 ラディアンス(radiance)
人間の目が知覚する色は、人間の目の方向に飛来する光の物理量を意味する。したが って、レンダリングでは「向き」を持った光の物理量も必要となってくる。領域内のあ る位置(点 x) から、単位時間当たりに、特定の方向 に向かって流れ出る光のエネル ギーは、ラディアンス(radiance) : L(x, )と呼ばれる。
ラディアンスは、単位射影面積あたりかつ単位立体角あたりの放射束と定義されてい る (図2(a))。
L(x, ) =
ここで、単位射影面積(dA・cos ) とは、光が進む方向に垂直な平面上の単位面積 dA を、点χの法線方向に垂直な平面上に射影を示している (図 2(b))。また、単位立体角 とは、球面上の微小領域の面積を、球の半径の二乗で割ったものを示している (図3(a))。
光源からの光だけを入射光と考える場合は、点χのイラディアンスで表せる。だが、点 χには、物体表面上の他の点で反射されたうちに点χに入射する光も存在する。このよ うな光は間接光(indirect illumination)と呼ばれる。間接光まで考えると、点χのイラ ディアンスは、半球面上のあらゆる方向から入射したラディアンスを足し合わせたもの となる (図3(b))。
E(x) = Li (x , ) (n , ) d
ここで、入射角の余弦 cos は、法線ベクトルと入射方向の単位ベクトルとの内積 n・ と同値で、一般的に、コサイン項と呼ばれる。
- 8 -
N
X
d
dA・cos
(a)
N(法線)
dA dA・cos
x
(b)
図2 ラディアンスの概念
- 9 -
r
dA
0 d
(a)
Z
d
Y x
X (b)
図3 ラティアンスの定義
- 10 -
1. 2 双方向反射分布関数(BRDF : Bidierectional Reflectance Distribution Function)
物体表面で光がどのように反射されるかは、光の反射方向や物体表面の形状、物体表 面の材質などによって決まってくる。また、光が反射される様子は、どの方向からそれ を見るかによっても変わってくる。このように、反射は、複数の要素に依存しているた め、これらの要素を変数とする関数によって、光の反射の特徴を表すことができる。物 体表面からの反射現象をうまくモデル化するために考え出されたのが、BRDFという関 数である。
BRDFは、特定の物体表面における光の反射の特徴を表し、入射した光のどれだけが 反射されるかを表す関数によって定義されている。この関数は、入射方向と反射方向の 双方向(bidirectional)に対する比率として名づけられた6)。BRDF は、球座標で定義さ れ、(θr,φr)方向の放射輝度(W/m2)の,(θi,φi)方向からの放射照明(W/m2)に対する 比として定義される (図4)。
BRDFは、以下の式によって表される。
ρbd(θ
r,φr, θi,φi) =ここで、Li(θi,φi)は、光源ベクトルL方向から立体角dωiで入射した放射照明、Lr(θ
r,φr)は視点ベクトルV方向に反射される放射輝度である。
- 11 -
Lr(θr,φr)
z
Li(θi,φi) θi
θr
y
dωi
φr
x
φi
図4 BRDF 座標
- 12 -
1. 3 ローカルイルミネーションとグローバルイルミネーション
フォトリアリスティックレンダリングでは、光はその振る舞いによって、ローカルイ ル ミ ネ ー シ ョ ン(local illumination)と グ ロ ー バ ル イ ル ミ ネ ー シ ョ ン(global illumination)に分けられる。
ローカルイルミネーション(local illumination)は、物体表面に当たった光が、その交 点から反射や透過、そして物体面から物体内部の入った光が再び物体表面の外部に出て いく現象をモデル化する。ローカルイルミネーション(local illumination)とは、対照的 に、グローバルイルミネーション(global illumination)というのは、物体表面に到達す るまでの挙動をモデル化するのをいう。現実の世界では、物体表面に伝播して、物体表 面上の他の点にも影響を及ぼすため、グローバルイルミネーション用語は、間接光の影 響まで考慮したレンダリング方法のことを指して用いられる場合も多い。
- 13 -
1. 3. 1 ローカルイルミネーション(local illumination)
ローカルイルミネーションでは、Empirical model とPhysical model に分けられる。
Empirical modelは、物体表面で起きる光の反射作用について、二つの方法によって区
別される。光の計算を角度だけを用いて計算する方法と任意の数値を基準にして計算す る方法である。このように計算するため、得られた結果は、実際の状況と必ずしも一致 しない。一方、Empirical modelとは対照的にPhysical modelは、物理的な特徴をベ ースにしたモデルである。物体を拡大すると表面に微小な凸凹がある。微小面に反射す る光の一部は、反射した後に、隣の微小面によって遮蔽される。この現象は Masking と呼ばれる (図 5(a))。また、反射する光が反射する前に隣の微小面によって遮蔽され て影になる現象はShadowingと呼ばれる (図5(b))。このように実際の表面での光反射 をより正確にモデル化するため、マイクロファセットが導入された。このモデルは光の エネルギーの正確な値を扱う理論的なモデルであるため、光の挙動をより正確に計算す ることができ、映像のリアリティを高められる。Empirical model としては、phong model, Lambertian model, Fresnel model などがあり、Physical modelの代表的な モデルとしては、Blinn model , Torrance-Sparrow model, Cook-Torrance model な どが挙げられる。
- 14 - Masking (a)
Shadowing (b)
図5 微小面のMasking とShadowing
- 15 - 1. 3. 1. 1 Empirical model
(a) ランバートモデル(Lambertian model)
ランバートの反射は、拡散モデル(diffuse model) として、半球面上のあらゆる方向 へ均一に反射され、反射される光の割合が光の入射方向の量と反射方向の量は一定な値 をとる。したがって、ランバート反射を表す BRDF は位置だけを変数とする関数とな る (図6)。ランバートのBRDFはディフュ-ズリフレクタンス(diffuse reflectance)と いう任意の光源からの入射項と任意の視方向の比率で表わされる7)。したがってランバ ートを表すBRDFは位置だけを変数とする関数(Diffuse Reflectance :
ρ
d (χ) )によ って表される。
ƒ(θ
iφ
iθ
rφ
r) =
ここで、ρd (χ)とは、入射した光の量と反射された光の量の比を表す。しかし、ラン
バートのBRDF は入射方向や反射方向には存在しないので、実際的な物体の反射モデ
ルとしては不適合である。その不適合性を証明する研究は多くなされてきた。
- 16 -
図6 ランバート拡散反射
- 17 - (b) Fresnel model (フルネル反射)
光を波動と考えて、物体表面(空気と物体内部との境界)での光の挙動が入射角 と屈 折角 を用いて算出される。入射角と反射角の関係は、物体外部の屈折率 と物体表 面内部の屈折率 を用いて表される (図7)。
=
フルネル反射 を1から引いたものが入射した放射束と物体表面を透過した放射束 との比を表しており、フルネルトラスミッタンス(Fresnel transmission)という。
t
= 1 -
フルネル反射は、本質的に鏡面反射に対して定義されているが、これを拡散反射に拡 張することもできる。各入射方向に対するフルネル反射と入射角のコサイン項との積を 半球面のあらゆる方向にわたって足し合わせたものがフルネル拡散となる。
= ( n, ・
′) ( ・
′) d
′- 18 -
N
1
2
外部屈折率
内部屈折率
2
図7 光の反射と屈折率
- 19 - (c) Phong model
Phong 反射は、経験に基づくモデルであって、光の相互作用に物理的な説明に基づ くものではなく、非公式な観察によるものである8)。一般的なレンダリング方程式をよ り単純化して扱うことができる。鏡面反射を算出する際に入射角度によって、鏡面の特 性が変わらなく、常に、反射角の方向に鏡面反射率が高い。
表面からの反射を三つの項目、すなわち、鏡面反射、拡散反射と環境反射に分けてい る (図8)。式は、以下のように表される。
= +
表面上の点 からそれぞれの光源への方向べクトルをL と置き、この表面における
法線を N、面上のその点において光源が完全に反射される方向を R とする。そして、
視点に向かう方向をV とする。
:鏡面反射係数。入射項に対する鏡面反射率。
: 拡散反射率係数。入射項に対する拡散反射率(Lambert反射)
: 環境反射率係数。そのシーンをレンダリングする際のすべての点にももたらされる 環境反射係数。
: その材質における光沢度であり、光沢のある点から反射する光がどのぐらい割合で 反射するかを決める。
- 20 -
Ambient Diffuse Specular Phong Reflection
図8 Phong反射
- 21 - 1. 3 . 1. 2 Physically model
(a) Torrance – Sparrow model
Off-Specularを物理的に正確にモデル化した鏡面反射モデルである。光が最も多く反
射される方向のことを一般的にピークと呼ぶ9)。Phongモデルのスペキュラ―反射では、
鏡面反射方向がピークだと仮定されているが、微小な凸凹があるため、鏡面反射方向以 外の方向ピークとなる場合も出てくる。Off-Specularとは、このような現象のことを示 す (図9)。Torrance-Sparrow モデルは、さまざまな向きの微小面(facet)の集合を想 定した。このため、Torrance-Sparrow モデルでは、微小面で起こる Masking と
Shadowing考慮して反射率を算出してBRDFとした。
Torrance-Sparrowモデルでは、次のような式によって反射光を表すことができる(図
10)。
=
=
ただし、Gは、影・遮蔽 (Shadowing/Masking) を表す幾何減衰、Fはフルネル項、
拡散反射分布はLambert となる。微小面分布Dは、すべての微小面のうちで、与えら れた方向を法線に持つ微正面が何パーセントあるかを表している。一般的には、物体表 面の法線と同じ方向の法線を持つ微正面が最も多く分布し微正面の法線方向と物体表 面方向との差が大きくなるにつれて、その分布が減尐するように、分布関数が設定され る。ここでは、分布関数として、物体表面の法線方向とハーフベクトルとが成す角度 を 変数とするガウス関数が用いられた (図11)。カーブの減衰率はパラメータCによって 決める。ガウス分布は次のように表される。
D( ) = b exp ( )
- 22 -
Microfacet
図9 Off – Specular
図10 Torrance-Sparrow モデルのBRDF座標
- 23 -
b
0
0
図11 ガウス分布
- 24 -
(b)Blinn model
Blinn モデルは、鏡面反射モデルとしてTorrance-Sparrowモデルから派生したモ
デルであり、マイクロファセットの傾きの分布関数が異なるOff -Specular導入した10)。 最初に鏡面反射を物理的にベースにしたモデルとして、物体のハイライトや光沢を表現 する。Phong モデルとの違いは、表面反射が入射角度によって変わるか、変わらない かによる。つまり、Phong モデルは、入射角度によって鏡面反射は常に反射角方向に 鏡面反射が一定しているが、Blinn モデルは、Off -Specularを導入し、入射角度によ って鏡面反射が変わることをモデル化した。拡散反射項は、Phong モデルと同様に Lambert 拡散を用いた。
Blinn モデルでは、次のような式のよって反射光を表すことができる。
ここでDは、面の傾きの分布関数であり、パラメ-タC3を用いて以下の式であらわさ れる。
D ( ) =
ここで は、物体表面の法線方向との差が大きくなるにつれて変わってくる。つまり物 体の粗さによって変化するパラメータである。
フレネル反射F は、物体の屈折率のパラメータnを用いて以下の式で表される。
F = F( ・
g =
- 25 -
減衰関数Gは、幾何学的減衰の関数であり、以下の式で表される。
G = min
ここで、Nは法線ベクトル、Lは光線ベクトル、Vは視線ベクトル、Hは、L とVの中の方向のベクトルである。
(b) Cook-Torrance model
Cook-Torrance モデルも同様に、鏡面反射モデルとして Torrance-Sparrow のマイ
クロファセットの傾きの分布関数が異なる Off - Specular を導入した 11)。ここで、
Torrance-Sparrow のモデルとの相異点は、マイクロファセット分布関数である。
Torrance-Sparrowモデルは、粗い表面に対しては、マイクロファセットの向きの分布
をガウス分布で表わしたが、Cook-Torrance モデルでは、次式で与えられるベックマ ン分布関数によって、向きの2乗平均 m に対して表す。大きなmの値は、粗い表面に 対応し、生成されるマイクロファセットの向きが広くなる12)。一方、小さなmの値は、
滑らかな表面に対し、比較的狭い分布を生成する。その結果、鋭い鏡面反射ハイライト が得られる。この方法は、表面の繊細な鏡面反射の表現ができるが、計算負荷が重くな る欠点がある。
D =
Cook-Torranceモデルの全体的鏡面反射BRDFは、以下のように表される。
・
- 26 -
ここで、Dは、ベックマン関数項で、F は、フルネル係数である。
フルネル係数Fは、
F = ・
また、Gは、幾何減衰であり、微正面による自己陰影を記述する。
G = min(1,
・ ・・
,
・ ・・
)
そして、Eは、視点へのベクトルであり、Hは半角ベクトル、Lは、光源へのベクトル、
αは、H とNとの角度である。
- 27 -
1. 3. 2 グローバルイルミネーション (global illumination)
global illuminationは、理論的には、1980年代半ばにほぼ完成された。しかし、間
接光の影響まで含めた計算は、非常に重く、このことが実用化における最大の難点とさ れてきた。そのため、global illuminationの仕組みを、より単純なイメージベースとの モデルによって近似して、計算率を上げる解法が開発された。
解法方程式としては、熱伝播の考え方を導入したラジオシティ(radiosity)とモンテカ ルロレイとレイシーング(Monto Carlo Ray Tracing : MCRT) の2つの解法がある。レ ンダリング方程式は、物体表面における光のエネルギーの保存を表している。物体表面 の上にある点から出射する光は、その点から放射される光 と、その点で反射される光 の和となる (図23(a))。ここで、 は、入射した光 の反射の和となる (図23(b))。
(x, ) = (x, ) + (x, )
そして、 は、入射した光 を用いて書き換えられる。
(x, ) = (x, ) + (x, ω ω ) (x, )( ・ )d
さらに、物体表面上のある点に入射する光は、光源、または、物体表面上の他の点に入 射する光と考えられる。また、ある点から出射した光は、物体表面上の他の点の方へ出 射した光となる(図23(c))。入射する光と出射する光の区別をとり除いて、計算すること によって物体表面上の各点から出射する光の強さが求められる。
- 28 -
(x , )
x 放射
(a)
( x, )
X 反射
(b)
S
x" L( x" ′
x x′
(c)
図12 レンダリング方程式
- 29 - 1. 3. 2. 1 ラジオシティ(radiosity)
ラジオシティ法では、まず、物体表面が拡散表面だと仮定する。そして、物体表面 を有限個の細かい領域に分割し、それぞれの領域内ではいずれの点においても、入射す る光や出射する光の強さは一定だと考えて、領域同士の間の光の受け渡しを算出する
(図 13)。各領域すなわち各点から出射する光の強さを求めることができる 13)。有限要
素は、計算精度が高いが、所要メモリや計算時間が膨大なこと、また、小領域への分割 方法によって計算算出の結果が大きく変わってくることが難点とされている。ラジオシ ティ法は拡散反射にしか適用できないため、最終レンダリングを行う際、鏡面反射の影 響を付加する場合が多い。このように、ラジオシティ法は拡散だけで構成された単純な 形状の物体に対して非常に有効だが、形状や反射特性が複雑な物体のレンダリングには あまり適しない方法である。
1. 3. 2. 2 モンテカルロレイトレイシーング(Monto Carlo Ray Tracing : MCRT) MCRTでは、光の経路を視点から逆追跡する。視点からのレイが物体表面とぶつか るたびに鏡面反射方向にレイをランダムに反射させて算出する方法である (図14)。
このようなランダムな方向への追跡をレイが光源に達するまで繰り返すことによって、
光源を発した光がたどるあらゆる経路をカバーすることが目指されている。MCRT は 拡散だけでなく、あらゆる種類の反射に対応できる。反射だけでなく、屈折、透過・分 光という現象も正確に表現できる 14)。また、複雑な形状の物体を扱うのにも適してい る。
- 30 -
図13 ラジオシティ考え方
物体
図14 MCRT 考え方
- 31 - 1. 3. 2. 3 Oren-Nayar モデル
このモデルは、ランバート拡散を一般化したモデルとして、間接光の影響まで含めて 計算するglobal illumination反射まで算出したモデルである7)。
画面で1ピクセルの中に入るような多くのマイクロファセットが物体表面に仮定されており、表 面反射に、Torrance-Sparrowモデルを導入して、それを異方性反射にまで拡張した (図 15)。マイクロファセットでは、ひとつの反射光が向き合っているファセットに再び入 射して反射するような 間接光まで考慮する。これは、間接光の算出におけるラジオシ ティ法を用いてディフュ-ズ反射をより正確にシミュレ-トしたモデルとして知られ ており、光の反射相互作用(Interreflection)という (図 16)。ここで、向き合ってい るマイクロファセットの明るさは、入射角度によって変わってくる (図17)。また、物 体表面の粗さは、ガウス分布によって表し、BRDFモデルを構築した。
Oren-Nayarモデルは、以下のような式によって反射光を表すことができる。
= cos ( A + B max ( 0,cos( - ) )sin tan )
A = 1-0.5
B B = 0.45
ここで、φi―φrは、法線と垂直な平面へ射影した照明ベクトルと視線ベクトルが成す 角度である。σ=0であれば、拡散成分はLambert反射となる。つまり、Oren-Nayar
モデルはLambertモデルを含む。
- 32 -
Pixel
Pixel
図15 マイクロファセット
S Z V
図16 光の相互作用(Interreflection)
- 33 - Source direction
Brighter Darker
Viewer direction Viewer direction
Brighter Darker Brighter Darker
図17 マイクロファセットの明るさ