stalingrad_main.jpg

Main Road|Postは、映画“スターリングラード”の中で、破壊や残骸ショットなど数多くのエフェクトを手掛けたロシアのVFXスタジオである。彼らにとって最大の課題のひとつが、煙や炎といった実写エフェクトの既存ショットにVFXエレメントをシームレスに統合し、調和させることであった。スターリングラードの町広場に炎につつまれ墜落する敵機のシーケンスショットを演出しながら、爆発にリアルに反応する群集をCGで生成しなければならなかった。

小規模なスタジオ設備でこうした課題を実現するために、Main Road|Postは、HoudiniのPyro FXやCloth、パーティクルなどのツールを活用した。また、HoudiniのMantraレンダラやキャラクタツールは、アニメーションにおける課題の解決に貢献した。

煙と炎 – CGと実写エフェクトの統合

炎や煙といったCGエフェクトを既存の実写エフェクトに完全に調和させるために、Main Road|Postは、実写の炎のサイズや色、質、スピード、ステレオ深度に完璧に一致するCGの炎をシミュレーションするための最善策を探る必要があった。この課題に対処するために、さまざまなテクスチャマッピング手法を試し、Pyro FXのシミュレーション結果における視覚的な違いを細部にわたって比較してみることにした。

 

smoke_fire.jpg

 

彼らは、ボリュームにテクスチャをマッピングする際に利用できる手法には、それぞれ長短があること気がついた。たとえば、Pyro FXソルバーにデフォルトで搭載されているデュアルレスト法は、テクスチャを簡単にマッピングすることはできたが、伸びやブレンドによるノイズのために、CGと実写エフェクトを効果的に統合するうえで求められるレベルのルックを得ることはできなかった。最終的に、ボリューム内部に移流したパーティクルを用いてPyro FXシミュレーションの大部分を行った後、ローカル座標を持ち出すというのが最善ではないかという結論に至った。この方法によって、彼らは望んでいた通りの結果を得ることができた。

群集アニメーション

“スターリングラード”で見どころとなっている爆破シーン満載のふたつのシーケンスでは、役者のリスクを避けるため、CGで生成した群集を使用した。ひとつは大型オイルタンクが爆発するもので、もうひとつは、スターリングラードの町広場で次々と起こる爆発のショットだ。群集の規模は40〜100人程度でそれほど大規模ではないが、足場の悪い地面の上で群集キャラクタをどうアニメーションさせて写実性を保つかが課題であった。

オイルタンクのシーケンスについては、当初、すべてのアニメーションクリップをMayaで作成し、その後、シーンをアセンブルするために、ジオメトリキャッシュとしてHoudiniにインポートするといったプロセスを予定していた。プロダクションテストで、キャラクタの足と凸凹だらけの地面との間に隙間が目立つことに気が付いた。

 

crowds_2.jpg

 

「ひとつひとつのキャラクタをアニメーションせずにすむように、手順を再検討し、Houdiniを使用してアニメーションをプロシージャルに補正してみることにしました。」Main Road|Postでアニメーション スーパーバイザーを務めるアレキサンダー・リピリン氏は説明する。「前プロジェクトである“オーガストウォーズ”用に開発したインハウスツールを使って、MayaからHoudiniにキャラクタのジョイントアニメーションをインポートし、そのアニメーションクリップをIK化した脚のシンプルなリグにリターゲットしたのです。これにより、キャラクタの足を地面にぴったりと一致させながら、CHOPでアニメーションのニュアンスを補正することができました。また、異なるアニメーションクリップを上手くブレンドし、全体としてより良い結果を得ることができましたし、クロスシミュレーションを行う上でも役立ちました。おかげで、Tポーズのキャラクタにショットに応じた動きをつける際の面倒を減らすことができたと思います。」

