第1話+第2話の4D上映が好評の『ガールズ&パンツァー 最終章』。本作ではジャングルでの戦車戦にUnreal Engine 4が導入されている。そのねらいと実際のワークフロー、そして気になる効率化や実際の表現まで、詳しく紹介していきたい。
※本記事は月刊「CGWORLD + digital video」vol. 255(2019年11月号)からの転載となります。
TEXT_峯沢★琢也
EDIT_海老原朱里 / Akari Ebihara(CGWORLD)、山田桃子 / Momoko Yamada
『ガールズ&パンツァー 最終章』
監督・水島 努/脚本・吉田玲子/キャラクター原案・島田フミカネ/3D監督・柳野啓一郎/アニメーション制作・アクタス/配給・ショウゲート
girls-und-panzer-finale.jp
©GIRLS und PANZER Finale Projekt
戦車がジャングルを走り回る! 複雑でリアルな戦車戦を描ききる
『ガールズ&パンツァー 最終章』第2話では、大洗女子学園とBC自由学園とのボカージュ戦、そして知波単学園とのジャングル戦という2つの戦車戦が描かれている。Unreal Engine 4(以下、UE4)が活用されたのは後者のジャングル戦だ。3DCGに関わる主なスタッフは第1話から続投しているが、3DCGI監督の柳野啓一郎氏がSTUDIOカチューシャの所属となり、よりコアな部分から関わっていく体制が採られている。
左より、3DCGI監督・柳野啓一郎氏(STUDIOカチューシャ)、パイプラインテクニカルディレクター・小宮彬広氏(グラフィニカ京都スタジオ)
前列左から、佐藤友美氏、宇野 剛氏、熊谷奈々子氏、石井陽子氏、佐々木達朗氏、中野真佑氏、河野純一氏、後列左から、四本大介氏、弓場翔太氏、関戸雄太氏、竹内脩弥氏、石田周平氏、陳 禹澔氏、ジュリウス コサシ氏、原井翔太氏、遠藤 求氏、峯山 梓氏(以上、グラフィニカ京都スタジオ)
「以前に制作したOVA『ガールズ&パンツァー これが本当のアンツィオ戦です!』(2014)では森林などの自然物の表現でレンダリング時間をかなり取られてしまった経験から、今回のジャングル戦に関しては今まで以上の苦労が予想できました。その課題解決のためにUE4の表現とワークフローに注目しました」と語る柳野氏。UE4を専門としているIndie-us Gamesの中村匡彦氏に開発協力を仰ぎ、研究開発と一連のワークフローの構築を開始。調査と検証を含め3ヶ月ほどをかけ、その後に本開発に入って1年間ほどバグ修正を行いつつ本番のカット制作へと入っていった。
ジャングル表現にはUE4 マーケットプレイスで購入したアセットも使用して工期を圧縮。戦車は3ds Maxでレンダリングし、ジャングルの表現にUE4のリアルタイム表現を利用して、既存のモデルや表現開発の資産を活かしつつジャングル背景の部分だけリアルタイム表現に委ねるというハイブリッドな制作手法で挑んでいる。戦車のセットアップには極力アニメーターが「戦車の芝居」に注力できるように徹底的に自動化を図り、さらにUE4でのジャングルのアセット配置や調整もBlueprint(UE4上で動くノードベースのプログラミングツール)で構築して、こちらもアニメーターがセンスを発揮する作業に集中できるよう、ワークフローを設計したとのことだ。
「UE4を使わなければ予算的にも時間的にも厳しく、まさに不可能を可能にした感じです。ジャングル周りの表現開発、様々な修正や日々のリテイク作業に追いつくにはゲームエンジンのポテンシャルに頼らないと難しかった。2Dのアニメーションの中で3D美術が混じった上での密度感の統一も上手くいったと思います。本作でUE4を使用したことで、3DCGによるアニメーション制作に未来が見えた気がします。表現の幅が広がり、未来に面白さが見えてきたツールだなと。そういうデザイナーライクのツール環境を提供していけると思っています」とパイプラインテクニカルディレクターの小宮彬広氏。今後もさらに研究開発を進める予定とのことだ。今回はその詳しいワークフローを紹介していきたい。
©GIRLS und PANZER Finale Projekt
次ページ:
Unreal Engine 4篇:ジャングルの草木のインタラクションをエンジン上で表現
Unreal Engine 4篇:ジャングルの草木のインタラクションをエンジン上で表現
ジャングル戦の物量としては31カットがカスタムの背景。ほかに47カットはUE4で出力するものの、「背景バンク」素材としてレイヤー分けした素材として扱うことで、リソースの集中と分散のバランスをとっている。また、演出的なオーダーを満たす上では、技術面だけでなく、効率の面でも工夫が施されている。
本プロジェクトにおけるUE4向けの作業マシンはIntel Core i7のマシンにメモリは32GB、グラフィックスボードはGeForce 1070、もしくは1080と、ハイミドルスペックのゲーミングPC程度のマシンパワーでUE4での作業やレンダリングを行なっている。ただし様々な情報を内包できる分、相応にデータ負荷が大きくなるAlembicファイルの扱いをカバーするために、データは基本的にローカルマシンの中から読み出して作業を行なっていた。技術的に新しいことをするにあたって、「まずは設計思想を大切にしていた」という柳野氏。加えて「つくり手の自己満足的な技術の展覧会に陥らないように観客にどう見せたいか?」というアプローチからゲームエンジンの採用を検討してきた。そうした中、UE4に注目した点はリアルタイムに動かせるパワフルな描画処理能力、特にAlembicのデータ表示に優れており、UI自体もアーティストライクな操作感であったことが採用のポイントになったという。
「ゲームエンジンの採用に関してはセンスを発揮する場面で情報量が多い高密度のシーンを、作業者がリアルタイムに操作できる点が非常に強力だと思いました。アニメーターがレイアウトと演技に集中できるというのはやはり嬉しいですね。BGで既存のレンダリングしたものをくり抜くという意味では、ゲームエンジンをもっと取り込んでいきたいという思いもありますし、ゲームエンジンの設計思想を知っていけばエフェクトなども搭載できるのではないかと思っています。デザイナーが直感的に使えるツールであるゲームエンジンをどう使ったらベストな表現ができるのか、今後の進化の肝になるのではないでしょうか」と語る柳野氏。今後の話数でも技術と内容ともに新しい表現も工夫していくとのことだ。少し気が早いかもしれないが、第3話以降ではストーリーもさることながら、3DCGの表現力がどこまで高まるのかも楽しみにしたい。
UE4を活用するワークフロー
本作でUE4を使用したジャングル戦。全体的なワークフローとしては、まずは3ds Maxによる地面の設計と戦車のアニメーションをアニメーターが担当。戦車とキャラクター、砲弾といった主に背景以外の要素を従来どおりに通常の3ds Max上でレンダリングにかける。そこからジャングルの背景部分のみをカスタムツール「MAXtoUE4」にてUE4にエクスポートする。この際に戦車とカメラデータに関しては座標データでエクスポートできるのでFBXデータで。そして、キャラクターや揺れものに関してはAlembicにコンバートしてジオメトリキャッシュとしてエクスポート。それらのデータを中村氏に開発をサポートしてもらった「AIS(Auto Import System)」を使用してUE4上に読み込み、ジャングルの樹木の配置や挙動、履帯処理の設定を施してシーンデータを作成する。最終的には「背景を戦車のマスクで抜く」ので、各マスクやイメージをレイヤーごとに出力して、戦車と背景を合成していくというフローを採用している
実際の作業内容とデータの受け渡し
3ds Max
アニメーション作業
Export
UE4
Import
植林作業
Rendering
After Effects
ディテール落とし
最終コンポジット
アニメーション作業自体は3ds Max上で完結させる必要があり、戦車の挙動やキャラクターに関しても芝居はこの工程で付けてしまう。ジャングル背景の設定をする段階になってこれらの3ds Maxでのアニメーションデータを前 述のカスタムツール「MAXtoUE4」にてエクスポートする。この「MAXtoUE4」は、ただ単に書き出しツールというだけではなく、正確にコンバートする機能を含めており、FBXとAlembicデータの自動切り分けだけでなく、正確なカメラデータの受け渡し、ゲームエンジン特有のスケール・座標系の変換まで開発でサポートしたという。このデータを前述の「AIS」でUE4上に読み込んでシーンを再現して、ジャングルの植林作業と調整を施し、UE4上でリアルタイムにレンダリングされた映像を出力。この際にBlueprintで設定した各レンダーエレメントの素材を自動でふり分けていく。最終的にはアニメーター側で仮のコンポジットまで行なって撮影セクションに渡す。ここまでをCGアニメーター側で行う必要があったので、3ds MaxからUE4の作業まで極力作業者がアニメーション作業に専念できるように、自動化できる部分はツールで自動化し、リグやアセットに至るまでワークフローを工夫したとのこと
キャタピラの跡や押し倒される草の表現
まずはUE4に戦車アセットとジャングルアセットを読み込み、シーンを構築
UE4のフォリッジ機能を使用してジャングルの樹木を配置。フォリッジ機能のペイントブラシで地面をなぞると任意のアセットがランダムに自動で配置されていく。こうした作業はアニメーターが行なっていたのだが、これによりアニメーター目線のセンスを活かしたカメラワークや戦車の軌道、それらを含めたレイアウトを行なうことができる。リアルタイムに背景オブジェクトの配置を行うことができたのもゲームエンジンならではと言える
草木と地面に関しては戦車の履帯で踏み潰された跡が残るようにインタラクティブ処理を仕込んでいる。押しつぶされる地面の草はBlueprintでオブジェクトを処理。地面に残る履帯跡に関しても履帯がヒットした部分を白黒の画像で処理し、ディスプレイメントで凹ませ、さらにディテールを上げるため、履帯跡の画像をハンコを押すようにデカールプリントでテクスチャを貼り込んでいくといった処理をBlueprintでセッティングして、リアルタイム処理を行なっている
草木や落ち葉のアセット一覧
ジャングルの木々のアセットに関しては、落ち葉が8個、石が3個、背の低い草木17個(内8個がフィジックス対応で稼働する骨入り)、樹木が16個、枯れ木18個(樹木と枯れ木はこのうち17本が骨入り)と数多くのアセットを用意している。UE4 マーケットプレイスで購入したアセットのメッシュやテクスチャを改造したもので、ある程度ベースのアセットデータをライセンスクリアな状態で使用できるのも魅力のひとつだったという。前述のようにフォリッジ機能で草木を配置しているが、枯れ枝を樹木に巻きつけて蔦を表現し、UE4のマテリアル内のBlueprintを使い樹木のランダムな揺れも追加している。余談ではあるが、このランダムな表現にノイズ処理を加えているのもゲームエンジンである。UE4がワールドタイムベースで数値を算出しているので、これをゼロから始まるカウントベースに変更して、ランダムの数値が毎回同じデータを出力するようにBlueprint内での書き換えも行なっている
©GIRLS und PANZER Finale Projekt
[[SplitPage]]Blueprintによるカスタム機能
UE4のノード型ビジュアル・スクリプティング・システムであるBlueprintを使用して様々なカスタムの機能を追加している。前述の草原の履帯部分の処理を含め、3ds MaxからUE4へのインポート、およびシーケンサーへの自動配置は、中村氏によって開発されたAISプラグインによって行われた。UE4から各種素材のアウトプットに関してはカスタムのBlueprintノードを開発。データのコンバートに関してカメラデータも完全に一致する状態で転送することが必須だったのだが、3ds MAXからのFBXではFocalLength値を持っていけなかったため、FieldOfViewパラメータに変換したFocalLength値をFBXにベイクして読み込ませている。ほかにも戦車はモーションだけFBXで出力、戦車上のキャラクターはAlembicで出力と、データ構造も複雑だが単にツールで読み書きするだけでなく、正確にコンバートする。そしてデザイナーライクなUIに落とし込むまでを開発の設計思想として行なわれた
戦車やキャラクターの動きをUE4 に読み込む
戦車に関しては3ds Maxでレンダリングまで出力しているが、背景に関してはUE4でレンダリングを行い背景の動画素材を戦車のマスクで抜くという手法を採っているため「戦車とUE4で植林したジャングルを含むRGBマスク素材」が必要になる。ただし戦車のリグに関してはそのままUE4のアセットとして移行できないので、戦車の可動パーツごとに全てをオブジェクト化して「ひとつのオブジェクトにひとつのNull」をセットアップし、再構築した。3ds Maxでアニメーションを付けたそのNullの動きをベイクし、そのまままったく同じ構造にセットアップしたUE4の戦車アセットにFBXで各Nullの座標のモーションデータのみながし込む、という方法で解決している
-
3ds Maxの戦車リグ
-
UE4戦車アセットのNull
FBXで転送できない戦車上のキャラクターについてはAlembicで出力。UE4へのデータの転送には中村氏によって開発されたAISプラグインを使いコンバータをカスタムすることで橋渡しを行なっている
UE4で書き出すレンダーエレメント
UE4からの背景レンダリングの結果はAfter Effectsで合成するのだが、ここでもBlueprintを使用して出力データ設定のカスタマイズを行なっている。各種イメージデータのほかには、戦車を切り抜くマスク、被写界深度、スペキュラ、陰影、戦車の煙のマスク、オブジェクトIDと、現状のコンポジットワークフローの延長線上での素材出力が設計思想のベースになっている。現状の戦車のレンダリングに対してはそのまま使用して背景側とハイブリッドなかたちでコンポジットすることで、一足飛びに表現を変化させるのではなく、新しい技術を使用しつつも一歩ずつ確実な方法論で表現開発を行なっていることがわかる。カスタムの開発としてはゲームエンジンというツールということもあって、アニメーターがアウトプット時に手間取らないように、UIもシンプルなかたちに落とし込んでいる
レンダーセッティング画面
-
ジャングルの素材でカラー
-
デプス
-
スペキュラ
-
ジャングル+戦車の素材でデプス
-
マスク
-
シャドウ
-
戦車の煙
-
アニメの背景らしくなるようにジャングルのディテールを落とすためAE処理した素材
-
背景のみ
-
戦車のみ
完成カット
©GIRLS und PANZER Finale Projekt