[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

上段達弘氏(スクウェア・エニックス 第2ビジネス・ディビジョン プログラマ)
 CEDEC 2016最終日となる2016年8月26日,年末のAAAタイトルとして期待される「FINAL FANTASY XV(以下,FFXV)」に搭載されるAIシステムの詳細にスポットを当てた講演「FINAL FANTASY XV におけるレベルメタAI制御システム」が行われた。
 昨年のCEDECでゲームAIの意思決定などの基礎システムが講演されていたFFXVだが,今年のAIパートを紹介する講演では実際のゲームの中でどのようにAIが使われているかの実例と,そこで出た課題をいかに解決したかということまで踏み込んだ内容を,AIシステムを担当したスタッフ4人が解説してくれた。
 まず登壇したのは,メタAIを担当した上段達弘氏だ。彼の「FFXVの広い世界で,すべてのキャラクターはAIで動いています。メタAIに限らずできる限り多くのAIを紹介できればと思っています」との言葉から講演がスタートした。

講演用に編集されたイントロダクションムービーから。バトル,会話,プレイヤーとさまざまなところでAIが使われている様子が見て取れた
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは


レベルとAI間に起きる問題をメタAIに解決させる


[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
 まずは,講演のテーマにも出ていたメタAIと,ゲームに登場するマップやキャラクターなどのさまざまな要素を総括したレベルデザインとの関係から上段氏は話を始めた。

 レベルとAI間の大きな課題として「AIを止めたいけど止めたくない」ということがあったという。基本的に各キャラクターの行動は,AI Graph Editorによって,それぞれが環境や状況を認識して自律的になにをするかを考えて決定している。しかし,レベルデザインの都合上,イベントのために集合する必要が出たりなど,特定の行動をしなければならないことがある。このレベルからの命令は絶対で,ここでAIが勝手に動いてしまうとゲーム進行に支障をきたしてしまうのだ。もちろん,そういったときは,AIを完全に止めてイベント用の行動をさせることで問題を回避できるだろうが,AIを止めてしまうとさまざまなところで弊害が出てくるだという。
 例えば,集合して待機するといったシチュエーションでは,AIが動いているときは,プレイヤーが動くと仲間のAIがそれを認識して道を開けてくれる。しかし,AIを止めてしまうと,今度は仲間がプレイヤーの動きを認識せず,ただの障害物になってしまうのだ

 この課題の解決するために採った方法は,しごく単純で「AIを止めない」だ。もちろん,ただ動かし続けるだけでは問題があるので,待機中といった,ゲームの状況に限定した行動をするように設定したAIモードを複数用意して,レベル側からそれを適宜切り替えるようにしたという。

AIが動いているときは,プレイヤーが動くと仲間のAIがそれを認識して道を開けてくれる。しかし,AIを止めると,仲間が障害物になってしまう
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 次に課題となったのが「AIが判断できないことは,全部レベルが指示するのか」というものである。AI個人で対応できる状況には限度があり,レベルから各AIへ全部のことを指示するのも無理があったという。例えば,レベルからプレイヤーを誘導してほしい,というだけの指示があった場合に全部のAIが反応してしまう可能性があるからだ。

 手っ取り早く,レベル側が誘導してほしいキャラクターを指定すればいいのかもしれないが,指定した仲間がほかの仲間よりプレイヤーから離れていたり,そもそもゲーム進行上いない場合もあったりと,考慮すべき状況が多すぎてレベルにすべてを任せるのも無理がある。そこで登場するのがメタAIだ。このメタAIは,レベル全体を俯瞰しているAIとして置かれたもので,ゲームの状況応じて適切な仲間を適切なタイミングで指示し,全体をいい感じにコントロールするというもの。

先導してほしいというレベルからの指示があった場合,いったんその命令をメタAIが引き受ける。メタAIは各キャラクターの状況をチェックして,適切な仲間を選んで命令を伝達する。その後,命令されたキャラクターが行動するという具合だ。このようにゲーム内の状況を把握し,レベルとAIの橋渡しをするのがメタAIの役割だという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 また,ゲームでは,戦闘中に仲間がピンチになるとほかの仲間が助けてくれるのだが,メタAIがあれば,戦闘状況を見て,手の空いているキャラクターに命令を飛ばし,適切な一人が駆けつけてくれるようにできるという。逆にメタAIがない場合は,個々のAIがピンチの仲間の状況を知ると,一斉に駆けつけてしまう状況になってしまうことも……。いわば集団としての知性を与える役割も,メタAIが担っているといえるのだ。
 最終的に課題となっていた個々のAIで判断できない全体のコントロールは,メタAIを活用して解決していこうという方針で開発が進められることになったという。


ゲームの状況に応じて会話を選ぶAI会話量産システム


 続いて,このメタAIを活用したシステムとして「AI会話量産システム」を紹介していた。これは,世界を仲間と旅するゲームということで出てきた,状況に応じていろいろな会話を発生させたいという要求を実現するためのシステムだ。ゲーム中で戦闘や移動している間など,仲間といるときに会話を自然発生させるものだ。

会話の単位を台本としているため,台本システムとも呼ばれているAI会話量産システムの流れ。ここでもメタAIがフル活用されている
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 では,AI会話量産システムの具体的流れを見ていこう。まず,会話を再生したいタイミングで,レベル・メタAI,キャラクターAIから,AI会話量産システムへリクエストが発行される。このときに欲しい状況に合わせた台本グループを指定するという。
 続いて再生する台本の抽選だ。台本にはゲームの状況に応じた再生条件が設定されており,指定されたグループの中で,その条件を満たすものをメタAIがチェックして台本を選択し,その台本通りにボイスと字幕を使って再生する。レベルと仲間AIから会話をしたいというリクエストを送るだけで,メタAIが適切な会話を選んで再生してくれるようになっているのだ。

街に入ったとき,レベルが「街に入った台本グループ」をリクエストしたとしよう。次にメタAIが,時刻は「夜」で「イグニスが近くにいる」といった現在の状況を把握し,「街に入った台本グループ」の中から,条件に合う「イグニスが宿泊を勧める台本」を抽選するという流れだ
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
戦闘のときも同様。キャラクターAIから会話のリクエストがあったときに,バトルに余裕があるか,厳しい状況であるかをメタAIが判断して,適切なセリフを再生する
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 そして,会話を再生すると同時に,メタAIから各AIへ意識の変更が指示される。会話を聞いているキャラクターであれば「あなたは話者に注目しなさい」という指示が飛ばされ,話者であれば「話者として行動しなさい」という具合だ。続けて各AIはメタAIからの指示に応じて,体や首を話者へ向けたり,話者としてモーションを変えるといった,キャラクターが実際に行動を起こす意識表現を行う。
 FFXVでは,こういった一連の流れで自然な会話シーンを実現しているのだ。

会話シーンの注目点である話者(青い玉のある場所)を向いている様子。角度によって首だけを向けるか,体そのものを向けるかは各AIが自動で判断している
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
会話シーン以外でも,洞窟の中などで寒ければ震え,雨が振ってくれば天を仰ぐといった意識表現を行う。これは,プレイヤーが操るキャラクターにも適用されているという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
「AI会話量産システム」の最後に紹介された台本再生条件の例。「プランナーがExcelで簡単に指定できるようになっている」と上段氏は語っていたが,見せられた条件だけでもとんでもない数の組み合わせになる。いったいゲーム全体で,どれくらいの台本が用意されるのだろうか……
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

あらゆる状況に対応できるF2Fシステム



高橋光佑氏(スクウェア・エニックス 第2ビジネス・ディビジョン プログラマ)
 続いて登壇したのは,相手の顔を大きく映して行う対面式会話システム「F2F(Face-to-Face)」などを担当した高橋光佑氏だ。このF2Fは会話相手との距離が近いことが特徴で,カットインだけでなくプレイアブルな状況でも発生するものだという。

 このF2Fは大きく分けて,ゲームの全体状況を把握するメタAI,キャラクター個別の条件や動作に柔軟対応できるキャラクターAI,動的環境を把握できるナビゲーションシステムの三つで構成されていて,とくにシームレスなイベントの導入でこれらのAIをフル活用しているとのこと。そして,このF2Fに与えられた課題は,複数の発生状況に対して汎用的に対応できるようにすることだという。同じ会話データでも,フィールド上や車内,宿といった違う場所で発生したときに対応できる汎用性が求められ,課題の解決にはメタAIがキャラクターAIを補助するという形を採ったという。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 上段氏が説明してくれたように,メタAIは会話しているキャラクターがいるのがフィールドなのか車内なのかなども含めて,全体状況を常に把握している。このメタAIにサポートさせることで,レベルからF2Fをリクエストされたときに適切なタイミングで,キャラクターAIへ指定された命令を実行させることでき,汎用性を実現できたということだ。

 状況に応じてキャラクターがどう振る舞えばいいかという汎用性を持たせる問題は,メタAIで解決できた。次に課題として残ったのが「開始モーション」だったという。これは,F2Fがシームレスに開始するために発生した問題だ。とくに地上などのフィールドでは,操作されているプレイヤーは動き回るのでF2Fの開始地点が不定,かつ,いつでも発生する可能性がある。F2Fが発生してキャラクターが所定の位置へ移動しなければならないとき,どういうルートをたどればいいのか,実際に発生してみないと分からないのだ。
 この問題の解決には使われたのが,目標とする地点までの移動可能な道を検索してくれるナビゲーションシステムだ。このシステムに,キャラクターAIを補助させることで,課題を解決したという。
 このようにメタAI,キャラクターAI,ナビゲーションシステムをうまく組み合わせることで,シームレスなイベントに対応しやすいシステムとしてF2Fが作られていったとのことだ。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは


AIの行動を効率的に管理するAIモード


 次に先ほど話題に出ていたAIモードの詳細な解説が行われた。AIモードは,レベルデザイナーがなにか大きなくくりでAIに指示を行いたいときに用意されたもので,動きはAIに任せる通常状態「Normal」,キャラクターを待機させる「Wait」,指定場所への移動「Go to」,プレイヤーを先導して導く「Lead」,特定の場所を経由しての移動「Route」,余計なことをしないでプレイヤーについていく「Follow」などの行動単位を設定したモードになっているという。ゲーム中では,レベルデザイナーが望むモードに切り替え,ある程度指示を与えるだけで,あとはいい感じにAIが処理してくれるようになっているのだ。
 そして,このAIモードに求められたのは,レベルプランナーがAIの行動を柔軟かつ簡素に切り替えられることだけでなく,AIプランナーが各キャラクターのAI行動を効率よく作成・編集できることだったという。FFXVという広い世界で動いているすべてのキャラクターはAIで動いている。そのAIの数々を,いかに効率よく作り上げられるシステムにできるかが求められたのだ。

講演で流された今年の3月に無料配布したプラチナデモの映像より。ここでもすでにAIモードが活用されていたという。Leadモードでは,導き手となったキャラクターがプレイヤーと一定距離離れてしまうと,振り返ってプレイヤーが近くまで待つという動作をしてくれ,Routeモードでは,プランナーが通ってほしいポイントを設置するだけで,あとはいい感じにその道をたどっていく様子が見られた。高低差があっても問題なく移動可能だ
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 これらの要望を実現するために採った方針は二つ。レベルプランナーからのAI行動を柔軟かつ簡素に切り替えたいという要望には,共通の枠組みを用意することで対応したという。そして,AI行動を効率よく作成・編集するために導入されたのが,AIの処理を共有する仕組みである「アセット化」と,全体の構造はそのままに一部だけを変更できる「オーバーライド」だ。共通化の仕組みによってAIモードでは,異なるキャラクターでも同じ動作をすることができ,さらに部分的にオーバーライドすることで,個性を演出することができるようになったという。

「FFXI」のステート(状態)マシンと判断するビエイビア(振る舞い)ツリーをハイブリットで構成。それぞれの集まりをトレイとして管理し,階層構造を持っているという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
AIモードの枠組みを共通化することで,魔導兵や仲間キャラクターだけでなく,カーバンクルといった人型以外のキャラクターでも,同じトレイを用意すればレベル側から同じように操作可能だ
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
AIモードでは,トレイをアセット化できるようにしてリソースを積極的に共有。別のAIモードからでも,個別処理が必要なところ以外を使い回すことで,省力化を図れるようになっている
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
共通化・省力化を図りつつも,キャラクター独自の動き,いわば個性を作り出すためのものがオーバーライドとAIモードの部分編集機能だ。これを使うことで,例えば,キャラクターを誘導するという同じ行為を実行させたときにプレイヤーが離れてしまったら,魔導兵はそっけなく待つだけなのに,仲間キャラクターなら振り向いて手を振ったりすることができるようになっているという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは


AIで制御されているプレイヤーキャラクター


下川 和也氏(スクウェア・エニックス 第2ビジネス・ディビジョン プログラマ)
 講演冒頭で上段氏が「すべてのキャラクターがAIで制御されている」と語ったように,FFXVでは,プレイヤーキャラクターも例外なくAIの制御を受けているという。このプレイヤーキャラクターとAIの関係を,先ほどの高橋氏とともにAI Graph Editorの開発を担当している下川和也氏が登壇し,解説してくれた。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
 人の意志でコントロールするプレイヤーキャラクターを,なぜAIのコントロール下に置くのか。これは,ゲームへの没入感を高めるためにAIキャラクターが生きる世界と調和させることが必要と考えたのと,ほかのAIキャラクターと同じくプレイヤーキャラクターも,レベルやメタAIから制御できるような柔軟なシステムが求められたためという。

 「プレイヤー操作とAI制御を利用するにあたって,容易に想像できる問題が一つあります。それがコントロールの衝突です」と下川氏が言葉を続けた。プレイヤーによる操作とAIによる制御がぶつかり合い,ともに満足できない動作となってしまうこともある。一般的には,場面によって制御を切り替えるのだろうが,それでもスムーズに二つの制御をどうつないでいけばいいかという問題が浮かび上がってくるという。最終的に制作チームは,プレイヤーが操作している間もAIを並列に動作させるという方針で問題解決を図ったという。
 具体的には,プレイヤーキャラクターを実際に動かすプレイヤーコントロールシステムに対して,プレイヤー操作とAIのどちらかが独占するのでなく,互いに譲り合い・連携しながら命令を送るようにして,制御がぶつからないようにする。さらにレベルやメタAIからの調整も踏まえて,プレイヤーキャラクター動かしているのだ。

プレイヤー操作とAIの並列動作の概念図
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 これにより,ほかのAIキャラクターが持つ意識表現(とくに仲間たち)をプレイヤーキャラクターへも反映できるようになり,さらにプレイヤーキャラクターとゲーム世界を調和させることができるようになったという。

待機中の天候変化へのリアクションや移動中の会話などで,プレイヤー操作では実現できない,意識表現を実現している。プレイヤーキャラクターでありつつも,ゲーム世界のキャラクターとして存在できているのだ
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 レベルやメタAIによる制御によるイベントなどで,プレイヤーキャラクターもAIシステムを活用でき,演出の幅が広がったという。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
 下川氏は仲間キャラクターのバトルも担当したということで,続いてFFXVのバトルを彩る仲間との連携について,どのようにAIシステムが使われているかにも言及した。バトル中に仲間へアビリティを使うように指示ができるシステムだが,ここではプレイヤー操作とAIの併用,さらにさまざまなAIシステムを使っているという。

 具体的な例として,イグニスの仲間コマンドを映像で紹介。まず,イグニスが複数の敵にマークし,そのマークがついた敵にプレイヤー(ノクト)が連続攻撃,最後にQTEでトドメを刺すというバトルの一連の流れだ。ここでは,イグニスからノクトと攻撃を行っているキャラクターのAI制御(AI Graph)を経て,最後にボタン入力を感知して追撃モーションを再生しているところは,Sequence Graphで行っているという。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは


世界に生きるモンスターを作るAI


並木幸介氏(スクウェア・エニックス 第2ビジネス・ディビジョン プログラマ)
 講演の最後に登壇したエネミーキャラクター全般を担当する並木幸介氏は,今回のFFXVのモンスター制作を振り返って,三つの大きな変化が見られたという。
 一つめは「AI・アニメーションの細密化」だ。敵を動かすのに必要な物量が単純に増大しているのはもちろん,リアリティ追求の結果,アクションの同時化,並列化,細密化が進んだという。例えば,モンスターを移動させるのにも従来の「その場で回転してから行動」といった方法では,どうしても動作がギクシャクしてしまい,FFXVのクオリティに達しないと判断。そこで,行動しながら回転を行わせることで少しでも違和感をなくすように動作の並列化を行い,より生物感らしい動きにしたそうだ。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
最新のモンスターでは,頭をプレイヤーへ向けながら横にステップして飛びかかってくるなど,生物としてのリアリティをとことん追求している。プログラムを整備するとともにアニメーターと一つ一つデータを調整してクオリティを高めていったという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 その敵の動きのリアルさを実現するために,アニメーションのパラメータとして取り入れたのが回転トリガーだ。これは,敵がアクションしている間で,回転しても大丈夫な区間を指定するもの。例えば,四足動物の足がすべて地についているときに回転してしまうと,横滑りが顕著に現れてしまう。しかし,大きく足を振り上げたり,大きな動きをしているときであれば,さほど違和感なく回転できる。そういった回転が自然に振る舞えるタイミングを,ピンポイントで指定するのが回転トリガーの役割なのだ。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
自動でプレイヤーへ向かって攻撃する場合に,攻撃モーションに回転トリガーを入れることで,より自然に回転動作と攻撃動作を同時に行うことができるようになったという
[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは
 モンスター制作における大きな変化二つめが「データ増大にともなうワークフローの限界」だ。確かに細密化した膨大なデータによって,リアルな生物としてのクオリティが向上した。しかし,クオリティを求めた結果,扱うデータが極端に増大している。モンスターパートだけで,若干人の手に余るほどになってしまったため,できるところは自動化することを試みたという。
 その自動化の試みの一つが攻撃モーションの解析システムだ。攻撃モーションとコリジョン(当たり判定)から,解析システムが自動的に攻撃が到達する距離や角度を計算し,その結果をAIが利用することで,これまで人の手で調整した部分を半自動化することができたという。

 そして変化の三つめが「AIとアニメーションとの間が狭まる」というもの。2000年代では,AIとアニメーション技術は綺麗に分かれていたが,ここ最近はAIの細密化によってAIの担当者がアニメーションを触る必要が出てきたり,逆にアニメーション担当者がAIについて把握しておかないといけない状況が発生してきたと並木氏は語った。
 密接な関わりあいが進むことは,アニメーションとAIが一体化したシステムになってしまうことを意味し,よりクオリティの高いものが実現できるが,作業の分担ができなくなってしまうという弊害も発生しているという。すでにFFXVの段階で人の手に余るデータを扱わなくてはならなくなってしまっているので,これから先,さらにクオリティが求められた場合は,単純な作業負担の増大だけでなく,人力での対応が不可能となってしまうことも出てくるだろう。
 並木氏は,その問題を解消するための方法として挙げたのが,攻撃モーション解析システムのような自動化技術だという。AIとアニメーションの境界をうまくつなぐことで,分業のワークフローを維持しつつ,より一層の細密化,現実的なコストでクオリティアップができるだろうと話を締めくくった。

[CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは [CEDEC]「FINAL FANTASY XV」のレベルメタAI制御システムがもたらすキャラクター・モンスターの自然な挙動とは

 以上で,FFXVで使われたAI技術の解説が終了。かなり中身の詰まった一時間の講演だったが,おそらくこれでも搭載されているAI技術のほんの一部なのかもしれない。これら最新のAIシステムを持ったFFXVが,プレイヤーにどんな世界を見せてくれるのか期待をしつつ,発売を楽しみにしたい。