町広場の爆撃シーケンスに取りかかるにあたり、チームはアニメーションのパイプラインを見直すことにした。Houdini内でモーションキャプチャデータをキャラクタのコントロールリグにリターゲットすることで、あらゆるソースのアニメーションデータを取り込み、キーフレームアニメーションをすべてHoudiniで作成することができた。手付けによるアニメーションを想定していたにもかかわらず、今回のプロジェクトでは、大半のアニメーションがモーションキャプチャデータを用いて生成された。

爆発によって兵士が吹き飛ぶショットでは、ラグドールが功を奏した。爆発範囲内にあるCGキャラクタについては、爆発時のポーズを維持したままスケルトンをラグドールにコンバートし、爆発中心部からの衝撃波をラグドールの体の数か所に適用して、シミュレーションが終了した後に、その結果をキャラクタのスケルトンに再びリターゲットした。

 

crowds_1.jpg

 

HoudiniのClothソルバーの組み込みは、CG生成された群集をよりリアルに見せるうえで重要な役割を果たした。CGの兵士は外套身につけ、す早く動かされているため、既述のアニメーション上の欠陥を隠すうえで役に立った。群集シーケンスのクロスシミュレーションはすべて、Houdiniで処理された。

「望み通りの結果を得るために、シミュレーション設定の調整やアニメーションクリップの修正に少し時間を要しました。」アレキサンダーは言う。「事前準備をして、すべてをHoudiniデジタルアセットにまとめてしまえば、シミュレーションがバッチモードでスケジュールされ、キャラクタごとにシミュレーションが実行されます。追加調整はほとんど必要ありませんでした。」

飛行機墜落のシーケンス

映画の主要ショットでは、火を噴いた大型飛行機が町広場に激突する。これは、Main Road|Postにとって最も困難でありながら、やりがいのあるVFX作業となった。

飛行機の実際の動きは、Main Road|PostのVFXアートディレクターであるアンドレ―・マキシモフ氏によって、手付けでアニメーションされた。このシーケンスには、飛行機が墜落時に激突する彫像や建物の崩壊をシミュレートするために、リジッドボディダイナミクスなど、Houdiniが作り出すあらゆるタイプのダイナミクスが組み込まれている。最後の衝撃とともに舞い上がる土埃や飛行機の破片だけでなく、飛行機から出る炎や火花などの細部の生成についてもパーティクルが使用された。流体ダイナミクスによって煙や飛散する埃が追加され、地面への衝突による機体の損傷は、ジオメトリソルバーを使って表現された。このシーケンスだけでも、約50種類のボリューメトリックシミュレーションと30種類のRBD(リジッドボディダイナミクス)シミュレーションが使われている。

 

plane_crash.jpg

 

「破壊ショットの多くで、BulletソルバーとGeometryソルバーを組み合わせて使用しました。これらは、別々に使用しても面白い結果が得られますが、組み合わせると、アーティスティックな意味合いで驚くべき成果が生まれます。」とMain Road|PostのCTOであるミハイル・レシン氏は言う。「Houdiniのダイナミクスシステムの最も優れた点は、さまざまなダイナミックソルバーをフレキシブルに組み合わせることができる点にあると思います。そのために、時にはシミュレーションスピードを妥協しなければならない場合もありますが、それだけの価値はあると考えています。」

ライティングとレンダリング

Main Road|Postは、変位ボリューメトリックのレンダリング性能からHoudiniのMantraレンダラを採用したが、最終的に、このプロジェクトのシェーディング作業をすべてMantraで行った。

 

mar_wip.jpg

 

「物理学に基づいたレンダラ―で、Mantraのように柔軟性に富むものは他にないと思います。」ミハイルは言う。

 

mar0010.right.0187.jpg

 

美しくレンダリングされた“スターリングラード”のVFXリールは、すでにオンラインで爆発的な人気を得ているが、2月に劇場公開されれば、間違いなく人々を驚かせるだろう。Houdiniによって、この新進気鋭のスタジオは、さまざまな困難を乗り越えて、最終的に目的を実現させることのできるツールを手にしたのだ。