あらゆる分野でAIの活用が積極的に進められていますが、ゲーム業界ではどのようなAI技術が使われているのでしょうか。ゲームAIのスペシャリストが数多く在籍するスクウェア・エニックス社では、機械学習やコンテンツ生成、空間AIなど多岐にわたる分野でゲームAI技術の研究・開発を推進。2024年7月には長年にわたるAIの研究成果をわかりやすく紹介した技術書「スクウェア・エニックスのAI」を出版しています。
今回は本書で解説されている内容をもとに、ゲーム業界で実際に使われているAI技術について詳しく解説。お話を伺ったのは、ゲームAI研究の第一人者として活躍してきた三宅 陽一郎さんと、同社のAI&エンジン開発ディビジョンでジェネラル・マネージャーを務める荒牧 岳志さんです。
発行・発売:株式会社 ボーンデジタル 総ページ数:336ページ/オールカラー 発売日:2024年7月30日
ゲームAIとは?業務効率化にも貢献しながら進化
まず「ゲームAI」とは何なのか教えてください。
ゲームAIには本来さまざまな意味があります。広くは将棋や囲碁、チェスなどのAIも含まれますが、私たちが注目しているのは主にデジタルゲームにおける人工知能です。ゲーム内の3D空間でキャラクターが自動で動き、そこにある物なども上手く使いながら、プレイヤーに新しい体験を提供できます。ゲームAIの領域は多岐にわたりますが、その中にはゲーム全体を進化させるものや、ゲーム開発を効率化する生成AIなども含まれます。
ゲームAIは、いつ頃から使われるようになったのでしょうか?
1970年代から、アーケードゲームやPCゲームなどで使われるようになりました。敵キャラクターは決められた動きをするだけでしたが、ユーザーの満足度を高めるために「プレーヤー側のキャラクターの動きに合わせて行動する敵」が必要になり、そこでゲームAIの役割が注目されるようになりました。その代表例が1980年に発売された『パックマン』です。4種類の敵がそれぞれ異なるアルゴリズムで動くように設計されています。
敵キャラクターがいろいろな動きをするようになり、ゲームがより面白くなっていったんですね。
その後になると、RPGなどを中心にゲームAIが活用されることが多かったのですが、近年ではオープンワールドのアクションゲームなどでも使われるようになり、ゲームAIが活用されています。
ゲームAIにはいくつか種類があるんですか?
ゲームAIには大きく3つの分野があります。その中でも特にわかりやすいのが、ゲーム内の環境を認識しながら自律的に行動する「キャラクターAI」。最近の3Dゲームでは技術が進化し、キャラクターが周囲の状況を認識して自分で判断・行動する自律型AIが採用されています。キャラクターが他のプレイヤーの位置を把握したり、障害物を避けて最適なルートを選んだりすることが可能です。
キャラクターAIで、よりリアルで没入感のあるゲーム体験が可能になったということですね。
2つ目はゲーム内の地形を認識しながら、進む経路をナビゲーションする「空間AI(スパーシャルAI)」という技術です。人工知能は空間を認識したり、物を使ったりすることが苦手なので、複雑なマップの中で経路を見つける技術や物の使い方を誘導する仕組みが必要になってきます。例えば、弓を撃つキャラクターが次にどの場所へ移動すればいいのかなど、最適な位置を解析しながらキャラクターの動きをサポートしています。
地形の形状などをAIが認識するということですね。
「FINAL FANTASY XV の人工知能 - ゲームAIから見える未来」(ボーンデジタル)より転載
3つ目はゲーム全体の状況を統括する「メタAI」です。プレイヤーの動きや状況に応じて、敵キャラクターの増減やゲーム環境の変化などを自動調整します。常に新鮮で没入感のある体験を得られるように、俯瞰的な視点で全体をコントロールしています。以前は人の手でさまざまな調整を行っていましたが、メタAIによってゲーム開発終盤の詰めの作業を効率化できています。
ゲームAIを活用することが、ゲームエンジニアの仕事を効率化することにもつながっているんですね。
その他にも社内では、機械学習による自動リップシンクアニメーション(口の動きと音声を合わせること)の活用も進んでいます。今までは、ゲーム自体を面白くする目的でAIが使われていましたが、現在は業務効率化の用途にも技術の幅が広がってきました。
「キャラクターAI」で感情まで設計していく
キャラクターAIについて詳しく教えていただきたいのですが、活用することでどんなメリットがあるんですか?
ゲームが面白くなることに尽きると思います。ゲームをプレイしているときのことを想像してほしいのですが、モンスターやボスキャラクターと戦っている、あるいは街でアイテムを買っているときに、ゲーム内のキャラクターとのやり取りがワンパターンだとすぐに飽きてしまいます。 こうしたやり取りは「キャラクターインタラクション」と呼ばれており、仲間が敵の攻撃を代わりに受けてくれたり、回復してくれたりするなど、ゲームの多くの場面で活用されています。
RPGでよく活用されているということですね。
そうですね、戦闘時の作戦を事前に選択・設定しておくと、その作戦に合わせて仲間のキャラクターが自律的に行動してくれます。HPがこれくらい減ったら回復しよう、などはすべてキャラクターAIによるものです。
たしかに、過去のRPGの有名タイトルでも、ただ攻撃するだけではなく呪文を唱えたりアイテムを使ったり、シチュエーションに合わせて行動していましたね。
その後、キャラクターAIの活用範囲が多岐にわたり、仲間がどのようにバトル中に移動するのか、どんなことを話すのかなど、キャラクター達の行動全般にAIが活用されています。
さらに最近の取り組みでいうと、キャラクターに感情や意志を持たせることが、ゲームAIにおける新たな課題になりつつあります。
ゲームのキャラクターが感情を持つことは可能なんですか?
人間と同じようにはいきませんが、「感情モデル」を利用することでキャラクターに感情を持たせることに挑戦しています。ゲームキャラクターに最適な感情モデルをいくつか選び、ユーザーとの間でどのような新たなインタラクションが生まれるのか社内で研究しています。
興味深い研究ですね。感情モデルを使って、どのように感情を設計していくんですか?
喜び、苦痛、恐怖など短期的な感情に基づいた「感情モジュール」と、活力的、落ち込んでいるなど長期的な感情に基づいた「気分モジュール」で設計しています。その2つのモジュールで構成された「エモーショナルコンポーネント」が感情のベースになります。
キャラクターの性格はどのように設定するのですか?
キャラクターの性格は感情モジュールに追加します。また、ゲーム内で発生するイベントの状況によってどのような反応をするのかも設定できます。例えば、仲間を攻撃されると嫌な感情を持つなど、特定の評価式を用いることで感情にさまざまなバリエーションが生まれます。
「メタAI」でゲームそのものがAIになる
メタAIについても詳しく教えてください。
メタAIは「ゲーム全体が人工知能になったもの」と捉えていただくとわかりやすいかもしれません。メタAIが特に役立つのはゲーム開発の終盤です。「ここを変えたい」などの要望が後半になるとたくさん出てくるのですが、一つを変えると他の部分に影響が出ることも。そんなときにメタAIがあると、全体を違和感のないように調整してくれます。
具体例としてはどんなことですか?
戦闘シーンがわかりやすいかもしれません。開発の終盤で味方と敵のキャラクターが入り交じって戦闘するシーンを見たときに、「この状況でこの攻撃はおかしい」「この配置はおかしい」など改善したいポイントが出てきます。キャラクター1体ずつの挙動は正しいものの、3人全員で主人公を守るなど全体の挙動で違和感を感じるところがあると、メタAIを用いて違和感を持つ状況が再現しそうなときに、メタAIからキャラクターAIに命令を送ることで改善できます。
たしかに3人が同じ行動をするよりも、主人公を助けに行くように回復を促すなどストーリー性のある状況の方が盛り上がりますね。
ゲームはシミュレーションであると同時にエンターテインメントなので、ドラマチックなシーンを演出する必要があります。映画監督のような役割を、メタAIはゲームの中で担ってくれているというわけです。また、メタAIを活用することでバトルの難易度を調整し、プレイヤーの感情を揺さぶることもできます。
メタAIで難易度の調整もできるんですか?
はい、ただバトルの難易度は、戦術的な判断や操作など「プレイヤースキル」(ゲームの上手さ)とキャラクターの「パラメータ」の両方を考慮する必要があるので、幅広い可能性を考える必要があります。
たしかに、ゲームが上手い人の中にはレベルをあまり上げずストーリーを進める人もいますね。
そのため単純な難易度だけではなく感情にもフォーカスする必要があります。メタAIの事例として広く知られているサバイバルホラーの『Left 4 Dead』では、プレイヤーの感情を一次元の緊張度で表しています。
緊張度を尺度にゲームの要素をコントロールしているんですね。
他にもメタAIが活用されているゲームとして広く知られているのは、シューティングゲームの『ゼビウス』です。1982年の発売ですが、プレイの上手さに応じて、ゲームの難易度が変化するようになっています。
なるほど、メタAIはいろいろなジャンルのゲームで活用されているんですね。
「空間AI」で空を移動する3Dにも対応
空間AIについても教えていただけますか。
ナビゲーションAIを含む空間について思考するAIのことを空間AIと言います。空間AIは空間認識、空間推論そのものと言ってもいいでしょう。空間AIはゲームAIの基礎なので、知名度のあるゲームには大抵入っています。ナビゲーション機能を持つ「パス検索」と呼ばれる技術を実装しています。ぶつからない最適な道順を計算し、キャラクターAIに伝達しています。
空間AIがないと、キャラクターは壁などにぶつかってしまうということですね。
位置検索と呼ばれるキャラクターの目的地を計算によって求める機能も入れています。AIキャラクターが、プレイヤーキャラクターの前を歩いて行ったり、戦闘のときにモンスターとキャラクターの間に立ったりするなど、今まで実現不可能だった動きを実現できています。
飛躍的に進化していますね。最新の空間AIはどんなことが実現できるんですか?
今までは地上を移動するNPC(プレイヤーが操作しないキャラクター)用の2Dナビゲーションがメインでした。しかし、ゲームには空を飛べるNPCなども出てきます。その場合、地面に縛られていないので、どの方向にも自由に動ける3Dナビゲーションシステムが必要になってきます。例えば、木の上を飛んで地上にダイブし、窓から家に入って煙突から出ようとする鳥をつくりたいときには、3Dナビメッシュ(ナビゲーション可能な3次元エリア)が必須です。
ゲームAIでエンジニアの業務はラクになったのか
ゲームAIをリップシンクアニメーションなどにも活用しているそうですが、それぞれのゲームで深層学習をどのように進めているんですか?
一つのゲームタイトルにAIモデルを学習させることで、他のタイトルでも応用ができるようになります。既にリップシンクアニメーションの自動化は、当社で制作した多くのゲームタイトルで使われています。
生成AIなども活用されているんですか?
はい、ChatGPTなどの大規模言語モデルの活用が進んでいます。社内を見ていると、ChatGPTを使ってアプリやマクロの構築をしようとするのは、入社5年以内の若手が多い印象です。一方でキャラクターアニメーションについては、まだR&D分野が多いですね。ディテールアップしたアニメーションをAIで作って実装するのは、少し先になりそうです。
ゲームAIを積極的に活用することで、開発のフローはラクになったのでしょうか?
ゲームAIが業務効率化に貢献している部分は大きいのですが、技術の進歩により、AIを実装したゲームをプレイするユーザーの期待値も年々高まっています 。一度AIのゲームを体験してしまうと、どうしても次はそれ以上のものを求めてしまう。プレイヤーの皆さんに楽しんでいただくことは、私たちのミッションでもあるので、今後も努力を続けていきたいと考えています。
社内で活躍しているゲームAIエンジニアの働き方についても教えてください。
AIキャラクターや空間AIのデザイン分野で、経験豊富なゲームAIエンジニアがそれぞれ活躍しています。例えば、敵キャラクターの挙動を作るときにも、ゲームデザイナーに全部任せっきりではなく、ゲームAIエンジニアが一緒に挙動を作ることもよくあります。AIエンジニアが下地部分を作ることもありました。
ゲームエンジニアとゲームAIエンジニアのスキルセットは、似ている部分もあるのでしょうか?
ゲームAIエンジニアの方がAIの知識が求められるものの、両者で共通する部分も多いですね。ゲームエンジニアからゲームAIエンジニアに役割を変えるケースはありますし、その逆もありますね。また、ゲーム業界以外のエンジニアが合流することもありますが、「ゲームがすごく好き」「こういうコンテンツを作ってみたい」などゲームへの想いが強い方が合っていると思います。
日本のRPGをもう一度盛り上げるために
最後に今後実現したいことについて教えてください。
将来的には、プレイヤー1人ひとりに合わせたカスタマイズされたゲームを作っていきたいと考えています。「メタAI」の考え方に近い発想で、プレイヤーが持っているスキルセットに応じて最適なゲーム体験を提供していくようなイメージです。
スクウェア・エニックスの技術力なら、近いうちに実現できそうですね。
そうですね、生成AIをはじめとしたさまざまな技術の進化によって、実現に向けて可能性が高まりました。例えば、RPGの世界では街のNPC(非プレイヤーキャラクター)全員にAIを搭載し、NPCが勝手に街を作ったり、変な行動を取ったら街の人が個々のプレイヤーに応じてリアクションを取ってくれたりすることも、いずれは実現できるかもしれません。それぞれのプレイヤーに合わせたリアルな体験こそが、次世代のゲームに求められていると思います。
三宅さんはゲーム業界の現在と未来について、どのように感じていますか?
ディープラーニングや生成AI、大規模言語モデルの進化によって、高品質なコンテンツを生成できるようになってきました。すべてのユーザーに異なる体験を提供することも、コンテンツをユーザーに応じて出し分けることで可能です。ユーザーたちが自分に合ったゲームを楽しめるようになるのは、ゲーム業界にとって大きな進歩ではないかと。「自分のときはこうだった」とみんなで体験を共有したり、友達同士で生成されたダンジョンやさまざまなコンテンツを交換したりしながら、ゲームを何度も楽しむことができます。
ユーザーの間に新たなコミュニケーションが生まれるということですね。
ユーザーごとに個別のゲーム体験が提供できたら、YouTubeへの動画アップロードもネタバレにならず、むしろ積極的に上げもらった方が良くなります。それぞれのユーザーが、新鮮な気持ちでコンテンツを楽しめるからです。100万人のプレイヤーがいたら、SNSなども活用しながら100万通りの多彩なコンテンツを見せ合って交換し合う。そんな未来が来れば、日本のRPG(ロールプレイングゲーム)がもう一度盛り上がると思います。
エンジニア転職のご相談はぜひ
『マイナビIT エージェント』へ!
ライター
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから