2012/01/11更新
“リアルタイム・レンダリング”の改革と、研究活動の“国際性”

本コラムではこれまでに、21世紀に入って著しい進歩を果たしたCG技術に関わってきた研究者の歩みを紹介してきた。21世紀という時代のCG技術を象徴するものとして、“リアルタイム”“インタラクティブ”という要素があげられる。

CG技術の進歩は、人間が日頃目にしている物事をいかにしてCGで表現するかという大いなる挑戦から始まった。さらに、いかにしてこれをよりリアルに表現するかという、リアリズムの飽くなき追求が続いた。そして次の段階では、リアリズムをいかにして“リアルタイム”“インタラクティブ”に実現するかという課題に取り組むことになったのだ。この第3段階の課題は、世間一般の人々のCGに対する期待に呼応したものともいえるが、21世紀初頭の新たなグラフィックス・ハードウェアであるGPUの登場は、課題達成に現実味をもたせ、この分野の研究の進歩に大きな拍車をかけたといえる。レンダリング技術の研究分野において“リアルタイム・レンダリング”が時代の寵児となったのも、同様の理由からといえそうだ。

一言に“リアルタイム・レンダリング”の研究といっても、そこにはさまざまな流れがある。GPUの登場に触発されて、GPUレンダリングそのものの研究や従来のフォトリアリスティック・レンダリングをどのようにしてGPUに適した形に修正するかといった研究などが盛んになったことはいうまでもない。しかし、そのような時代のトレンドとは一味違った見地からリアルタイム・レンダリングに大きく貢献することのできる、より汎用性の高い理論も登場するようになった。今回紹介するJan Kautz氏の研究路線は、まさにこの後者にあたる。確かに最終目標は、GPUなどを導入して従来のフォトリアリスティック・レンダリングをより高速に行えるようにすることなのだが、実質的にはBRDF(ある材質の反射特性を求める関数)や環境マッピングといった伝統的なCGレンダリングの要素を時代の要請に即した新たな視点から見直し、その潜在能力を引き出したものとなっている。このような研究成果は、リアルタイム・レンダリング研究の意味合いを人々に再認識させることにもなり、本研究分野における一つの改革に相当するものであったともいえる。

Kautz氏の研究活動のもう一つの大きな特徴は、独自の“国際性”にある。これまで本コラムで紹介してきた研究者は、母国がアメリカであるかないかに関わらず、学習過程の重要な一時期をアメリカで過ごし、そこでの経験を生かして後の研究活動を育んでいった。研究活動の拠点も、アメリカもしくはカナダといった北米大陸となっていた。これに対してKautz氏の場合は、学習過程にしろ研究活動にしろ、基本的には母国ドイツが存在するヨーロッパが拠点となっている。ただし、学習においても研究においても、決して一箇所に留まることなく、流動的に世界を渡り歩いている。そして新たな地に渡るたびに、新たな研究の方向性を切り開いて、研究の幅を広げている点が印象的だ。今回の前編では、Kautz氏がどのようにしてCGに出会い、リアルタイム・レンダリングというものに開眼し、独自の研究路線を切り開いていったかを紹介する。

人生の方向性を決定づけたCGとの出会い

Kautz氏が生まれ育ったのは、ドイツの最南部に位置するバイエルン州だ。子供の頃から人一倍テクニカルな物事に関心が強かったそうで、そんなKautz氏が自らのコンピュータを手にした時の想い出は、今も鮮烈に心に焼き付いているようだ。最初に手にしたのはCommodore C64で、Kautz氏は13歳だった。電源を入れても表示されるのはカーソルだけという、まったくもって“原始的”なコンピュータだったが、幸運にもBASIC言語の一種が提供されていたので、まずはこれを学ぶことから始めたという。続いてアセンブラ言語、そしてC言語を習得していった。次に購入したのはCommodore Amigaで、この時期にはすでに“商品化”されるようなプログラムの数々も作成するようになっていたが、これらの商品はもっぱらカレンダーや簿記などの類で、グラフィックスに関連したものは何一つなかったそうだ。そして、こういった“プログラミング”と同等にKautz氏が熱中していたのが、コンピュータを用いた“ゲーム”だった。

地元の高校を卒業したKautz氏は、バイエルン州の名門大学として知られるエアランゲン・ニュルンベルク大学(University of Erlangen-Nuremberg)に入学した。専攻はコンピュータ・サイエンスだった。コンピュータというものに魅せられたKautz氏にとって、これ以外の選択は考えられなかったという。そして、学部3年生の時に出会った“コンピュータ・グラフィックス(CG)”のコースが、その後のKautz氏の歩みを決定することになった。意外にもKautz氏は、このコースに参加するまではCGというものの存在をまったく知らなかったという。しかし、コースの授業がスタートして2週間と経たないうちに、「これこそがまさに自分がやりたいと思っていたもの。自分がその後の人生を賭けて追求してゆくべきもの」であると悟ったのだそうだ。

CGと人間との“革命的”なインタラクションへの興味

ただし、これまで紹介してきた研究者とKautz氏の大きな違いは、“コンピュータ・グラフィックス(CG)”そのものよりも、CGと人間との接点に強く惹かれていたという点だ。「僕はCGとの“革命的”なインタラクション、具体的にいえば、人間がスーパーリアルなバーチャル環境とリアルタイムにインタラクション(相互作用)できるようにすることに一番興味があった」と語っている。このコースでKautz氏を最初に指導したのが、Tom Ertl氏というバーチャル・リアリティ関係のビジュアライゼーションを専門にしていた研究者であったことも関連していたかもしれない。しかしそれ以上に、子供の頃からコンピュータ・ゲームに夢中になり、テクニカルな物事に人一倍関心が強かったというKautz氏ならではの資質が反映されているといえよう。おりしも、まさにGPUというものが大きな盛り上がりを見せ始める時期にあたっていただけに、GPUを導入したリアルタイム・レンダリングが研究の中核となっていったのは非常に“自然”なことであったようだ。

Kautz氏は、「僕の場合は非常に早い時期にゴールが定まっていたので、そのゴールに向かって研究の歩みを展開していく“goal-driven(目標駆動型)”の生き方をしてきたといえる。ある意味ではラッキーだった」と語る。ただ、特記すべきは、そのゴールに向かって一直線に進むのではなく、常にいくつもの分岐点を行きつ戻りつして歩みを進めていった点である。そしてそれこそが、従来のリアルタイム・レンダリングとは一味違った、より深みのある汎用性の高いリアルタイム・レンダリング手法を生み出すための基盤となったのだ。

“一直線”ではない歩みによって、研究の幅を広げる生き方

目標への歩みが決して一直線でないのは、特定の研究や技術開発といった要因を超えて、ある意味でKautz氏の“生き方”のフィロソフィーといえそうな部分もある。前述したように、エアランゲン・ニュルンベルク大学でCGに出会った瞬間から、Kautz氏はより専門的にCGを勉強すると心に決めていた。ドイツにおけるこの分野の名門といえるのは、Max-Planck-Institut Informatik (MPII)だ。また、エアランゲン・ニュルンベルク大学のCGコースでKautz氏に非常に大きな感銘を与えたHans-Peter Seidel氏が後にMPIIに移ったこともあり、Kautz氏はその当時からMPIIでCGの研究をしたいという意志を固めていたようだ。

しかし、なぜかKautz氏は“一直線”にMPIIには進まず、カナダに渡った。このカナダ行きは、決してgoal-drivenの生き方を実践したものではなく、突然の思いつきからだったという。その“思いつき”というのも、まったくもって研究に関連した動機からではなく、単純に「ドイツ以外の国で暮らしてみたい」とうい思いが発端だった。当初は半年ほどカナダで暮らしてみようと考えていたそうだが、実際に体験してみるとそこでの暮らしは思いのほか楽しいものだった。結局のところ、この地で一年半ほどを費やして、ウォータールー大学(University of Waterloo)でコンピュータ・サイエンスの修士号を取得した。“思いつき”から始まったこのカナダでの生活がもたらした最大の収穫は何であったかとKautz氏に問うと、「まずは英語が堪能になった。そして“違う国”に移り住むのは決して難しいことではないとわかったのも大きな収穫だった」という答えが返ってきた。そして、これ以後Kautz氏は常に世界に股がる“一直線”ではない経路を辿って、その研究の幅を広げてゆくことになる。前述したKautz氏の独自の“国際性”の萌芽は、まさにここにあったのだ。

