Amazon Web Services ブログ

AWS for Games GDC 2023 セッションレポート

AWS for Games is a portfolio of purpose-built solutions and services to help game developers build, run, and grow their games.

こんにちは。アマゾンウェブサービスジャパンの長田です。普段は主にゲーム会社をご支援するソリューションアーキテクトをしています。
さて、 2023 年 3 月にゲーム業界のカンファレンスである Game Developers Conference ( GDC ) 2023 がサンフランシスコで開催され、 AWS Japan のゲーム業界を支援するチームのメンバー数名も現地に赴き参加しました。 4 年ぶりにオフライン開催された会場は多くの聴講者で賑わい、多様なセッションが行われました。

AWS では AWS for Games という名前でゲームを構築 ( BUILD )、運営 ( RUN )、成長 ( GROW ) させることを支援する目的で構築されたソリューションを用意しています。これにはクラウドゲーム開発、ゲームサーバー、ライブ運用、ゲーム分析、 AI と機械学習、などのソリューション分野が含まれ、新しいソリューションと機能を発表し続けています。
GDC からしばらく経ちましたが、改めて GDC で開催されたセッションを要約しつつ、これら BUILD, RUN, GROW の観点からAWSのサービスがどうお客様を支援出来るかを見て行きたいと思います。本稿では主に BUILD にあたる、インゲームコンテンツの制作・管理について書いていきます。

コンテンツ生成

昨今 Generative AI の話題が多いですが、 GDC でもコンテンツ生成についていくつかのセッションが行われていました。
例えば Ubisoft は「Machine Learning Summit: Natural Language Generation for Games Writing」というセッションで NPC のテキストを生成する仕組みを作っていますが、ここには AI21 Labs のモデルを模倣したものを自社開発していると述べられていました。 ChatGPT の様な外部サービスを使わないのは、自社のデータは自社で利用するものであり、仕組みは自社で構築するというカルチャーである事に依るそうです。
AWS では従来より Amazon SageMaker で独自の ML モデルを作る事ができました。これに加え 2023 年 4 月に Amazon Bedrock が発表され ( Blog ) 、ここには利用できる基盤モデルとして AI21 Labs の Jurassic-2 や Stability AI の Stable Diffusion が含まれています。日本のゲーム会社でもレアリティの低いアイテム画像の自動生成を AI に行わせる試みが数年前から CEDEC などで発表されています。基盤モデルを用いてより手軽に生成系 AI を試す事が出来る様になった今、ゲーム開発に利用する敷居は下がってきたと感じます。

ゲームデザイン

今年は Guerrilla の Horizon Forbidden West と CD Projekt の Cyberpunk 2077 に関するセッションが多く行われていました。
Guerrilla の「Game Narrative Summit: Creating a Living World in ‘Horizon Forbidden West’」では NPC を生き生きと動かす為の手法を説明していました。部族の職業や宗教観をキャラ付けし、それに裏打ちされた NPC のモーションを作成、そして待機モーションに他のモーションをブレンドする事でループを目立たなくするアプローチを取っていました。またアイデアをただ考えるだけではなく、それを予算と実装時間の中で実現させる事が重要と説いていました。
一方ハル研究所のセッション「The Many Dimensions of Kirby」では「星のカービィ ディスカバリー」の開発にあたって直感的な車などの形状に変化してそれに見合ったアクションをするというゲームデザインを最初に考え、次に車が出るのでかつて文明があった世界が舞台であるという世界観デザインを考える、という順序を取っていました。また弾がホーミングしすぎない様に最初の1フレームだけ強く敵に追従する、カメラから見て当たって見える時は 3D 空間上は外れていても当たり判定を入れる、ダッシュジャンプでは当たり判定を縦に伸ばす事で上方の敵に潰されず当たり勝つ、などプレイの納得度・気持ち良さを重視したゲームデザインを取っていました。
私見ですが、前者は仕様書を元に AI などでモーションを生成する未来が近づいて来ていると感じますが、後者については人間が操作感を元に仕様を新たに追加しており、人間による「味付け」にまだ優位性があると思っています。

シミュレーション

ポリフォニーデジタルのセッション「Advanced Graphics Summit: Realistic Real-Time Sky Dome Rendering in ‘Gran Turismo 7’」では Gran Turismo 7 の空のシミュレーションを説明していました。空気中の窒素と酸素の割合をもとに、空気中の拡散反射などをスタジオ内にあるPCを用いて分散レンダリングし、リアルタイムに空をシミュレーションする事に成功、しかし PS4/5 の実機ではこの計算を再現するのは無理だった為 LUT (Look Up Table) に落とし込んで利用したとの事です。
AWS では Amazon Elastic Compute Cloud (EC2) というコンピュートサービスを提供しており、クラウド上の計算リソースを使う事でシミュレーションの時間を短縮する事に貢献出来ると考えます。将来はサーバ上でシミュレーションした結果をニアリルタイムでコンソール機に送る事でより現実に近い自然環境を提供出来る様になるかもしれません。
まだサーバでのシミュレーション結果を直接インゲームで使う段階にはなっておらず、今後の技術革新に期待したいところです。

