国際的な研究活動への積極性が育んだ、リアリズムへの嗜好性

博士号取得のためにMPIIに籍を置きながらも、この期間Kautz氏はインターンシップを活用して実に積極的に海外に出てゆき、そのたびに自らの研究の幅を広げていった。まず2001年のはじめにはカナダ、ブリティッシュ・コロンビア大学のWolfang Heidrich氏の研究室へ、そして同年の夏にはMicrosoft Research(MSR)へと赴いた。

Heidrich氏は、Kautz氏と同じエアランゲン・ニュルンベルク(Erlangen-Nurnberg)大学の出身だ。同大学の博士課程の学生だったHeidrich氏は、Kautz氏の卒業プロジェクトをサポートしており、是非もう一度同氏と共に研究を行ってみたいという願いがあったようだ。そして両氏は、この時期に“Real-Time Bump Map Synthesis”という論文を発表した。バンプマップとはいえ、この方法はマイクロファセット(Microfaset)の考え方を導入した物理的精度の高いものだった。前述のプレフィルタリングの論文同様、解像度に複数のレベルをもたせることで、計算の効率化と、ディテール表現の共存を可能にしていた。第5回の後編でも紹介したように、マイクロファセットはCGの分野において、最も物理的に正確なBRDFモデルに導入されていたものだ。このようなコンセプトをハードウェアによるリアルタイム・レンダリングを意図した方法へ導入したところに、Kautz氏ならではのリアルタイム・レンダリングにおける高度なリアリズムへの嗜好性の萌芽が現れていたともいえそうだ。

図C

この方法では、物理的に正確なBRDFモデルで用いられるマイクロファセット(Microfaset)の概念を活用して物体表面の凹凸を生成する。マイクロファセットは物体表面を構成する微小面で、その法線方向に対する鏡面反射方向のみに光を反射する。ここではこの物体の滑らかなサーフェースの法線方向nに対して、マイクロファセットの法線方向 nm を、Normal Density Functionというものを用いてサンプリングすることで物体表面の凹凸の原型を作り出している。

図D

最終的なバンプマップの凹凸には、前述のマイクロファセットを用いて作り出された凹凸の原型にノイズも加えられる。したがって、物体の形状(滑らかなサーフェースの法線情報)とノイズテクスチャを入力情報として参照し、滑らかなサーフェースの法線情報に対して、NDFを用いて生成したマイクロファセットとノイズを加えて、最終的なバンプマップが算出される。

“Real-Time Bump Map Synthesis”
(Jan Kautz, Wolfgang Heidrich, Hans-Peter Seidel, Proceedings of the Eurographics/SIGGRAPH Workshop on Graphics Hardware 2001)

PRTの研究を通して学んだ、討論の醍醐味

そして、2001年夏の3ヶ月間に渡るMSRでのインターンこそが、前述したKautz氏の環境マップのプレフィルタリングに関する研究、およびそれに触発された環境マップとSH基底関数をむすび付けるという考え方を、思いもかけぬ形で大きく花開かせることになった。

MSRに赴くことになったいきさつを、Kautz氏は次のように語っている「当時MSRのPeter-Pike SloneとJohn Snyderは、リアルタイム・レンダリング分野のインターンを探していた。彼らのような非常に頭の切れる優秀な人材と一緒に仕事ができるということは、またとない素晴らしい機会だと思った」。

MSRのPeter-Pike Slone氏らを時代の寵児にしたのは、2002年のSIGGRAPHで発表されたPrecomputed-Radiance Transfer(PRT)という方法で、Kautz氏がインターンで参加したのは、まさにこのPRTのプロジェクトだった。環境マップのプレフィルタリングの方法を用いると、環境全体から差し込む光を混ぜ合わせ(Convolution)、あらゆる方向から飛来する光の効果を考慮するという、物理的に正確なレンダリングをリアルタイムに近似することができる。しかし前述したように、この方法では光が物体表面に到達するまでに他の物体に妨げられるオクルージョン(Occlusion)という効果を考慮することはまったくできない。PRTの原点は、このオクルージョンの効果をレンダリングに先立って計算しておき(Precompute)、この前計算の結果を読み取ってレンダリングを行うことによって、オクルージョンの効果まで考慮したリアルタイム・レンダリングを可能にしようというものだった。オクルージョンの効果を前計算しておくという考え 方はそれまでにも存在していたが、PRTの最大の利点は、環境光をSH基底関数に分解することによって、この前計算の結果をベクトルや行列といったGPUレンダリングに適した“線形”の形で保存することを可能にした点にあった。このような線形の形でオクルージョン効果の前計算結果を記録しておくことは、それまでの方法では不可能だった。PRTの考案によって、GPUレンダリングの質のレベルは、1つの大きなハードルを乗り越えることになったのだ。この方法はのちに映画『アバター』におけるGPUレンダリングにも活用されることになった。

もっとも、Kautz氏が海を越えてはるばるMSRに到着した時点では、まだ“PRT”という具体的な形のプロジェクトは発足していなかった。Slone氏とSnyder氏、そしてKautz氏の3者で様々な討論を繰り返し、追求すべき新たなリアルタイム・レンダリングの形を明確にしたことが、PRTという方法の誕生につながっていったようだ。そして、この体験はKautz氏にとって、PRTを生み出したということのみならず、自分自身のアイデアだけに依存するのではなく、異なったアイデアをもった人々と“討論(discuss)”することによって、彼らと共に1つの新たなゴールに到達するという研究体制の醍醐味を知ったという意味でも、非常に意義深かったようだ。

図E

PRT では、環境光を基底関数Biの線形結合(重みを付けて足し合わせたもの)の形に分解し、それぞれの基底関数の放つ光が物体表面に到達するまでにどのように遮られるかという情報(オクルージョンの情報)を、レンダリングに先立ってあらかじめレイトレーシングによって計算しておく。このように基底関数へと分解することで、この前計算の結果をGPUと相性のよいベクトル、または行列の形で表せることがPRTの最大の利点だ。これによって、オクルージョン効果まで考慮したレンダリングをGPU上でリアルタイムに行うことが可能となる。

“Precomputed Radiance Transfer for Real-Time Rendering in Dynamic Low-Frequency Lighting Environments”
(Peter-Pike Sloan, Jan Kauts, John Snyder, Proceedings of SIGGRAPH2002)