新しい理論を生み出すための“分解”の重要性【

カナダのウォータールー大学での修士課程は、前述のような“国際性”の萌芽のみならず、実際にはリアルタイム・レンダリングの研究における、Kautz氏の独自性の根源となる要素を育んだ時期でもあった。前述したようにKautz氏のリアルタイム・レンダリングの研究においては、非常に汎用性の高い新たな理論が生み出されていることが大きな特徴となっている。これについてKautz氏は「新しい理論を生み出すための実際のプロセスは、往々にして“methodological(方法論的)”である場合が多い。目指しているゴールに関わっている大きな問題を、いかにして容易に解決することのできる小さな問題に“分解”するかが鍵となる」と語っている。

そして、このような“分解”の重要性を感じさせる画期的な手法を、Kautz氏はこの時期に発表している。1999年当時のハードウェア・レンダリングは、物体表面上の反射の特徴が極めて単純な場合しか扱うことができなかった。第5回で紹介したように、ある材質の表面上の反射特性を求める関数であるBRDFは4次元関数で、当時のハードウェア・レンダリングにおいて、このような高次元関数を扱うことは難しかったからだ。そこでKautz氏は4次元のBRDFを2つの2次元関数の積に分解し、分解されたそれぞれの関数をテクスチャデータとして表すことによって、GPUレンダリングに適したBRDFモデルを作り出す方法を考え出した。その後、BRDFをこのような低次元の関数に分解する手法が数多く登場し、任意の反射特性をもった物体の効率的なレンダリングの実現に大きく貢献することになった。

Kautz氏の発案は、ある意味でリアルタイム・レンダリングというテーマを超えた大きな流れを作り出したともいえる。またKautz氏がこの後に考案してゆく手法は、いずれも多かれ少なかれ物体の反射特性を“リアルタイム・レンダリング”という視点から見直し、アップデートしたものとなっている。Kautz氏が時として“BRDF研究のスペシャリスト”という見方をされる所以はこのあたりにある。その意味でも、前述の手法はKautz氏の研究の原点にあたるものといえそうだ。ウォータールー大学での修士課程を終えたKautz氏は、当初の予定どおりMPIIの博士課程に進み、ここでその才能を開花させてゆくことになる。

後編となる次回は、この時期に発表された代表的な手法と、その背景にあるエピソードを紹介したい。

 

この手法では、まず式1のように入射方向ωiと反射方向ωo(共に2Dベクトル)をパラメタライズしてxとyを作成する。次に式2のように縦方向にxだけを、横方向にyだけを変化させて、BRDF(関数f)をサンプリングした行列Mを作成する。そして、この行列にSVDなどの代数的な手法を適用することで、式3のようにxだけに依存する関数gとyだけに依存する関数hの積を線形結合し、もとの関数fを近似する。

図A

図B

“Interactive Rendering with Arbitrary BRDFs using Separable Approximations” (Jan Kautz and Michael D. McCool, Department of Computer Science; University of Waterloo, Proceedings of Eurographics Wroksshop on Rendring 1999)(C)1999 ACM, Inc


図Aの左上は、もとのBRDF関数fを示し、右列のグラフは、一組の関数gと関数hで関数fを近似したものを示している。グラフの縦軸と横軸は、式3の関数gと関数hを示している。パラメタライズ方法によって近似の精度が大きく変わってくるので、適切なパラメタライズ方法を選択する必要がある。
図Bは様々な物体の反射特性を、図Aと同様に近似したものだが、ここでは一組の関数gと関数fではなく、複数の組を用いて近似の精度がどのように変わってくるかを示している。いずれの場合も数多くの組を用いるほど近似精度は高くなるが、逆に計算負荷は重くなる。いかにして最小限の組で精度の高いレンダリングを行うかの鍵は、やはりパラメタライズの適切さにある。
2000年以降には、これを発展させ、関数gと関数hのそれぞれを、ライト方向(入射方向)だけに依存する関数と視点方向(反射方向)だけに依存する関数に設定し、さらに個々の関数を一次元の関数に分解する手法も登場した。この手法は、BRDFの抜本的な問題点の解決に王手をかけるものとして話題となった。

リアルタイム・レンダリングの新たな風を巻き起こす ~後編~