『FFXIV』のキャラセットアップと物理シミュレーションに迫る
2016年8月24日~26日の3日間、パシフィコ横浜で開催された、日本最大級のコンピュータエンターテインメント開発者向けカンファレンス“CEDEC 2016”。最終日となる8月26日に、レギュラーセッション“FINAL FANTASY XV - CHARACTER&ENVIRONMENT WORKFLOW”が行われた。本稿では、その模様をお届けする。
本講演は、『ファイナルファンタジーXV 』(以下、『FFXV 』)における“キャラクター・パート”、“キャラクターセットアップ・パート”、“エンバイロメント(背景)・パート”の、3項目の制作ワークフローに関する議題に関するもので、それぞれのパートを、スクウェア・エニックスの第二ビジネスディビジョンに所属する3名のアーティスト、佐々木啓光氏、黒坂一隆氏、村松瑞樹氏が説明するものとなっている。
『FFXV』のキャラクターアセットのチャレンジと取り組み
まずはじめに、リード3Dキャラクターアーティストの黒坂一隆氏より、“キャラクターパート”における講演が行われた。講演の内容は、“キャラクターアセット概要”、“FFXVにおけるキャラアセットのゴール/チャレンジ”、“アセットワークフローと、その効率化の為のツール紹介”の3つ。
▲スクウェア・エニックス 第二ビジネスディビジョン リード3Dキャラクターアーティスト 黒坂一隆氏
主人公・ノクティスのデータ概要として、ポリゴン数は10万トライアングル、マテリアル数は6〜8個程度、テクスチャメモリは1体辺り、おおよそ20MB程度。視点によってポリゴン数を可変させるLOD(Level of Detail)に関しては、0〜7段の8段階、ジョイント数は600本と、かなりの量を使用している。
『FFXV』で使用しているシェーダーについては、物理ベースBRDFモデルという、かなりクラシカルな物理シェーディングを利用しているが、黒坂氏曰く、『ファイナルファンタジー 』ナンバリング作品では初めて、物理ベースレンダリングとシェーダーを採用した事例であるとのこと。
▲ランタイム描画方法では、“Deferred”と“Forward”という、キャラクターアセットを表現するにはちょっと面倒な手法を駆使して、『FFXV』のキャラクターを描画している。
▲Eye Shaderで、左側が角膜の屈折表現が入ったシェーダーで、右側が通常のシェーダーのもの。画像ではわかりにくいが、表面的な反射はそのままに、角膜が屈折している。
▲こちらはSkin Shaderのオンとオフの比較画像。
▲続けて、Hair Shadeでの擬似的なBack Scatter効果の比較。オンにすることで、後方からの光により、髪の毛の輪郭が透過しているかのような効果が得られる。
▲『FFXV』のLOD(Level of Detail)は、0〜7段までの8段階を用意。同一スケールで比較すると、右側のキャラクターのポリゴン数が圧倒的に不足していることがわかるが……。
▲実際にはこのようにカメラがひいた状態で使用されるため、この程度のローモデルでも問題はない。
▲ちなみに、視点の変更にあわせてLODモデルの切り替えが行われているが、いつ変わっているのかわからないくらい、シームレスな切り替えが行われている。
続いて解説が行われたのは、『FFXV』キャラクターアセットのゴールとチャレンジについて。スライドによると、リニアワークフロー、物理ベースレンダリング、シェーダーカスタマイズ、テクスチャトリーミング、汚れ表現など、多岐の項目に及んでいるが、最終的な目標としては“打倒 PreRender!”であるとのこと。スクウェア・エニックスの第二ビジネスディビジョンは、ゲームパートと、ハイエンドフルCG映画『キングスグレイブ ファイナルファンタジーXV 』のチームが共同で開発に携わっているところであるため、日々進化するPreRenderの技術を目の当たりにしているからこその目標であると、黒坂氏は語っていた。また、ハイエンドで培った技術ワークフローをチーム内で共有することで、グラフィックの品質向上に大きな貢献も果たされている。
▲こちらの画像は、ニックス・ウリックのプリレンダリング画像とリアルタイムレンダリング画像の結果を比較したもの。このようにそれぞれのモデルの結果を比較することで、情報の整理が容易に行うことができ、シェーダーやライティングのエンジニアに要望をフィードバックしやすくなる。
▲同一ライティングのモデルデータのプリレンダリングとリアルタイムレンダリングの比較。このような比較ができるというのは、両者のテクノロジーが近づいている結果であると黒坂氏は語っていた。
黒坂氏自身、キャラクターアーティストとしてプリレンダリングとリアルタイムレンダリングのどちらも作業をすることがあるそうだが、両者の長所短所を実感しており、今後もリアルタイムのキャラクターアセットのグラフィック向上を目指していくとのこと。
▲こちらは、ワークフローと効率化ツールについての基本的なアセットフロー。ハイエンドゲームのワークフローとしては一般的なモデルとのこと。
▲シェーダーワークのカテゴリーについては、“Shader Editor”というツールを使用。この“Shader Editor”の特徴として、ノードベースでグラフィカルにシェーダーをカスタマイズすることが可能になる。
▲こちらはヘアーモデルのワークフローの例。2Dのアートラフイメージを元にマネキンにウィッグを装着したモデルを作成。これは、髪の毛の構造を理解して、その後の作業をしやすくするためとのこと。それからヘアカーブモデリングを作り、最終的にプリレンダリングで確認を行っている。
セットアップセクションとなることで、どのような効果が得られるのか
“Character Setup Part”では、セットアップアーティストの村松瑞樹氏がスピーカーとして登壇。『FFXV』におけるセットアップ事例の概要が語られた。村松氏が所属するセットアップセクションでは、従来まではキャラモデルセクションとモーションセクションのセットアップ作業をおもに取り扱っていたところ、本作においては、エンバイロメントセクションとエンジニアセクションも含めて、仕事の範囲を拡大化。セットアップセクションとして独立したのは、案件ベースで統括的に取捨選択する窓口としての役目を持つためとのこと。
▲スクウェア・エニックス 第二ビジネスディビジョン セットアップアーティスト 村松瑞樹氏
▲こちらが、セットアップセクションで実際に取り扱った案件。
▲キャラクターセットアップの要件として、“複雑な髪型、衣装”、“プリレンダに迫る”、“揺れそうなものは揺らす”、“環境とキャラの融合”があげられる。
『ファイナルファンタジーXIII』(以下、『FFXIII』)と『FFXV』のジョイント数を比較。『FFXIII』と比べると、『FFXV』は1.5倍のジョイント数を誇っている。
▲開発環境で使用したスタティックリグモジュール“CRAFT”。これは、モジュールベースでリグを設定するためのプラグインで、スクウェア・エニックス自社開発のツールとのこと。
▲こちらもスクウェア・エニックス自社製のリアルタイムエクスプレッション“Kine Driver”。回転座標系がヨー、ロール、ピッチで扱うことで、破綻のない回転補正を行え、正しい形状で間接補完が機能する。
▲MAYA上でオーサリングを完遂し、プレビューすることができるという、Cloth Simulation“BONAMIK”。
▲風による挙動では、風向きに準じた押し込む風の“Drag”と、反転動作でばたつく“Lift”という力を組み合わせて表現している。
▲独特のヘアスタイルを実現するため、形を保つ力と、移動重力・風の影響力を分けることで、堅そうなのによく動くという、矛盾したシミュレーションを実現。
▲濡れたときにヘアスタイルが崩れるといった、状況によるパラメータの変化も実装。水中での揺れ挙動の変換なども実装していたとのこと。
背景デザインの概要とチャレンジ、ワークフローを紹介
本セッションの最後の議題は、“Environment Part”について。リードエンバイロメントアーティストの佐々木啓光氏がスピーカーを務め、『FFXV』のEnvironment Partのチャレンジとして、世界を作る、最先端リアルタイムグラフィック技術を網羅、開発環境の構築とゲームの同時開発に取り組んでいるとのこと。
▲スクウェア・エニックス 第二ビジネスディビジョン リードエンバイロメントアーティスト 佐々木啓光氏
ここで、3月のイベントで公開した動画“FINAL FANTASY XV World of Wonder: Environment Footage”を紹介。これは、『FFXV』からゲーム要素を取り除いたときに見える世界そのものをフィーチャーした映像作品。夜になる、雨が降る、朝の湿った空気、表情を変える雲、そういった当たり前のことをひとつひとつ丁寧に磨くことで、『FFXV』の世界をリアルに感じてもらうだけでなく、魔法、チョコボ、召還獣といったファンタジックなものも、あたかも現実のものであるかのようにユーザーに楽しんでもらえるように設計がなされている。
▲これが『FFXV』におけるエンバイロメント案件。相当多岐に渡っての項目に携わっていることがわかる。これらの案件を、エンジニアとひとつひとつ相談して、検証しながら解決してきたとのこと。
「この規模のゲームを製作しながら、同時に開発環境を作るのは非常に困難でした。ようやく形になった我々の開発環境は、『FFXV』開発スタッフからの過酷なフィードバックを受けて、最先端かつ超実践的なゲームエンジンとなっています」と、佐々木氏はエンバイロメントの取り組みについて語っていた。
▲まずは既存のデータを実機出力するところからスタート。
▲続けて、新規アセットの制作に着手。撮影できない場所の作成などはリファレンスをもとに再現し、少しずつアレンジを加えていく。
▲自然地形は、ロケハン体験をもとに作成。ワークフローの整備を行ってきたので、新規合流者のみでロケ作成を行うことも。
▲キャラクターと同じく、エンバイロメントもフォトグラメトリーを活用している。できあがったモデルだけではなくて、撮影データも素材として利用しているとのこと。
▲葉の透過率などは、実物を大量に用意して計測を行うほどの徹底ぶり。こうして作製されたアセットは、管理ツールに登録され、プロジェクトで共有されることに。
▲区画に関しては、小規模な区画を作成し、それを拡張していくという手法を採用。
▲こちらは、カーブとドライブの検証の様子。植物の配置の検証も同時に行われている。初期の頃は、右下にあるようなポリゴンベースでオーバル状の簡易的なコースで挙動テストを行っていたそう。
▲ハイトマップにカーブがひけるようになると、さまざまなシチュエーションに応じたロケーションが作れるようになるため、それぞれのシチュエーションに応じた仕様の洗い出しが可能に。
▲地形デザインについては、大陸設計でクレイモデルがある場合などは、ハイトマップの出力の流れを取っている。
▲ライティングと環境設定に関して、『FFXV』はダイナミックなライティング環境になっている。詳しくは、siggraph2016で発表した“TALKS:Rendering Techniques of Final Fantasy XV”を参照してほしいとのこと。
▲24時間の時間変化や天候変化も、現実の世界で測定した数値を元に設計、大陸設計により制御されている。
世界を作り、最先端グラフィック技術を可能な限り実装し、開発環境を構築。ベストを尽くした結果、さまざまな課題も浮き彫りになったが、アートとテクノロジーの融合が、スクウェア・エニックス ビジネスディビジョンのテーマにもなっているとのこと。現状に満足することなく、さらなるチャレンジを続けていくことを最後のあいさつにして、本セッションは終了となった。