【マイクロソフト リサーチ アジア インタビュー 後編】2 リアルタイム・レンダリングの分野における知名度の確立
2012.10.30 UP
図(B) (c)ACM
図(C) (c)ACM
図(D) (C)ACM
図(E) (c)ACM
(前号より続く)
BTFレンダリングのみならず、MSRAグラフィックス・グループはまずはテクスチャを活用したレンダリング技法の数々によってその知名度を高めてゆくが、次第にその活躍の場をより広範囲に拡張してゆく。たとえばBTFレンダリングは物体表面のフォトリアルな見え方を復元することを意図した手法だったが、MSRAグラフィックス・グループはこの考え方をボリューメトリックな物体のレンダリングにまで拡張してゆき、その後この路線を引き継いで、サブサーフェース・スキャタリング(subsurface scattering)や関与媒体(participating media)に関する研究においても意義深い成果を残すようになる。(倉地紀子)
■MSRとMSRAグラフィックスグループのコラボレーション
同様にBTFレンダリングの研究が種となって大きな展開を見せたのがリアルタイム・レンダリングの分野における研究で、この研究路線の展開がアメリカのMSR(Microsoft Research)の研究と同調して進められたという点も興味深い。
MSRは2002年にPRT(Pre-Computed Radiance Transfer)というリアルタイム・グローバルイルミネーションの技法を考案・発表しており(文献4)、一世を風靡したこの技法がMSRのCG研究機関としての知名度を高めたことはいうまでもないが、同時にこの技法の進化の過程がMSRとMSRAグラフィックス・グループとの間の研究のコラボレーションを押し進めることにもつながっていったのだ。
直接的なきっかけとなったのは、2003年にMSRとMSRAグラフィックス・グループの共著によるSIGGRAPH論文によって発表されたBi-Scale Radiance Transferという手法で(文献5)、これはまさしくPRTとBTFレンダリングンという、MSRとMSRAグラフィックス・グループのそれぞれが世界に先駆けて考案した手法のコラボレーションにあたるものだったのだ。
そして、これに続いてMSRAグラフィックス・グループは、PRTをさまざまな形に進化させる手法を発表してゆくことになる。代表例の一つして挙げられるのは、2005年のSIGGRAPHで同グループが論文発表したシャドウ・フィールド(Shadow Field)というものだ(文献6)。
PRTでは、環境光のオクルージョン(=環境光がレンダリング点に到達するまでの間にシーン内の物体によってどのように妨げられるか)を前計算して、GPUを活用したリアルタイム・レンダリングと相性のよいベクトルや行列のような“線形”な形で保存しておくことが大きな特徴となっているのだが、ここではオクルージョンが一定であるということが前提となっており、ダイナミック・シーン(物体の状態が時間軸に沿って変化するようなシーン)には対応できなかった。しかし、ゲームなどをはじめとした実用面からはPRTをダイナミック・シーンにも対応できるようにすることへの要請が高まる一方で、シャドウ・フィールドはまさにその実現に王手をかけたアイデアだったのだ。
■リアルタイム・レンダリング分野で次々に研究成果を発表
PRTという研究テーマに限らず、その後MSRAグラフィックス・グループはリアルタイム・レンダリングの分野で次々に非常に意義深い研究成果を発表してゆくようになる。中でも実用的見地から世界的に大きな注目を浴びたのが、2009年のSIGGRAPH ASIAで同グループが論文発表したRenderAntsというGPUシステムだ(文献7)。このシステムはレンダーマンのシーン情報とシェーダーを読み取って、レンダーマンによるレンダリング結果をまさに同じものをGPU上のリアルタイム・レンダリングによって復元(再レンダリング)することを可能にしたものだ。同様のコンセプトのシステムが2007年にMITとILMとの共著によって発表されていたものの、ここでは再レンダリングにおいても部分的にレンダーマンによる前処理が必要とされていたのに対して、RenderAntsでは再レンダリングの全工程がGPU上で実行できる点が高く評価された。このような画期的な研究成果の数々を通して、MSRAグラフィックス・グループはリアルタイム・レンダリングの分野で揺ぎない知名度を確立してゆき、このことが世界的な実用プロジェクトへの参画へとつながってゆくことになるのだ。
文献4)“Precomputed Radiance Transfer for Real-Time Rendering in Dynamic, Low-Frequency Lighting Environments”
(Peter-Pike Sloan, Jan Kautz, John Snyder, SIGGRAPH2002)
文献5) “Bi-Scale Radiance Transfer”
(Peter-Pike Sloan, Xinguo Liu, Heung-Yeung Shum ,John Snyder, SIGGRAPH2003)
文献6) “Precomputed Shadow Fields for Dynamic Scenes“
(Kun Zhou, Yaohua Hu, Stephen Lin, Baining Guo, Heung-Yeung Shum, SIGGRAPH2005)
文献7) “RenderAnts: Interactive Reyes Rendering on GPUs”
(Kun Zhou, Qiming Hou, Zhong Ren, Minmin Gong, Xin Sun, Baining Guo ,
SIGGRAPH ASIA2009)
(写真キャプション)
(A)(B)
図“Bi-Scale Radiance Transfer”(A)(B) のキャプ
2003年のSIGGRAPHでMSRとMSRAグラフィックス・グループの共著論文によって発表されたBi-Scale Radiance Transferという技法では、図(A)のように、遠方から差し込む環境光(Global Lighting)が物体表面上のマクロ・スケールの構造に到達するまでの光の変化(Macro-Scale Radiance Transfer)をPRT(Pre-computed Radiance Transfer)によって、環境光が物体表面上のマクロ・スケールの構造に達したのちに今度は物体表面上のメソ・スケールの構造に到達するまでの光の変化(Meso-Scale Radiance Transfer)をBTFから作成したRTTという関数によって表わす。物体表面に細かな凹凸のあるような物体をレンダリングする場合には、PRTとRTTをうまく融合させることによって従来のPRTの計算(PRTとBRDFを用いた計算)を大幅に効率化することができる。図(B)左はBTFレンダリングの結果、中央はPRTによるレンダリング結果、右はBi-Scale Radiance Transferを用いたレンダリング結果を示しており、Bi-Scale Radiance Transferを用いたレンダリングはBTFレンダリングの利点(=物体表面の微妙な凹凸を効率的に表現できる)とPRTの利点(=グローバル・イルミネーションの効果を効率的に表現できる)を兼ね備えていることがわかる。
(C)(D)
図“Shadow Fields”(A)(B)のキャプ
MSRAグラフィックス・グループはSIGGRAPH2005において、従来のPRTをダイナミック・シーンに対応させるための第一歩ともいえる手法を論文発表した。まず、従来のPRTではシーンのライティングとして遠方から差し込む環境光(図(A)のSd)のみが考慮されていたが、本手法ではシーンのライティングとして物体の近傍にあるローカル・ライト(図(A)のS1, S2, S3)も含めなおかつこれらのライトの位置や光の強さが時間軸に沿って移動することも考慮している。また、従来のPRTではシーンのライティングを遮る要因(オクルージョン)は一定であるとされていたが、本手法ではシーンのライティングを遮る物体(図(A)のO1, O2, O3)が時間軸に沿って移動することも考慮している。上記のような時間軸に沿ったライティングやオクルージョンの変化に対応できるようにするため、本手法では、レンダリング点に向かってライトから放たれた光の情報とライトからの光を遮る物体の情報を別々にキューブ・マップとして記録する。この2つのキューブ・マップの情報を掛け合わせたものがシャドウ・フィールド(Shadow Fields)となる。シャドウ・フィールドをリアルタイムに算出して、球面調和関数などの基底関数に射影することによって、ライティングおよびオクルージョンの変化にリアルタイムに対応して、ソフトシャドウを加えたレンダリング結果が算出できる。図(B)はそのようなレンダリング結果を示している。
(E)
MSRAグラフィックス・グループは、2009年のSIGGRAPH ASIAにおいてRenderAnsというGPU上のレンダリング・システムを論文発表した。このシステムは、レンダーマンのシーン・データーとシェーダーを入力情報として、まずはレンダーマン・シェーダーをGPUシェーダーへとコンパイルし、その後のレンダリング・プロセスはすべてGPU上で実行するという画期的なものだ。画像はそのレンダリング結果で、右上にはRenderManとRenderAntsのレンダリング結果の比較が、左上にはその誤差の程度が示されている。
図(B) (c)ACM
図(C) (c)ACM
図(D) (C)ACM
図(E) (c)ACM