読者です 読者をやめる 読者になる 読者になる

スワイプの合間から

某所のUIデザイナーの備忘録

Unite2016 Tokyo講演覚書き/FGOのUnity活用術

カンファレンス・勉強会レポート

Fate/Grand Orderにおける、ディライトワークス流Unity活用術

※講演資料・映像共に非公開

 

【メディア記事】

演出が光る「Fate/Grand Order」のバトルシーンの秘訣とは - GAME Watch

gamebiz.jp

 

 

デザイン編

 【キャラ制作フロー】

キャラクターデザイン、設定→立ち絵、アクションコンテ→バトルキャラ線画・最終コンテ

コンテは原作サイドのType moonが作成する。

※開発側は作成してしまうと、実現・実装を考慮して表現の幅が狭まるため

 “キャラクターらしさ”を最大限引き出せる動きを原作側につくってもらう

 

【キャラクタ表現法】

ビルボードを採用。セルルック。

開発当初はSpineなどのアニメーションツールを検討していたが

槍や大きな武器を振り回すキャラがいるため、どうしても平面的な表現にとどまってしまう。

そこでビルボードを採用し、武器のみを3D モデル化させるなど、立体的な表現を実現した。

 

【制作について】

3D&Unity開発経験~アニメ制作経験のある人材がいなかったため

キャラクターアニメーションはまず動画化しアニメ制作経験者がチェックしていく手法を取った。

クリエイターから上がってきた、動画に対して赤入れでフィードバック。

アニメ制作と似たような手法で進めている。

 

【アニメーションについて】

ロンチ当初、できるだけ武器種類別にモーションを共通化しようとしていた。

運営するについれて、各サーヴァントのファンやユーザー数・反響が大きく方針変更。

キャラクターの魅力が出るよう、それぞれ固有のアニメーションを制作することに。

エフェクトも固有のものに

実装編

【エフェクトについて】

インビジブル問題

※本編に登場するセイバーの剣。実態がなくエフェクトのみ

Maya側にUnity経験者がいないため、表現方法で頓挫。

プログラム側で対応できないかプレハブをダミーノードにぶら下げることで対応

 

【キャラクターの進化について】

仕様上、進化が3段階。キャラクターは見た目も絵も変わる。

バトル用のキャラクターも勿論それに対応しなくてはいけないが、データ量を増やすことができない。

そのため、1つのテクスチャの中に進化分のパーツを全て組み込むということを実施

テクスチャサイズ:1024×1024~2048×2048

Maya上では全ての形態を表示組み込んだ状態。(重なった状態)

プログラム側で必要なものだけ呼び出す処理をしている。

 

【アニメーション管理について】

バトルキャラ・エフェクト共に固有のものがあり、ユニーク。

Playmakerを使用することで管理。

デザイナーやプログラマーとは別にこのPlaymakerを管理、Unity上での調整などを行う

Unityエンジニアをアサインして管理している。

 

【必殺技について】

Playmakerでは管理しにくいため、

uSequencerを使用して、横軸のアニメーションを管理

(AfterEffectsなどのムービー編集ツールと変わらないようなもの)

 

キャラクタ・エフェクト・カメラ等、全て配置し必殺技のみのシーンを作成し、デザイナーがアニメーションを作成する。

ゲーム内に組み込む際はUnityエンジニアが調整

デザイナー内でアニメーションが作成できるので能率アップができる。

いざというときにはプログラム側で対応する

 

【まとめ】

様々な制約や方針変更等、要望に応えられるような柔軟な設計にしよう!!

 

  • 所感

もともと熱量の高いファンのいる作品のため、いかにキャラクターらしさを体現するかをかなり苦労しながら制作しているのが感じ取られた。

Unityアセットの動作確認・修正などUnityエンジニアという専用のポジションなどを設けてはいるが、今後キャラクターの追加やモーション・エフェクトがバージョンアップしていくなかで、このやり方ではなかなか厳しくなってきそうな印象ではありました。

あくまでも演出の1つ、直接的な売上に繋がるかは微妙なところではありますが、現状のユーザーの熱量を考えると思い切って踏み込んだなと感じました。

今後、会社内でセクションをある程度越えて、対応できるような人間を育成または雇用する必要性を感じました。

一体辺り制作にかかる期間やコストが知りたいところ。

活用術というよりかは活用法と言った方がいいだろう。

Fateブランドはやはりすごい・・・