2011/06/15更新

Marschnerモデルを考案した“ヒューマン・ヘア”のスペシャリスト

“人間の顔”を表現するためのCG技術は、21世紀に入って著しい進歩を果たした。なかでも人間の肌や髪のリアルな質感表現の向上には、眼を見張るものがあった。肌の質感の向上に関しては、連載第2回で紹介したHenrik Wann Jensenが考案したサブサーフェース・スキャタリングの新しいモデル(ダイポール・モデル)がその切り札となった。一方の髪の質感の向上に計り知れない貢献を果たしたのが、今回紹介するSteve Marschner(スティーブ・マシュナー)氏だ。

21世紀初頭の髪の質感表現では、1980年代に考案されたモデル(Kajiya-Kayモデル)が用いられていた。しかしこのモデルを用いた場合、毛の内部での光の散乱を正確に表現することができないため、作り出すことのできるリアリズムには限界があった。黒髪以外の髪の毛では、このような毛の内部での光の散乱がもたらす効果が大きな意味をもってくるからだ。Marschner氏が2003年に発表したモデルは、この限界を打破するもので、髪の毛を透過する光や、髪の毛の内部で散乱する光の挙動を物理的に正確に表現していた。このモデルは後に、Marschnerモデルとよばれるようになり、映画VFXなどにもいち早く導入されていった。

Marschnerモデルの登場は、まさにヒューマン・ヘア表現における一大革命であり、それゆえにMarschner氏といえばヒューマン・ヘアのスペシャリストという印象が定着していった。だが、実際にはMarschner氏の研究は実に広域に渡っており、Marschnerモデルにしても、そのような幅広い分野をカバーしたバックグラウンドのもとで生み出されたものといえるのだ。そしてMarschner氏が目指す終着点も、ヒューマン・ヘアというテーマを越えたところにある。前編ではまず、Marschnerモデルを生み出すまでのMarschner氏のユニークな歩みを追ってみたい。

初めてのコンピュータ“Apple II plus”との出会い

現在にいたるまでの歩みのなかで、Marschner氏にとっての最初の輝かしい想い出は、初めて自分自身のコンピュータを手にした時のことだという。かねてからApple IIが欲しいとねだっていたMarschner氏に対して、両親は自分自身で100ドルを貯めてみせたら、残りは払ってあげようと約束したそうだ。小学生にとって100ドルはかなりの大金だったが、Marschner氏はなんとかそれを達成し、4年生の時に晴れてApple II plusを手にした。140Kのフロッピー・ディスクを用いて操作する、当時最新式のコンピュータにMarschner氏は夢中になり、瞬く間にベーシック言語や6502アセンブリ言語を習得し、様々なプログラミングにいそしむようになっていった。中学・高校へと進んでもその熱中ぶりは変わることなく続き、高校時代には“物理”にも強い関心を抱くようになった。そこで、物理、もしくはコンピュータ・サイエンスを専門的に学ぶことを目指してブラウン大学(Brown University)に入学した。

実際に大学で受講したクラスのなかで、Marschner氏の心をとりわけ強く惹きつけたのは、やはりコンピュータ・サイエンスだったため、大学ではコンピュータ・サイエンスと数学の学位を取得した。しかし、Marschner氏の物理に対する興味は冷めやらず、さらに、コンピュータ・サイエンスの学習過程で出会ったコンピュータ・グラフィックスにも強い関心を覚えた。そこで大学卒業後には、これらのテーマをさらに深く学ぶことを決意した。

コーネル大学時代:コンピュータ・グラフィックスの道へ

Marschner氏がコンピュータ・グラフィックスに惹かれていった理由は、元来抽象的でありながら、本質的な美しさをもった“数学的なアイディア”を、“絵”という非常に具象的で、誰にでも直感的にわかる形に転化できる点にあった。かねてから“物理”に対する強い関心を抱いていたMarschner氏は、ブラウン大学で最初にコンピュータ・グラフィックスに接したときから、光の伝達や物体の動きをシミュレートするテーマに一番興味をもっていたという。

そこでMarschner氏は、この分野で知名度の高いコーネル大学(Cornel University)の博士課程に進み、まずはDon Greenberg氏、Ken Torrance氏、Pete Shirley氏らのもとで、光の伝達や、光と物体とのインタラクションを物理的に正確にシミュレートする技法の極意をつぶさに習得した。いうまでもなく、彼らは物理的に正確なレンダリング技法の研究における巨匠にあたる。なかでもGreenberg氏の教えは、Mershner氏がデジタル・フォトグラフィ分野の最新技術に開眼し、これを物理的に正確なレンダリングと結びつけてゆくための原点となった。また、物理的に正確な反射モデルの研究のパイオニアであるTorrance氏は、理論的見地のみならず“実験的”見地からもこの問題に取り組んでゆくことの重要性を説いたそうで、この教えはMarschner氏のその後の研究の大きな指針となった。

当時のMarschner氏にとっては、この時期の学習は深すぎるほどに思えた部分もあったようだが、知識からフィロソフィーにいたるまで、実に深く学ぶことができたからこそ、その後の研究の中核を形成してゆくための、がっしりとした土台を築くことができたのだといえよう。

オリジナリティの萌芽となった、博士論文“Inverse Rendering”

実際のところ、前述の学習の成果は、Marschner氏が1998年に執筆した博士論文に、すでに表れていた。“Inverse Rendering for Computer Graphics”と題したこの論文は、正式な学会に投稿されることはなかったため、あまり知られていない。しかし、その内容は1998年当時のレンダリング技術の水準を考えると、非常に画期的なものだったといえる。

伝統的なレンダリングでは、レンダリングする物体の形状、物体表面の反射特性、物体の陰影を決定するライティングなどの“情報”を与えて、レンダリング結果にあたる“画像”を生成する。これとは逆に“Inverse Rendering”は、与えられた“画像”からレンダリングに必要とされる“情報”を復元することを目指すものだった。ここでいう“与えられた画像”とは、実質的には物体を撮影した画像、すなわち“写真”を意味している。撮影画像から、そこに写っている物体の形状を復元する手法は、コンピュータ・ビジョンの分野では早くから研究が進んでいた。1990年代半ばになると、コンピュータ・グラフィックスの分野でもイメージベースト・レンダリング(Image-Based Rendering)という総称で、この種の技術が確立されていった。

したがって、“Inverse Rendering”のテーマは、形状以外の情報を復元することだった。コンピュータ・ビジョンの分野の研究と一線を画していたのは、それがあくまで“レンダリング”のフレームワークの一部として効率的に動作することを第一義としていた点だった。Marschner氏の博士論文は、コンピュータ・サイエンスや数学といった同氏の大学時代のバックグラウンドと、前述のGreenberg 氏やTorrance氏の教えをうまく結びつけた、この時期の研究の集大成といえる内容だった。

1998年といえば、ちょうどPaul Debevec氏が背景画像から環境光のライティングを復元する手法(イメージベースト・ライティング:Image-Based Lighting)を発表した年にあたる。もともとは伝統的なレンダリング技法へのアンチテーゼとして登場したイメージベーストの技法だったが、それ以降は次第に伝統的なレンダリング技法と融合する形をとってゆくことになる。前述の博士論文は、まさにイメージベーストの技法が開花する直前の時期に発表されたもので、撮影画像を用いたレンダリングにおける、その後の技術改革の展開を予測するようなフレームワークを提示した洞察力はみごとだといえる。

なかでも、この博士論文をベースとして後に学会で発表され、その後のレンダリング技術に大きな影響を与えていったのが、写真を用いた“計測”によって物体の反射特性を復元するというアプローチだった。この考え方はMarschner氏自身のその後の研究においても、主軸の1つであり続けている。それまでにも、写真を用いた計測を物体の反射特性の計算に反映させるという試みはなされてきたが、これらの場合には、あらかじめ特定の反射モデルが存在していた。現実世界のリアルな質感を作り出すためのパラメータを手作業で探し出す代わりに、実際の計測結果にフィッティングさせることで、パラメータを決定するという方法がその指針となっていた。これに対してMarschner氏が提案した方法では、雛形となる特定の反射モデルは存在せず、計測結果からダイレクトに反射特性を導き出すことが目指されていた。そのため、解析方法のみならず、新しい計測デバイスも合わせて考案されていた。コーネル大学の博士課程時代は、その後の研究の土台を構築すると同時に、Marschner氏の研究のオリジナリティの萌芽を生んだ時期でもあったようだ。

"Inverse Rendering in Computer Graphics"
(Ph.D. Thesis, 1998, Cornell University)
(C) Steve Marschner


ある材質(マテリアル)の反射特性(BRDF:fr)の計測では、光の入射角(θi)と反射角(θr)の変化によって、入射した光の何割がマテリアルの表面で反射されるかを計測する。従来の計測方法では、計測するマテリアルを小さな正方形のパッチに貼り付け、このパッチを照らすライトの方向と、このパッチを撮影するカメラの方向を、非常に密に変化させていた。 これに対してMarschner氏が提案した方法では、計測するマテリアルをシリンダーや球に張り付ける(図a、図b)。このシリンダーや球の上にサンプル点をとると、同じカメラ方向とライト方向でも、サンプル点の位置によって入射角や反射角が変わってくるため、ライト方向やカメラ方向をそれほど密に変化させずとも、十分に入射角や反射角をサンプリングすることができる。ここではカメラ方向は固定とし、ライト方向のみを変化させ、ライトには補助カメラを付随させる。これら2つのカメラで同じサンプルを撮影した画像を用いると(ここではサンプルの形状は既知であるため)、「2つのカメラどうしの位置関係」=「メインカメラと補助カメラの位置関係」=「メインカメラとライトの位置関係」がわかる。したがって、カメラの位置は固定し、ライトの位置を自在に移動させて計測を行うことができ、計測の自由度を大幅に上げることができる。 BRDFの算出では、計測時と同じカメラ・ライト・サンプルの位置関係を3DCG空間上に設定し、カメラの視点から撮影画像の各ピクセルを通してレイを飛ばす。サンプルの形状は既知なので、レイとサンプルの交点(サンプル点の位置)がわかれば、サンプル点における法線方向がわかり、サンプル点に入射した光の強さ(イラディアンス)を算出することができる。撮影画像のピクセル値(=サンプル点で反射した光の強さ)をサンプル点に入射した光の強さで割ったものがそのサンプル点におけるBRDFの値となる。様々なサンプル点に対してこのようにBRDFの値を計算することによって、様々な入射角と反射角に対するBRDFの値を算出することができ、これをプロットしたものがこのマテリアルの反射特性を表すグラフとなる(図c)。