戦車同士による模擬戦競技「戦車道」をテーマに、女子高生チームが奮闘する姿を描いた『ガルパン』こと、『ガールズ&パンツァー』シリーズの最新作『ガールズ&パンツァー 最終章』第4話が昨年秋に劇場上映され、大好評を博している。

記事の目次

    関連記事
    UEを活用した迫力の戦車戦『ガールズ&パンツァー 最終章』第4話メイキング(1)~ワークフロー篇
    UEを活用した迫力の戦車戦『ガールズ&パンツァー 最終章』第4話メイキング(2)~戦車&キャラクター篇

    『ガールズ&パンツァー 最終章』第4話
    10月6日(金)より、上映中
    監督:水島 努/脚本:吉田玲子/アニメーション制作:アクタス/製作:ガールズ&パンツァー 最終章 製作委員会/配給:ショウゲート
    girls-und-panzer-finale.jp
    ©GIRLS und PANZER Projekt © GIRLS und PANZER Film Projekt © GIRLS und PANZER Finale Projekt

    カット制作からエフェクトまでUnreal Engineを本格活用

    左より、テクニカルディレクター・足立 真氏、3DCGI副監督・髙橋慎一郎氏、システムエンジニア・濱崎宏之氏、3DCGI監督・柳野啓一郎氏、CGIデザイナー・剣持真人氏、CGプロデューサー・花木海斗氏、プロダクションマネージャー・遠藤 司氏(以上、株式会社アクタス

    『最終章』におけるUEの利用は第2話から。当時はとにかく映像に使えるかたちにもっていくのが主題で、続く第3話ではワークフローとして拡張できる基礎固めを行なった。そして本作では、より発展型のかたちになっている。基本的なフローは以前と変わらないが、走行煙や着弾跡、雪、吹雪、砂嵐などのエフェクト類を充実させ、背景モデルも近・中・遠距離用にそれぞれ用意した。

    UEの導入に伴って、3D側の制御を必要とする場面も増えた。例えば、吹雪の見え方やトンネルに入ってからのライティングなど、従来は背景美術が担っていた部分をCG側が担当するようになった。頻繁に3ds MaxからUEにデータを取り込むため、内製のカットセットアップツールも用意されている。そのほか、UE導入による大きなメリットは、リアルタイムでエフェクトを確認できること。

    ファイルの書き出しも高速で、3ds Max用プラグインのAfterBurnよりも高速でリッチな表現が可能に。クオリティについてはAfterBurn以上、FumeFX以下という評価で、UEはアップデートを重ねるたびに品質が向上しているという。

    UEによるカット作業のながれ

    カット作業のブレイクダウン。

    • BG、戦車、キャラクター、プロップなどの各種データを使って3ds Maxでレイアウトを作成。OKが出たらEXRでレンダリングする。木や地面など、戦車のアニメーションに関わるものは3ds Max上に配置
    • After EffectsにEXRを読み込んだ際のチェック用画像
    • 内製ツールを使って、戦車のモーションやカメラの位置情報、地面や木のメッシュを3ds MaxからUEにインポート。UEではカットごとにベースのレベルを複製して、そこに3ds Maxからインポートした素材を配置し、シーケンサーを作成する
    • フォリッジやデカール、マテリアルの設定、エフェクトの追加など、カットに合わせた設定を行う
    • 内製のレンダリングツールで素材ごとに一括でレンダリング
    • After Effectsでコンポジット

    雪原シーンで使用したBGアセット

    雪原シーンを例に、UEで用意したBGアセットをいくつか紹介する。

    • 3ds Maxによるベース地面。スキーで滑り落ちる際にアニメーターが演技のために地面を変形しやすいように地形変形用ヘルパーを仕込んだ地面アセットが用意された。なお、これを使わずに自分でモデリング(UV展開含む)して作成しても問題ない。スキンラップで負荷がかかることが判明したので、地形が決まったらスナップショットでメッシュ化されている
    • UEの地面の一例。3ds MaxからFBXで書き出された地面をスタティックメッシュとしてUEに読み込み、レベル内にある地面用Blueprintのメッシュをドラッグアンドドロップで差し替えている
    • 雪だまり制作の様子。BlueprintのFoliageでメッシュとデカールをセットにしたものをつくり、これにより地面に対するめり込みをカバーさせてなじませている
    • 実際に制作した雪だまりの例。岩と地面の境界隠しや、木のぶっ刺し隠し、単調なBGのディティールアップなどに使用している
    • 木のアセットの一例。カメラ距離に応じて低ポリから高ポリへと自動で切り替わるLOD機能を使うとパカついて見えるため、「低/中/高ポリ」の3バリエーションを用意。画像は高ポリものもで、マテリアルの「ワールド位置オフセット」を使って枝に積もった雪が盛り上がる処理を加えている
    • 岩のアセットの一例。Megascansのものを改造して使用。角度が変わっても指定した方向に雪が積もるしくみをマテリアルで組んでいる。また、積もる方向もパラメータで制御可能
    • 一連のアセットを使ってつくられた実際のカットの例
    • 麓アセットはスキー場などに使用され、ネット、ライト、バナーやリフトなどが用意されている
    • UEのVolumetricsプラグインコンテンツを活用して制作した雲海。ノイズ連番が並んだレンダーターゲットをベイクしてできたテクスチャを使っており、テクスチャサイズの変更によってディテールアップが行える。しくみとしては、マテリアルのカスタムノード上にHLSLのシェーダコードを記述してテクスチャを読み込み、レイマーチング法で描画しているというもの
    • ロッジのアセットのひとつ。3ds MaxとSubstance 3D Painterで制作したモデルとテクスチャをUEに読み込み、UE上でマテリアルを作成。LOモデルとしては、UEと3ds Maxのどちらに配置しても問題ないようにしてある
    • 冒頭に登場するダム穴。3ds Max上で距離を変えたり変形したりできるようにつくられている。調整後に雪原の地面同様FBXを書き出してUEに読み込み、専用のBlueprintにてスタティックメッシュと差し替える。瓦礫に関してはアニメーションが必要なものはFBXとABCの2種に分けて3ds Maxから書き出す。形が変形せずトランスフォームのみで完結するものはFBX、変形するものはABCとしてUEにもっていく。ただし配置のみであれば、木や岩などと同じで3ds MaxとUEのどちらで配置しても問題ない
    • UEのダム穴。穴にはゴッドレイ用のボリュメトリックライトが仕込まれており、必要に応じて書き出しすることも可能

    カット制作の例

    カット制作の一例を紹介する。

    • ダム穴のカットで3ds Maxでの作業画面
    • 完成したカット
    • 同じく、雪原のカットで3ds Maxでの作業画面
    • 完成したカット

    Niagaraとパーティクルで描く吹雪

    本作ではNiagaraで雪を、パーティクルで地吹雪を発生させ、この2種類を組み合わせてリアルな吹雪を描いている。

    ビューポートでのプレビュー
    • 雪マテリアル
    • 地吹雪マテリアル。雪と吹雪、どちらもマテリアルで距離による不透明度の調整と、オブジェクトに重なった際にボケる処理を仕込んでいる
    • 雪エリア。当初、雪は戦車の移動範囲を覆う巨大なエリアを用意する予定だったが、雪と雪の間に隙間が生じ、隙間をなくすために雪の量を増やすと負荷が高くなってしまい、レンダリングできなかった。対策として、負荷軽減のために限定したエリアのみに雪が降るようにBlueprintでパラメータをつくり、その値をNiagaraの「Kill Particles in Volume」に渡すことで発生源を絞り、軽量化している
    • Niagaraの「Kill_Particles_in_Volume」の設定画面
    • 雪のエリアはカメラと親子関係になっているが、追従を制御するため、Niagaraの「Inherit Source Movement」モジュールで逆方向に補正をかけている
    • Niagaraの「Inherit Source Movement」モジュール設定画面
    • 地吹雪エリア。地吹雪は立体感が出るように低空と上空の2種類を用意し、それぞれの量やサイズ、濃さ、流れる速度などがBlueprint上で調整できるようにされた
    • 地吹雪では8✕8の連番をまとめたSubUV用のテクスチャを使用し、動きのある煙を再現している
    • 吹雪のレンダリングの際は、素材を分けるために「PostProcess」コンポーネントを仕込んだBlueprintにて、吹雪素材のみグリーンバックになるようにレンダリングされる。黒で抜くと煙の影部分までくりぬかれてしまうため、グリーンバックを採用し、AEでキーイングしてコンポジットされている。これにより処理負荷を抑えたことで、吹雪のレンダリング時間は2,166✕1,246のサイズで120コマを10秒かからない速度でレンダリングできる
    • グリーンバック状態の吹雪
    • 吹雪なし
    • 吹雪あり。地吹雪を上空と低空とで分けたことにより、上空の視界がより悪くなり、吹雪の印象を強めている
    実際の吹雪カットの一例

    砂漠と雪原に描く戦車の履帯跡

    戦車の履帯跡は「Infinity Weather」というアセットを使用し、Shapeコンポーネントにコリジョンを作成して描画している。

    • Shapeにコリジョンを割り当てており、地面と触れた部分だけが凹む仕様。プリミティブを組み合わせておおまかに戦車の形をつくっているが、戦車1輌をなぞるためには最大60個近くのShapeが必要となり、処理の重さが問題となった
    • そこで本作では、アニメーションに応じて3タイプのShapeから最適なものを選ぶことで、1カットで使うShapeの数を削減することにした。図は最低限の接地面をなぞった「low」
    • 履帯と車体下部をなぞった「middle」
    • 遠景になるほど履帯跡が薄くなる効果も実装。カメラからの距離によって履帯跡の色や凹みの深さを自動調整する。履帯跡をどこまで表示するかはパラメータで調整できる

    履帯跡の生成システムは砂漠と雪原で同一だが、特に雪原の場合は地形によって履帯跡の深さが変わるため、これを調整できるようにした。また、積雪量が少ない場所はスキー板での移動を想定していたことから、戦車が滑走すると雪が削れる面積が大きくなり、履帯跡が目立ちすぎてしまう。そのため、そうした場所では他の履帯跡よりも底面部分の色を薄くして対応した。なお、戦車が走行した跡として履帯跡のみが画に登場するカットが一部あったため、それに応える設定も実装している。

    • 積雪量が多い場所
    • 積雪量がほどほどの場所
    積雪量が少ない場所

    雪崩の制作

    雪崩はUEによるものと3ds Maxによるもの、2種類を用意しており、中遠景ではUEによる雪崩を採用している。

    • UE上の雪崩
    • Phoenix FDでの流体シミュレーション検証。はじめは流体シミュレーションで生成されたメッシュを発生源にして、UEにてパーティクルを生成させようとしたが、頂点数が多いと重くなることと、Niagaraの発生源としてABC形式が対応していなかったため、SkeletalMeshとして読み込める形式にした
    3ds Maxでの雪崩のセットアップ画面。3ds Max上でスキンが入っているメッシュであれば問題ないため、セットアップはカット作業者が独自に対応している
    Niagaraの設定画面。3ds Maxからスキンを適用してアニメーションを付けたメッシュをFBXで書き出し、UEへSkeletalMeshとして読み込ませる。そのメッシュを発生源にして6種類の要素(雪煙と雪の塊を大きさを変えて3つずつ)をNiagaraで生成させている
    • 雪煙(大/中/小)をまとめて表示した状態
    • 雪の塊(大/中/小)をまとめて表示した状態。戦車が波乗りできる雪崩として、地面側には塊の雪が流れている必要があったため、雪煙だけではなく雪の塊も足されている
    • 雪崩の先頭にフォースが付いている様子。そのままだと木に当たっても動かないので、「RadialForce」コンポーネントを組み込んだBlueprintをシーケンサー上で雪崩の発生源となるSkeletalMeshのボーンに親子付けさせ、木のSkeletalMeshの物理で設定した当たり判定に当てることで、中遠景で使える簡易的な木の揺れを表現している
    • フォースによって木が倒れる様子
    • 倒れる木の当たり判定
    • 雪崩の厚みの表現。演出上、雪崩の下を走行するシーンでは、雪崩の方向がわかるように組み込んだライトをシーンに追加するかたちでライティング部分と影面部分を調整し、雪崩の厚みを表現している。レンダリング時には他のエフェクト同様グリーンバックで書き出し、AEにてコンポジットしている
    完成カット

    CGWORLD 2024年1月号 vol.305

    特集:海洋堂 デジタル造形移行への挑戦
    判型:A4ワイド
    総ページ数:112
    発売日:2023年12月8日
    価格:1,540 円(税込)

    詳細・ご購入はこちら

    TEXT_石井勇夫/Isao Ishii(ねぎデ
    EDIT_海老原朱里Akari Ebihara(CGWORLD)、山田桃子/Momoko Yamada