>   >  リアルタイム表現の限界突破! Unityによる映画クオリティのフルCGショートフィルム『Windup』
リアルタイム表現の限界突破! Unityによる映画クオリティのフルCGショートフィルム『Windup』

リアルタイム表現の限界突破! Unityによる映画クオリティのフルCGショートフィルム『Windup』

リギング&アニメーション

リギングと形状破綻への対応

リギングされたKikiアセット。フェイシャルコントローラの選択UIに、Malcolmリグで知られるAnim Schoolが提供している「AnimSchoolPicker」を採用。後述するような布の柔らかな形状変形を表現するためにできるだけ多くのジョイントを使用し、FBXでUnityへ渡している

フェイシャルはジョイントによるアニメーションとブレンドシェイプが併用された。さらに、顔・布そのほかに現れる形状破綻に対しては、PSD(Pose Space Deformation)やRBF(Radial Basis Function)を用いて自動修復されるしくみになっている

Mayaで制作したアニメーションをUnityで受け取る

Mayaによるアニメーション作業。ショット単位だけでなく「走り」など、より汎用な単位でも出力された。「Unityへアニメーションをインポートする際に注意したいのは、Unityがゲーム開発のためのものだということです。そのためデフォルトではアニメーションデータに圧縮がかかるようになっていますが、これをOFFにして読み込む必要があります」(リギングアーティスト・Victor Vinyals/ヴィクター・ヴィニャルス氏)

Unityによるショットワーク。エディタは使いやすく、アーティストからも好評だったとのこと

シミュレーション結果をジョイントにベイク

作中の布は、まずnClothでシミュレーションし、その結果をジョイントにベイクしてアニメーションさせている

Kikiの補助ジョイント。ゲームエンジンとMayaとのアルゴリズムのちがいから、ボディジョイント以外の書き出し用ジョイントは全て1つの階層に設置されている

セーターへのシミュレーション結果のベイク。変換にはWebber huang/ウェバー・フアン氏のプラグインが使用された。ボーン数が多いほど変換精度は高く、ロスが少なくなる

ショットワーク&レンダリング

ゲーム開発のスタイルを取り入れ自由度を向上

「一般的なアニメ映画の制作プロセスを列挙してみると、一見単純明快なように見えます【A】。しかし実際にはこのようにはいきません。良い映画をつくるためには、何度でも検討を重ねやり直しをする必要があるのです」(イービン氏)。制作工程が進むにつれて、カット割りが再検討されることもあれば、今まで見えていなかった技術的な課題が明らかになることもある。ショットワークからアセットへ、またはコンセプトへとステップは行きつ戻りつすることになり【B】、また序盤では手空きになる部門が発生したり、終盤では不眠不休の作業へとつながる。本作ではAAAゲームタイトルの開発スタイルを採り入れ、リアルタイムレンダリングによって各部門が常に最新の結果を見ることができるようにすることで自由度の高いプロジェクト運用を実現した

Unityの特性を活かしたショットワーク

Unityでのライティング作業。「多くのAAAゲームでは1つまたは複数のAOデカールを用いて落ち影を擬似的に表現していますが、映画内の効果として私たちの要求を満たすことができませんでした」(イービン氏)。そこで、HDRPの新バージョンで搭載されたシャドウレイヤーを切り替えることで、キャラクターのライティングと落ち影を分離してそれぞれ調整して対応した

カメラはMayaからFBXで出力される。このとき、命名規則とプログラマーによる対応で自動的に焦点距離・フレーム番号を読みとるしくみが構築された

各部門が並行して更新し続けるシーン制作

シーン制作では、まずカメラマンが単純な歩き・走りのループでキャラクターの移動経路を確認し、並行してマテリアルライブラリから質感設定を開始

続けて植生が追加され画角・ショットのつながりなどが整理される

アニメーションは順次更新され、ライティングではスポットライトが多数追加されていく。アニメーターは芝居に合わせて実際に演技をして動画を撮影、それを参考に精度を高めていく

さらにライティングを充実させ、ちりエフェクトや頂点アニメーションの加わった植生を追加。各部門がぞれぞれに担当部分を常に更新しながら作業が進められた

シャドウマップの設定

キャラクターライティングを担当したVina Kao Mahoney/ヴィーニャ・カオ・マホーニー氏(ドリームワークス所属、Unity Technologiesライティングコンサルタント)は映像業界では大御所な一方、本作までゲームエンジンは未使用だった。「いくつかのシーンでキャラクターの影がギザギザに見えてしまい、彼女はシャドウマップの解像度を上げようとしましたが、目立った効果は得られませんでした」(イービン氏)

本作ではライトマップ解像度を8Kに設定していたが、これは全ライトの総和であり、合計がこれを超える場合にはリサイズされてしまい、意図した解像度は得られない

重要でないライトの解像度を下げることで、効果的に影の解像度を上げることができる

高負荷なテッセレーションへの対応

テッセレーションはメッシュを細分割してディテール感を高めてくれるが、負荷も高い。「ハイコストな機能を使えば上手くいくだろうという考えは、非常に一般的な間違いです。シーン制作開始時にはこれを用いるのが好きな担当がいて、非常に重たい、またはクラッシュしてしまうデータを作成しました」(イービン氏)

そこでPixel Displacementを用い、ライトのRender ModeをForcePixelにすることで、地面や壁などのほぼ平らなオブジェクトではテッセレーションと遜色ない仕上がりを低コストに得ることができた。最終的には、1シーンで最大2までのテッセレーションシェーダしか存在できず、広い範囲で用いないという規定を設けることとなった



  • 月刊CGWORLD + digital video vol.264(2020年8月号)
    第1特集:Unity最新ビジュアル表現
    第2特集:視線を釘付けにするモーショングラフィックス
    定価:1,540円(税込)
    判型:A4ワイド
    総ページ数:128
    発売日:2020年7月10日

特集