>   >  VFXアナトミー:躍動感あふれるダンスモーションと一体化する流体表現、アクエリアス 1日分のマルチビタミンTVCM『ヒトは失う』篇
躍動感あふれるダンスモーションと一体化する流体表現、アクエリアス 1日分のマルチビタミンTVCM『ヒトは失う』篇

躍動感あふれるダンスモーションと一体化する流体表現、アクエリアス 1日分のマルチビタミンTVCM『ヒトは失う』篇

02 3DCGワーク

見た目としての美しさと動きとしての魅力を追求する

本プロジェクトでは、政本TDが監督とのやりとりを行い指針カットでのワークフローの確立と汎用カットへの展開を担当、泉川氏が汎用セットアップでは不可能である特別な表現をカットごとに異なるアプローチで制作するという分担で進められた。そして両氏に加えて、実写プレートのマッチムーブ作業に2名、ディスプレイカット用の商品ボトルの3DCG制作に1名、そしてクランチタイムのショットワークのヘルプに1名のほか、若干名が部分的に制作に携わったという。

流体表現に求められた物理シミュレーションは基本的にFLIPを使用。前述のとおり、CGカットは13に達したが、求められる動きがカットごとに千差万別だったため、基本的には全てのカットでR&Dを行なったという(求められた表現の高い難易度が存分に伝わってくるエピソードだ)。「水が飛散すると最初にツノのような形が発生します。そして面(水の膜)が出来た後に、膜に穴が空いて崩れながら消えていくのですが、穴が綺麗に空くように様々なアプローチを試しました。基本的には表面張力でコントロールしているのですが、表現や尺に応じて最終的には穴が空くタイミングを制御するために、別の仕組みを作成しました。演者の腕に当たって流体が飛散するという表現については、Houdiniのコリジョンが求めるクオリティに達しなかったので、それについてはSOPソルバーで別の仕組みを作りました」(政本TD)。

また、制作が進む中で当初の想定よりもハイディテールが求められていったため、水の屈折率については現実に正しい数値を入れるだけではなく、必要な画に応じて合成も併用する前提で複数パスに分けるなど、フレキシブルに変更していったという。「試行錯誤のくり返しでしたが、Houdiniのプロシージャルなワークフローは何かと都合が良かったです。飛散した流体が、演者のシルエット状にうっすらと残る表現では、一発でシミュレーションすると微調整が行えなくなるので複数のシミュレーション結果をコラージュしました。意図した動きに仕上がったら、まとめてメッシュ化してエクスポート。Mayaに読み込みV-Rayでレンダリングしていました。現実では水を意のままに操ることはできませんが、今回は綺麗なシルエットを保ちながらアニメーションさせるということを深く追求することができました。この経験をぜひ活かしていきたいです」(泉川氏)。

腕の軌跡に対して置いていかれるような動きをする水の膜の作業例

unitWaterとして、空中に残されて漂うのに適した水膜を用意

発生する場所、タイミング、レイアウトを自由に演出できる水膜であることが目的になったため、Houdiniによるシミュレーションではなく、Mayaで発生領域を直接モデリング、アニメーションさせることに。発生領域を通過する演者の手足を自動追跡するしくみをMayaで作成しつつ、Houdini上で通過後にunitWaterが発生するしくみを構築。unitWaterのキャッシュから水膜が作られるしくみはフルシミュレーションのHIPからの改造版である。パッと見では同じ組み方に見えるが、入力するものが発生エリアを示す変形プレーンへと変更されている



  • メッシュを張る



  • 【左画像】の拡大表示。上に昇っていっているのが、ビタミン化した水滴の表現

2種類の水膜メッシュを読み込んだ状態


中盤に登場する演者のシルエット状に流体がうっすらと残る表現の作業例



  • かなり短い尺の中で、水の動きは感じつつ、同時に人間のシルエットであることを認識させる必要があったため、パーツごとにVelocityの値などを個別に調整できるようにセットアップを構築



  • SDFを用いて作成した人物シルエットのノーマル方向への重力フォースを作成し、任意のシルエット形状になるように調整

作成したパーティクルキャッシュをメッシュ化


