GTC 3日目には、映画制作会社LucasfilmのCTO(最高技術責任者)であるRichard Kerris氏が基調講演を行なった。Kerris氏は、また映画作りがどのように変化しているか、そして、現在の映画制作現場において、いかにGPUが重要になってきているかについて説明を行なった。
●ILMとCGの進化の歴史Lucasfilmは映画監督ジョージ・ルーカス氏が'71年に設立した映画制作会社で、スターウォーズシリーズやインディー・ジョーンズシリーズなどの制作で知られる。その関連会社である、Industrial Light & Magic (ILM)は映画の特殊効果を専門に請け負う。基調講演は、このILMが手がけた数々の著名な作品のダイジェストで始まった。
壇上に登ったKerris氏はまず、Lucasfilmグループの中で、GPU利用の先駆者であるLucasArtsについて言及。同社はゲーム制作会社であり、GPUの伝統的用途である3Dグラフィックアクセラレータとして長年活用している。その最新事例が、スターウォーズを題材にした「Starwars The Force Unleashed」で、近日中にその拡張版である「Ultimate Sith Edition」が発売されるということで、その予告編が紹介された。
Lucasfilm CTOのRichard Kerris氏 | Lucasfilmにはいくつかの専門的な関連会社がある | LucasArtsは3DアクセラレータとしてGPUを長年活用 |
「Starwars The Force Unleashed Ultimate Sith Edition」の予告編 |
しかし、今回の主題は映画作りにおけるパラレルプロセシングユニットとしてのGPUの活用事例である。そこで、Kerris氏はILMにおけるコンピュータグラフィックスの進化の歴史に話題を移した。
ILMは'75年に設立。当時から現在まで続く同社の基本思想は「技術こそ、映像を作るという目的を達成するための手段である」というものだ。言い換えると、映像のために新しい技術を開発していくということになる。
ILMが'75年に最初に手がけたのが、スターウォーズで、そこではモーションコントロールカメラを採用した特撮が行なわれた。このカメラはコンピュータで動きを制御されており、何度も同じように動かせるようになっており、異なる対象を複数回に分けて撮影し、合成することができる。これによって、ミレニアムファルコン号が宇宙で戦闘を繰り広げるシーンを撮影することができた。
その10年後の'85年、同社は「ヤング・シャーロック ピラミッドの謎」において、初めてコンピュータグラフィックスによるキャラクタを登場させた。
ILMはスターウォーズでモーションコントロールカメラを採用 | 異なる対象を同じカメラのアングル/動きで撮影し、合成した | ヤング・シャーロック ピラミッドの謎では初めてCGキャラを作った |
ヤング・シャーロック ピラミッドの謎のCGキャラ |
'89年には、「アビス」で初めてフォトリアリスティックな流体キャラを作成。これは映画の目玉シーンの1つだったが、2年後の'91年には「ターミネーター2」で、フォトリアリスティックな流体キャラを主役として全面的に使うに至った。
アビスでは水でできたキャラが登場 |
ターミネーター2では液体金属でできたキャラが主役として終始登場した |
その間、作成に用いられるコンピュータシステムも拡張され、'89年には約46平方mだったコンピュータルームの敷地面積が、'91年には倍の約92平方mになった。
この後、同社は自然の表現に取り組んでいく。その初の例が'96年の「ツイスター」だ。同作品では、竜巻をリアルに再現することが課題で、1カットのシミュレーションだけでも計算に数日を要したという。
ツイスターでの竜巻のシミュレーションの様子 |
この成功を機に、'98年にはコンピュータルームを大幅に拡張。2000年には「パーフェクトストーム」で舟が約50mの荒波にもまれるシーンを作成した。
'89年から'98年までのコンピュータルームの拡張の様子 |
パーフェクトストームでの大波のシーン |
2005年、同社は社屋を移転し、Lucas Animationなど他の部門も同じ場所に集まった。そこで同社は、各部門の協業と融合を図り、約1,000平方mの巨大なコンピュータルームを建設。ここでは、7千のCPUコアと1PBのストレージが稼働。映画だけでなく、スターウォーズのオフィシャルサイトもここで運営されている。
2005年に社屋を移転 | 海外のオフィスとも高速回線でつながり24時間体制となっている |
このシステムを使って請け負ったのが「ポセイドン」の超巨大客船。ここでは、全長335mの客船、1千万リットルクラスの水、といったILMにとって最大級のものがデジタルで再現された。
翌年の2006年には、「パイレーツ・オブ・カリビアン デッドマンズ・チェスト」で、15分間にわたる、海の渦巻き上での海賊船の戦闘を描いた。この時、海流の表現は、1フレームあたり5分でレンダリングできた。これは、過去の作品と比べると大きな進化だ。しかし、泡、水しぶき、船など、全ての要素を追加すると、1フレームのレンダリング時間は一気に20時間にまで延びた。このとき同社は、ハリーポッターやトランスフォーマーも同時進行で手がけており、さらなる高速なシステムが求められるようになった。
ポセイドンで描いた超巨大客船。ここに写っている全てがCG |
パイレーツ・オブ・カリビアン デッドマンズ・チェストの海戦シーン |
●シミュレーション用プロセッサとしてのGPUの採用
そこで2009年に「GPU Project」という計画が立ち上がった。この計画では、より高速なレンダリング、より大きなデータセットの取り扱い、先進性、コストメリットを目的とし、実験的にGPUによる並列演算処理を導入していった。
2009年にGPU Projectが始動 | 目的はシミュレーションやレンダリングのさらなる高速化のためGPUを活用すること |
最初は固体の物理演算で実験が重ねられ、CPUよりもずっと高速に処理できることが分かった。結果として「トランスフォーマー:リベンジ」では、ピラミッドの破壊シーンで、監督がシミュレーションの様子を確認し、さまざまなカメラアングルなどを試すことができた。
トランスフォーマー:リベンジの1シーンのプリビズ |
こちらが最終出力 |
続いて、流体への適用が試された。検証の結果、GPUが浮動小数点演算をサポートし、プログラマブルであることなどから、「ハリーポッターと謎のプリンス」での炎の表現に用いられることになった。ここでのポイントは、最初のパーティクルのシミュレーションは既存のCPUを使ったシステムで行なわれたが、そこで得られたデータをそのまま、GPUに渡して処理できた点にある。
シミュレーションにおけるGPUの導入にあたっては、プログラムの考え方を根本から変えるとともに、並列演算と逐次演算をうまく分離することにあるという。そうすることによって、ハリーポッターと謎のプリンスでは、炎の処理に、CPUでは30時間かかるところをGPUで10秒で処理できたという。
ハリーポッターと謎のプリンスでの炎のシミュレーションの様子。まず、既存のシステムでCPUを使って炎のパーティクルをシミュレーション | これをカメラのZ軸に対していくつかのスライスに分割 |
スライスごとにGPUを割り当て、炎の動きをシミュレーション | 最終的にそれを重ね合わせる |
こちらが完成シーン |
ゲームと映画の双方で開発に利用しているzViz |
ハリーポッターでの炎の処理は2D的手法が用いられているが、今後はボリューメトリックな完全な3Dレンダリングを目指すという。また、今後ILMではGPUファームを設置していく。そのために、既存のツールをCPUでもGPUでも動くようアップグレードしていく。
さらに、ILMとLucasArtsではさらなる協業を推し進める。すでに同社では「zViz」という内製のプラットフォームを開発しており、zVizではゲームの作成だけではなく、そのデータをそのまま映画に持ち込んで、より高度なレンダリングを行なうといったことができる。これにより、さらなる効率化を目指す。
このように、GPUは映画業界にとって、CPUを上回る演算装置として認知されつつあり、新しい表現のため、今後その活用は加速して行きそうだ。
(2009年 10月 5日)
[Reported by 若杉 紀彦]