『アバター:ウェイ・オブ・ウォーター』を支える、水を表現するための技術

Wētā Digital(現在は Unity の子会社)は、『アバター:ウェイ・オブ・ウォーター』の世界に命を吹き込むために使用された数多くのツールやソリューションを開発しました。この記事では、同作品の水を表現するための CGI 技術に迫ります。同作品で使用されたツールの一部をいち早く利用したい方は、当社のウェブサイトから Unity Wētā Tools のベータ版にぜひご登録ください。

ジェームズ・キャメロンは、水についてはかなりの経験があります。『タイタニック』を別にしても、2012 年に潜水艦を操縦して、深さ約 11km の地球最深部、太平洋のマリアナ海溝の底まで潜るという記録的な単独潜航に成功した実績を持ちます。この単独潜航を描いた 2014 年のドキュメンタリー『深海への挑戦』で、キャメロンはこう語っています。「ここに降りると、自然の想像力を感じられるんだ。それは私たち自身の想像力をはるかに上回るものなんだ(Down here you feel the power of nature's imagination, which is so much greater than our own)」。
パンドラの世界観やその圧倒的なビジュアルがキャメロン自身の想像力から生み出されたことを思えば、これは本当にすごいことです。

続編では、新しく登場した海のメトカイナ族が住む岩礁の村など、キャメロンのビジョンを形にするために、特に水を使った壮大なセッティングにおいて、ビジュアルエフェクトを駆使することが求められました。
高く評価されている水のエフェクトを含め、本作の VFX の制作に使用されたツールおよびソリューションは、Wētā Digital(現在は Unity の一部門)によって開発されました。
キャラクターと水の要素の相互作用を可能な限りリアルにするため、Unity と Wētā から、Alexey Stomakhin、Steve Lesser、Joel Wretborn、Sean Flynn など、水のシミュレーションを含む VFX のスペシャリストが集められ、「Water Taskforce」が結成されました。このチームの水の表現のためのツールセットは、最近、視覚効果協会(VES)賞 で、Emerging Technology Award(新興技術賞)を受賞するなど、高く評価されています。
細部へのこだわりから、タスクフォースは CGI で水を表現する最高のアプローチを探し出すために、ニュージーランド国立大気水圏研究所(NIWA)との共同研究・実験まで行いました。この取り組みにおいては、潮の満ち引きや風、海底が水の環境に与える影響も考慮されました。

『アバター:ウェイ・オブ・ウォーター』では、2,225 ショットに水のエフェクトが必要となり、中には高解像度が必要とされたために 8 日間もシミュレーションを行ったものもありました。
また、1 ショットで 50 体以上のクリーチャーと水が触れ合うシーンも数多くありました。そのため、大きな生物が占める大きな領域から、皮膚の薄い膜のための 1 ミリメートル未満の解像度まで、スケールに応じてシミュレーションの精度を上げなければならないという課題がありました。
単一表現の水システムを作ることは計算上不可能であったため、計算時間を最小限に抑えるために、いくつかの独立したソルバーを組み合わせてツールセットが開発されました。
「Loki のウォーターステートマシンは、本作の壮大な水のショットにおける圧倒的なボリュームを表現するうえで、重要な役割を果たしました。VFX を多用した一般的な映画でこれほど複雑な水のショットを見かけることはほとんどなく、非常に経験豊富なアーティストが何度も通して修正をかけていく必要があります。それに対して、私たちのステートマシンを使ったアプローチでは、業界に入ったばかりのアーティストでも、たった 1 回通し作業するだけで素晴らしい結果を得ることができました。」- Unity x Wētā Digital シミュレーション部門リード Sean Flynn
チームが開発した水を表現するためのツールの大半は、Wētā 独自のシミュレーションフレームワーク「Loki」に搭載されています。この技術には、プロシージャルな水の波、バルク水、水しぶき、霧、画面の主役となるような華麗な泡、拡散された泡、あぶく、水面の表面張力波、薄膜、水が引いた後の湿った箇所など、さまざまな水の状態に対応するソルバーが含まれています。
ステートマシン
これらのソルバーの多くは、空中の水しぶきを再現するシステムである、Loki のステートマシンに搭載されています。水の状態は周囲の空気との組み合わせで決まり、ステート間の遷移は質量保存則と運動量保存則が成り立つように処理されます。
Loki のステートマシンは単体でなんでもできるようにしようというアプローチは取らず、複数のソルバーが同時に動作できるようになっています。各ソルバーは、バルク水、水しぶき、霧など、それぞれの状態に必要な詳細度に合わせて最適化されています。これにより、大規模な水のシミュレーションを効率的に行いながら、水しぶきや霧を表現するために必要な非常に細かい液滴間の相互作用を捉えることができます。
周囲の空気を含むすべての状態の計算が 1 回のシミュレーションで完了します。すべてのソルバーが適切な物理的相互作用を使って計算されているため、作品全体を通して自然でリアルな水の相互作用を生み出すことができたのです。
SIGGRAPH 2019 では、クローズアップされた水とキャラクターとの相互作用をモデリングするための実用的なアプローチが発表され、水が肌の上を移動したり、肌から滴り落ちる際の表面張力や粘性効果が高い忠実度をもって再現されていることが注目されました。チームは『アリータ:バトル・エンジェル』(この作品の脚本もキャメロンが担当)のシーンを用いて、この時発表した手法により、キャラクター全体を水の層で覆うことができるほどパフォーマンスに優れ、かつ数ミリメートル単位のスケールで調整可能な解像度を持つエフェクトを実現したことを示しました。
このアプローチは、既存のセル内粒子(FLIP/APIC)ソルバーを、小規模な水と固体間の相互作用のダイナミクスを捉えるために適用するというものでした。この技術は、『アバター:ウェイ・オブ・ウォーター』の制作時に、水中からキャラクターが出現するシーケンスならどのようなものにでも対応できるように進化しました。
「ミリメートル未満のスケールで水のダイナミクスをシミュレーションする必要があったため、これは決して安価な解決策ではありませんでした。結果を得るため、計算に何日もかかることもありました。私たちは、私たちのソルバーがスケーラブルでロバスト、かつ信頼性が高く、アーティストにチューニングを求める必要を最小限に抑えながら、物理的にもっともらしいビジュアルをすぐに作成できることを証明する必要がありました。」- Unity x Wētā Digital プリンシパルリサーチエンジニア Alexey Stomakhin

例えば『アバター:ウェイ・オブ・ウォーター』でキャラクターが水中で呼吸するなどの水中のシナリオで現実感のあるダイナミクスを実現するために、水中の泡へのシミュレーションについては、関心領域の周りの狭い水域と一緒に泡をシミュレーションするというアプローチが採られました。泡そのものは、画面の主役となる泡(ヒーローバブル)と、拡散された泡の 2 つのパーツで表現されます。
ヒーローバブルは、弾け方が激しく、荒々しい挙動をする大きな泡を捉えます。非圧縮性の二相ナビエ・ストークス方程式をオイラー格子で解き、気相は FLIP/APIC 粒子で表現し、体積保存と正確な界面追跡を容易にします。
拡散する泡については、オイラー格子の解像度に満たない小さな気泡の動きを捉えます。チームは、拡散する泡の粒子とバルク流体を結合させる新しい方式を開発しました。この方式は、砂、髪、布など、水中にある他の多孔質物体にも適用できる可能性があります。
Wētā Digital と IST Austria のチームは、水面のシミュレーションの視覚的なディテールを高めるために、シミュレーションを入力とし、その上に詳細なラグランジュ水波をシミュレーションすることで見かけ上の解像度を高めるポストプロセッシング手法を開発しました。
線形水波理論を拡張し、バルク流体表面上で広がるスプライン曲線に取り付けられたラグランジュ波パケットのある非平面領域でも適用できるようにしました。この手法では、基礎となる流体シミュレーションに合わせ、分散された波のような挙動を持つ高周波の波紋を生成します。
水中の動きによって生まれる水中の泡が水面に到達し、あぶくに変化する動きをリアルに表現する技術が開発されました。これは、『アバター:ウェイ・オブ・ウォーター』で水が登場するほぼすべてのシーンで重要な役割を果たしました。
通常、バルク流体のような大規模な運動を捉えるために使用される格子ベースのナビエ・ストークスシミュレーターは、本質的に格子の解像度による制約があり、砕けた波から生じる水しぶきや霧のような小規模な現象にはこの手法は実用的ではありませんでした。こうした急流を表現するエフェクトは、通常、独立したラグランジュ粒子としてシミュレーションされます。
「急流を表現する私たちの手法の重要な点の 1 つとして、泡と結合した格子ベースの流体ソルバーと、水面に拘束されたあぶくに使う SPH ソルバーの 2 つのソルバーの相互作用があります。Loki の宣言型ソルバーフレームワークは、ゼロから新しいソルバーを開発することなく、これらの複雑なシステムの構築とサポートを制作に置いて可能にしてくれます。」- Unity × Wētā Digital シニアリサーチエンジニア Joel Wretborn
既存のソルバーの多くが軽視している重要な要素に、集団効果があります。泡の集団は、その浮力が組み合わさることで単一の泡よりも速く浮上し、多くの泡の集合は水の動きに大きな影響を与えます。
この新しい技術では、泡を周囲の流体と組み合わせて、双方向にシミュレーションすることで、この制約に対処しています。これにより、泡の集合のエフェクトを効果的に捉え、泡と流体の動きがよりつながりのある見た目で表現されます。泡が水面に到達すると、水面に拘束された「湿った」あぶくの粒子に変化し、平滑化粒子流体力学(SPH)を使って離散化されます。その結果、クローズアップと大海原のショットの両方で、信憑性のある急流のダイナミクスを再現することができました。
Water Taskforce が使用したシミュレーション技術は、Wētā Digital の現メンバーおよび元メンバー、および Wētā FX や学術機関からの協力者によって開発されました。ここに開発に参加したメンバーの名前を記します:Alexey Stomakhin、Joel Wretborn、Kevin Blom、Gilles Daviet、Steve Lesser、John Edholm、Noh-Hoon Lee、Eston Schweickart、Xiao Zhai、Sean Flynn、Andrew Moffat、Gary Boyle、Tomas Skrivan、Andreas Soderstron、John Johansson、Christoph Sprenger、Ken Museth、Chris Wojtan。Unity Wētā Tools ベータ版の詳細もご確認ください。