右腕が水滴や水膜に衝突するカットより。当初、FLIPで水滴を作成して直接コリジョンさせてみたところ、まったく画にならなかったため、このカットでも事前シミュレーションを適用させることに。ただし、汎用セットアップよりもコリジョンが重要になるため、アプローチは似ているものの、しくみとしてはまったく異なるものを構築したという



  • 事前シミュレーションにて、1粒の水滴が弾けて複数の水滴になるようにセットアップ。FLIPで表面張力と初速によって表現する。seedちがいで複数パターンのキャッシュを取得。このカットでは加速度ベースで合成するため、キャッシュを作成する際、加速度に動きを分解して記録しておく



  • 適用先のシーンでのキャッシュの読み込み部分。キャッシュを全フレーム、全種類、1つのデータテーブルにまとめられているため、後の計算では読み込みがいっさい不要となっている

空中でPOPソルバーにて水滴を浮かべ、人物の腕と衝突させている。本文でもふれたように、Houdiniのコリジョンが期待した精度を出せなかったことに加え、水滴のはじけるキャッシュデータとコリジョンの動きを上手く混ぜる必要があったことからコリジョンをSOPソルバーで加速度に分解して再現するという手法がとられた。弾ける動きのキャッシュとコリジョンを加速度レベルで混ぜ合わせることで一度のシミュレーションで作成したかのような自然な動きに仕上げている

カット頭から存在する、水が蒸発して浮遊している栄養素のパーティクルや追加演出でリクエストがあった水の膜を追加。栄養素のパーティクルは全カット通じて同じしくみで作成されている。演出として、栄養素の発光はあくまで屈折を通じて明るい色をたまたま拾ったものというルールがあった。そのまま屈折表現をしても上手く表現できなかったため、綺麗な明滅をつくるべくパーティクルにはこの段階で色情報やflicker信号がアトリビュートとして仕込まれている。そして、コンポジット作業時に屈折素材とかけ合わせることで明滅。flicker信号には、空間のエリアごとに黄色気味や赤色気味、あるいは指し色の青が入るようにするなど、明滅を人の目に気持ちの良いものにする役割がもたされた


商品(飲み)カット用の流体表現の例



  • ボトル周囲の水の表現は、演者に絡む表現の1案だったものをベースにカスタマイズ。元の案では長い1枚の水のシミュレーションを巻き付ける手法を採っていたが、ボトルのスケール感に対して繊細さに乏しく、細かなリテイクに耐えられないと判断。根本から構築し直された



  • 最終版では、表面張力などを繊細に調整した高解像度の水のシミュレーションを複数個用意し、コラージュのようにボトルの周囲に巻き付けるというアプローチを採用。これによりカメラ方向からのシルエットを意図した形状にコントロールしつつ、細かな細部のつくり込みやリテイクに対応できたという



  • 演者から発生した浮遊する水滴表現。人物の表面上を流れるようなフォースを作成し、任意のタイミングで法線方向にランダムに押し出すことで、水滴が体の周囲をまとわり付く表現を作成



  • 演者に対して、複雑に水滴が絡まる表現を実現するべく、演者の白黒マスクを用いてより正確な人物モデルを作成するセットアップを構築。トラッキング用のラフモデルを膨らませたOpenVDBデータと、白黒マスクのシルエットをカメラ方向へ押し出したOpenVDBデータを掛け合わせて、カメラ方向から見て、実写プレートにマッチするシルエットになるように調整された


カットオリエンテッドのライティング作業を極力避けるべく、全カット共通で使えるレンダリング用の背景セットアップを事前に構築。スタジオで撮影したHDRIと、実写プレートをプロジェクションした部屋モデルをアセット化し、トラッキング用のカメラを置いた段階で、おおまかに実写プレートとマッチする環境が作成された


水の膜は限りなく薄い表現が求められた結果、当初の想定よりも視認性が悪くなったため、屈折率ちがい等で複数タイプのパスを準備することに。反射と屈折も別パスで出力し、コンポジット作業で一部のエッジを目立たせる等の処理が行えるように下準備された

次ページ:
03 コンポジットワークほか

その他の連載