研究事例の繋がり

ここでは、主要な研究分野で特に重要な論文などをピックアップしていき、それらの繋がりを作ることで、既存研究を追っていくための参考材料としたいと思います。

(試験的な試みであり、編纂者が体系的・網羅的にCG全般のバックグラウンドを有しているわけではないため、偏りや偏見が入っている恐れもありますので、あらかじめご了承ください。改善案・ご指摘を歓迎します)

レンダリング全般

   タイトル      著者      発表年   概要
The Rendering Equation James T. Kajiya1986「レンダリング方程式」とは、エネルギー保存則に基づいた、幾何光学的に表現されたシーンにおいて、複数のオブジェクトの表面点同士の間でおきる光の伝播の積分方程式である。この論文は、この方程式を提唱した画期的な論文であり、その後の写実的なレンダリング研究の基礎となった。現在のコンピュータグラフィックスにおける様々な写実的なレンダリング技法は、この方程式を解くことを試みているといって良い。このレンダリング方程式は、様々な場所の幾何表面上の点での自己放射輝度と反射放射輝度の合計輝度(ラディアンス)が他の幾何表面上の点に流れ込むのを積分し、それがその点の反射放射輝度となり、さらにその点の自己放射輝度と共にさらに他の幾何表面へと出ていくことを繰り返すものである。(レイトレーシングなどの実際の計算では、この計算をBRDFのヘルムホルツの相反性(入射と反射を入れ替えても計算が同じである)を根拠に、逆方向(視点)から計算していくことが多い)。 もっとも、この「レンダリング方程式」で全ての光学現象を扱えるわけではない。例えば、光の大気散乱現象などを扱う場合は、このレンダリング方程式では扱えず、別途「ボリュームレンダリング方程式」などの他の理論に頼ることになる。
Google Filament Documents Google2018~Googleによるリアルタイムレンダリングライブラリ「Filament」について技術資料。Filament独自の仕様だけでなく、現代のリアルタイムレンダリングのベストプラクティスが集約されており、またBRDFやIBL、光学単位についてなど、CGについて教科書的な網羅性をもつため、現代の写実的なレンダリングを学びたい人にお勧め。

PBR(物理ベースレンダリング)

いくつかの物理的な原則を満たした手法でライティング計算することにより、現実の光学特性や結果を極力再現することを志向するCGレンダリングのこと。写実的なレンダリングの実現に大きく貢献するアプローチとして、現在広く研究されている。

明確な定義が決められているわけではないが、大まかに次のような原則を満たしたものを物理ベースレンダリングということが多い。

  • 反射特性が、エネルギー保存則(反射する光のエネルギー量が、入射する光のエネルギー量を超えることはない)を満たす(マイクロファセットベースのBRDFが採用されることが多い)
  • 光の量の表現と計算過程で、不適切な取り扱い(物理的でない計算機都合のスケールやガンマ、バイアスがかかるなど)による結果の狂いがないこと

PBRを実現する際、物体表面の微細な構造をマイクロファセットモデルなどの幾何学に基づく数学モデルとして表現することで、ミクロレベルでの具体的な形状データとして保持しなくても、反射に影響する表面の微細構造を計算上で考慮することが可能になる。

また、文脈によっては、局所的な反射特性だけでなく、大域的な間接光の計算も含めて、シーン全体の光量計算が現実に即していることを物理ベースレンダリングの水準として求められることもある。

関連研究分野

  • HDR(High Dynamic Rendering)