自動テスト

Electronic Arts は「AI Summit: AI for Testing at EA: From ‘Star Wars’ to ‘Apex’ and Beyond」というセッションで、自社の自動テスト環境がどの様に進化してきたかを、実際の製品ごとに行なった内容を辿りながら説明していました。 Star Wars Battlefront II では自動テスト用の Bot はビヘイビアツリーで動作するものだった為多くのスクリプトを作成する必要がありました。これに対して Battlefield 2042 で強化学習 (Reinforcement Learning, RL) の検証を開始し、 Dead Space では RL で Bot のロコモーションを学習させて RL のインゲーム利用を試みたとの事です。しかし RL の結果キャラクターの挙動が不自然になり、また学習に多くのリソースを使う事から最終的にはインゲーム実装はスクリプトになりました。この一連の検証をもとに ML をどう利用するかのガイドラインを決め、また自動プレイ・撮影・ Metric 取得も Bot がやるようになり、ここには RL を利用する事で不必要なロコモーションコードの削減に繋がったとの事です。ここから言える事は、強化学習の結果をそのまま使えない場合は Bot にのみ利用するなどに止める必要があり、またガイドラインを決める事でゲーム開発のどの箇所に RL を使うかの落とし所を見つけるのが重要と感じます。
AWS for GamesAI と機械学習のページにはゲームのテストに利用可能なサービスとお客様事例が掲載されています。強化学習を使用してゲームのレベル調整を行う方法を学べるワークショップへのリンクもあり、気軽に試せる環境は既に整っていると言えます。

パイプライン

GIANTS Software は「GIANTS Software Presents: Farming Simulator Production Pipeline」というセッションで、 Farming Simulator のプリプロダクションから QA までの制作工程、ビルドの自動化、クロスプレイの実装、および UGC の取り扱いまで網羅した解説を行なっていました。仕様は内製ツールに登録しタスクも管理、 QA はその内製ツールに Mantis をインテグレーションして使用、ローカライズも QA 部門でやっているとの事でした。バージョン管理は Subversion で、普段は trunk で作業して締め切りが近づいたら branch を切るというシンプルな運用をとっていました。自動ビルドは内製ツールで行い、ビルド成果物は社内の NAS や社外やりとり用の FTP サーバ、更には Steam や EPIC などのプラットフォームにも配布する仕組みを整えていました。後半ではクロスプレイへの挑戦として、プラットフォームを超えた通信を行う為世界各地にリレーサーバを設置しボイスチャットも独自の仕組みを用意、 10 ほどあるプラットフォームに一斉にパッチを当てる為に 1 ヶ月前に締め切りを設けて運用しているとの事でした。またユーザの作成した MOD を適切に管理する為に ModHub というプラットフォームを構築し、 MOD をテストする専用のチームを設けて運用しているとの事でした。
本セッションは AWS for Games にある BUILD, RUN, GROW 全ての要素を含む素晴らしい内容でした。

クラウド配信

Sledgehammer Games の「Extending In-Game Textures Using CDNs for ‘Call of Duty: Modern Warfare 2’」というセッションでは、インゲームのコンテンツを必要に応じてクラウドから取得してくる手法を紹介していました。具体的にはテクスチャの Mipmap のうち高精細なものは Stub の Index だけ持っておき、アクセスが来たら都度 CDN (Content Delivery Network) からダウンロードする、というものでした。コンソール機特有の問題としてダウンロードとセーブデータ保存がコンフリクトするとクラッシュするのでダウンロードを止める、 CDN の帯域が大きすぎてダウンロードが走りすぎると不具合になるのであえてダウンロード速度を落とすために同時に 2 ダウンロードしか走らず且つ受信バッファを減らす、マルチプレイ中はプレイの邪魔にならない様ダウンロードを止める、コンソール機には SSD 書き込みや IO に制限があるためダウンロードを止める、など具体的なクライアント側の実装についても説明がありました。 Modern Warfare 2 では 100GB のパッケージ削減に成功したとの事です。
AWS はクラウドサービスを提供する企業である為、お客様事例にサーバの実装についての説明はあってもクライアントの実装に関する説明が無い事もあります。この様な実装例が公に出てくると私たちとしてもイメージを掴みやすく、知見を広げるのに大きく役立ちました。また AWS には Amazon CloudFront という CDN を提供するサービスがある為、同様の仕組みを作る際のサーバ側のご支援が可能と考えます。

まとめ

この様に種々のセッションに参加した中には、頭の中に AWS がご支援出来る内容が思い浮かぶものも、そうではないものもありました。しかし実際にゲームを開発しているのはゲーム会社であり、真のニーズはお客様の中にあります。 Amazon には「顧客中心のイノベーション」という文化があり、お客様の要望に耳を傾けて行動に活かし、お客様に価値を提供しています。もし自分達のゲーム制作にある課題を AWS で解決出来ないか、 AWS を利用する事で何か新たな付加価値を与えられないか、などの疑問・アイデアをお持ちでしたら、是非私たちまでお問合せ下さい。