タイトル著者発表年概要
Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs Eric Heitz2014マイクロファセット理論についての詳細な技術論文。特にG項(幾何減衰項)ついて数学的な導出を含め、フォーカスが当てられている。
Production Friendly Microfacet Sheen BRDFAlejandro Conty Estevez, Christopher Kulla2017布の材質を表現するSheen BRDFについての論文。
Real Shading in Unreal Engine 4 Brian Karis, Epic Games2013Unreal Engine 4で採用された物理ベースレンダリングについての技術資料。[Disney2012]のPrincipled BRDF を基礎とし、機能的にはそのサブセットを実装している。当時のハードウェアで大量のライト使用に耐えるだけのパフォーマンスを達成するため、計算の一部を事前計算された2Dテクスチャのルックアップとするなど、独自の工夫が多く見られる。また、マテリアルのレイヤリングを一度のシェーディング計算で可能にするため、ブレンドしたマテリアルパラメータによるシェーディング結果が、マテリアルシェーディング結果同士のブレンド結果と一致するなどの性質を満たすために、計算がリニアになるように設計されている。このUnreal Engine 4のPBR設計はFrostbiteエンジンやglTF2フォーマットのPBRなどでも参考にされている。
Physically-Based Shading at Disney Brent Burley2012それまで、鏡面反射においてはCook-Torranceモデルが世に広く受け入れられ、拡散反射についてもOren-Nayerモデルによる理論化が行われていた。しかし両者ではラフネスの範囲の取扱いが別であったり、経緯上、様々な材質(金属から非金属まで)にわたって広く統一的・汎用的に扱えるような運用なども考慮されているわけではなかった。そのような中、物理ベースBRDFをより統一的に扱いやすくした「Disney Principled BRDF」が本論文で提案された。独自の拡散反射モデル (Disney diffuse BRDF)と、GGXを一般化したGTR分布関数ベースの鏡面反射モデルを組み合わせることにより、拡散反射成分と鏡面反射成分のラフネスパラメータを同一のものとしている。また、新たにメタルネス(メタリック)というパラメータが導入され、光の屈折・透過や拡散反射がおきない「導体(金属) 」と、強い鏡面反射がおきず拡散反射が支配的な「誘電体(非金属)」が区別されるようになった。導体の鏡面反射色(F0)および誘電体の拡散反射色を、ともに基本色 (ベースカラー)として同一のデータ格納先とするなど、本論文の内容は今日におけるPBR体系の主流である「Metallic/Roughnessワークフロー」の基礎となっている。
Experimental Analysis of BRDF Models Addy Ngan, Frédo Durand, and Wojciech Matusik2005解析的に考案された数々の反射モデルについて、現実の様々な材質のBRDF計測データと比較しながら評価(対象の解析的反射モデルが、実際の素材の反射をきちんと計算上再現できるものになっているか)を行っている。
An Inexpensive BRDF Model for Physically based Rendering Christophe Schlick1994鏡面反射BRDFではCook-Torranceのマイクロファセットモデルが用いられる事が多いが、このモデルでの幾何減衰項やフレネル項などは計算コストが高価である。この論文では、これらの近似が提案されている。特に、論文中の式15で導出されるフレネル式(鏡面反射率の式)の近似式はSchlickの近似式としてリアルタイムPBRにおいて多用されている。また、幾何減衰項においても、Smithモデルを低コストに近似する提案をしており(式19)、こちらもリアルタイムPBRにおいて多用される。
Generalization of Lambert’s Reflectance Model Michael Oren and Shree K. Nayar1994Torrance-Sparrowのマイクロファセットモデルをベースに、Lambert反射の一般化として提案された粗面における拡散反射モデルであるOren-Nayarモデルについての論文。表面の粗さ(ラフネス)が大きいコンクリートや石膏といったマテリアルの表現では、ローカルマスキング・ローカルシャドウイングなどの考慮により、Lambertモデルよりも実物に近い拡散反射が再現可能である。リアルタイムPBRにおいては、Lambert反射と比べて品質は確かに向上するものの、計算コストも高いため採用が見送られる場合もある。元にしているマイクロファセットモデルがV字型のTorrance-Sparrowモデルであることには議論もあり、改善手法など提案されている。しかし、マクロな視点で観察したときの拡散反射結果の特性についてそれまで不明な点が多いといわれていた中、マイクロファセットベースの理論付けと計測実験による検証が行われた意義は大きいといえる。
A Reflectance Model for Computer Graphics Robert L. Cook&Kenneth E. Torrance1982PBRにおいて鏡面反射マイクロファセットモデルとして採用されることの多いCook-Torranceモデルが提案された論文。Blinnのモデルをベースに、微正面分布関数DにBeckmann分布を採用することで、従来のTorrance-Sparrowモデルでは再現できなかった、実際の鏡面反射でみられるspeculer spike(正反射方向付近でおきる特に強い鏡面反射成分)を扱えるようにしている。
Models of Light Reflection for Computer Synthesized Pictures James F. Blinn1977Torrance-Sparrowの反射モデルをベースに、コンピュータグラフィックス向きにより簡潔に定式化した提案を行っている。これは後(1982年)のCook-Torranceモデルにもつながるものである。Phongモデルなどのように法線ベクトルとライトベクトルor視線ベクトルを使うのではなく、ハーフベクトルを用いることで、レイトレーシングなどで重要となる相反性を確保している。また、論文中の「SIMPLE HILIGHT MODELS」の節では、Phongモデルをハーフベクトルを用いてより低コストにしたBlinn-Phongモデルも提案されている。
Theory for Off-Specular Reflection From Roughened Surfaces K.E.Torrance & E.M.Sparrow1967物体表面をミクロ的に見た際、微小な平面によって構成される幾何学的なモデルととらえることで、反射特性を物理的に理論化した最も初期のマイクロファセットモデルであるTorrance-Sparrowモデルの提案論文。この論文では、物理的な解析に基づき、物体表面をV字型の微小平面(mirrored-like facet。V字型であることを明示するV-cavity modelとして後に言及されることが多い)としてモデル化する。コンピュータグラフィックスが実用になる以前の時代の論文であるが、物体表面の放射輝度を現在一般的な、光の反射成分を拡散反射と鏡面反射の2つに概念的に分けて考えることや、法線分布項や幾何減衰(ローカルマスキングやローカルシャドウイング)、フレネル反射といった要素が、この論文の中ですでに現れている。

BRDF

GI(グローバルイルミネーション)

 これまでの古典的なCG(特にリアルタイムCG)のライティングでは、光の複数回反射はその計算コストの高さから、長らく環境光という名の定数項で大雑把に近似されてきた。しかし、計算機の高性能化に伴い、徐々にこうした間接光(主に2回以上の反射を経て目に届く光についていう)を、具体的に計算に取り入れようとする試みが盛んになってきている。こうした間接光も考慮したライティング計算をGI(グローバル・イルミネーション)という。
レイトレーシングを始めとしたオフラインレンダリングにおいては初期の頃から複数回反射が考慮されることが多かった。これは、レイトレーシングという計算手法、そしてそれを支える理論的背景である「レンダリング方程式(1986年,Kajiya)」に、複数回反射を実現するにあたっての制約が存在しなかったことが大きい。
一方、ゲームなどのリアルタイムCGにおいては、GPUのレンダリング方式である「ラスタライザ方式」がそのままでは直接光のみしか計算することができないという大きな制約を抱えており、その中でなんとか工夫を重ねてGIを実現する方法について、各方面が多大な努力を重ねている。今日の最新ゲームCGが、実写と見紛うほどの写実性を備えているのは、そうした努力の数々が実を結び始めた結果であると言えよう。

タイトル著者発表年概要
Light Propagation Volumes in CryEngine 3  Anton Kaplanyan2009ゲームなどのリアルタイムCG向けの動的GI手法であるLPV(Light Propagation Volumes)を開発したCrytek社によるCourse資料。各光源からRSM手法により分布させた1次バウンス輝度の各ピクセル位置にVPL(仮想的なポイントライト)を発生させ、さらにシーンをグリッドで区分けした3次元格子にそのVPLの輝度を周りの格子に伝播させていくことで、動的なGIを実現する。その計算コストと品質効果のバランスの良さから、201x年代の後半時点、ゲーム等のリアルタイムCGにおいて採用が進んでいる手法の1つである。 

HDR(High Dynamic Rendering)

計算機でCGを扱う際、ビット深度は長らくRGBAを32bitで表現していた。
HDRは、それよりも大きなビット深度で光量を表現することにより、十分な精度で表現できる光の明暗差(コントラスト)の範囲を、現実世界で起こりえる明暗差の範囲にできるだけ近づけてレンダリングを行う研究分野である。
また、広義には、扱えるビット深度が狭い表示デバイスなどで、扱える範囲以上の明暗差を視聴者に心理的に体験させるための処理をHDRの研究に含めることも多い。

IBL(イメージベースドライティング)

IBL(Image Based Lighting:イメージベースドライティング)とは、外界の景色を表すテクスチャ画像である環境マップを光源と見立てることにより、四方八方から降り注ぐ光を、対象の単位表面への照度と扱ってライティングを行うことをいう。IBLによって、平行光源や点光源などの離散的な光源のみでは表現することが難しい、現実により近い環境でのライティングを実現することができる。

タイトル著者発表年概要
A unified approach to prefiltered environment mapsJan Kautz2000
An Efficient Representation for Irradiance Environment MapsRavi Ramamoorthi2001IBLにおいて球面調和関数(Spherical Harmonics)を導入した論文。環境マップが放つ光をSH基底関数の重み係数に変換することでデータ容量を著しく抑えることができる。また、完全なディフューズ面に限り、重み係数は9個あれば十分にもとの環境光を復元できることも数学的に示している。

PRT(Precomputed Radiance Transfer)

PRTは、広域における複雑な光の伝搬をあらかじめ時間をかけてあらかじめ計算(事前計算:Precomputed)し、リアルタイムレンダリング時にはその事前計算結果を利用することで、低い処理コストでGI(グローバルイルミネーション:広域における光の複数回反射を考慮したライティング処理のこと)のリアルタイム計算を実現しようという技術である。ライティングはIBL(イメージベースドライティング:環境マップを光源と見立てて行うライティング)を前提としている。

タイトル著者発表年概要
Precomputed Radiance Transfer for Real-Time Rendering in Dynamic Low Frequency Lighting Environments Peter-Pike Sloan2002PRT(Precomputed Radiance Transfer)というGI前計算手法の開祖的な研究。この研究は、IBL(環境マップを光源と見立てて行うライティング)のデータを球面調和関数の係数で近似してデータ量を大幅に削減し、さらに遮蔽データとの内積計算によってランタイム時の陰影計算を大幅に低コストにするなど、画期的なアイデアであった。しかし本手法では、光源は動かせるがシーンに登場しているオブジェクトは一切動かせない(動かす場合は事前計算をやり直すことになる)という制約が存在した。