Coalition社 | クラウド開発環境

北米を拠点にAAAゲーム作品を次々と作りだすThe Coalitionスタジオ。Microsoft社がEpic Games社から『Gears of War』の版権を取得して以来、一貫して同シューティングゲーム (FPS) の開発、サポート、そして革新に取り組んでいます。

カナダのバンクーバースタジオで働く200人のスタッフによって制作された、『Gears』シリーズは、Xbox OneとWindows10プラットフォームで記録的なヒット作となりました。Coalition社では長年にわたりIncrediBuildを利用してきましたが、開発環境のクラウド化を進める中、Microsoft Azure上でIncrediBuildを利用し、ハイブリッドクラウド環境を構築しました。

 

チャレンジ

人気シリーズのHDリメイク第一弾となった『Gears of War: Ultimate Edition』とFPSの新しい幕開けを告げた続編『Gears of War 4』のリリースにより、2016年は世界中の『Gears of War』ファンにとって忘れられない年になりました。Coalition社の開発者は、大きなプレッシャーの中、大きな課題に直面していました。スタジオ内では、Unreal Engine 4 (UE4)の使用による弊害が起きていたと、Coalition社のITマネージャー、Joe Vogt氏は語ります。

Coalition社では、UE4を使ってマップ、キャラクター、車輌などのコンテンツを作成しています。Editorでは作業を始める前に、あらかじめすべてのシェーダーをコンパイルする必要があるので、場合によってはマップを開くだけで30分かかることもありました。毎日100名を超える開発者が UE4を使用していたため、シェーダーのコンパイル時間を短縮するソリューションが求められていました。「マップを開くのに30分、これが毎日4~5回繰り返されます。1日の1/3が何もしないで過ぎる計算になります。」

Coalition社では複数のパートナー会社の協力を得ていますが、なかにはシェーダーのコンパイルや効率的なUE4の使用にはマシン性能が不足している小規模のパートナーもいます。パートナーも、UE4のコンパイル時間を改善するソリューションを必要としていました。

 

ソリューション

Coalition社は、Microsoft社のAzureプラットフォーム上に、シェーダーをコンパイルするための数百もの専用のCPUコアを立ち上げました。そして、IncrediBuildの技術を利用して、単一のAzure 仮想マシン(VM)をはるかに超える規模へスケールアウトしました。

Coalition社は 多数の64コアAzure VMでIncrediBuildを導入し、シェーダーのコンパイルのためにリソースが必要なアーティストやアニメーターに提供しました。IncrediBuildは、Azure VM上にあるすべてのコアを利用して、一つの処理を実行する仮想環境を構築します。大規模なプロセスの実行要件を満たすようにスケーリングすることで、UE4のシェーダーのコンパイルとマップの読み込みがシームレスに高速化されました。

 

スタジオ内部でAzureをスケーリング

Coalition社が『Gears Of War 4』の制作に費やした期間はほぼ3年に及びます。この間、UE4のパフォーマンスとコードのコンパイルを高速化するために、ローカル環境でIncrediBuildを使用していました。大規模なゲーム開発ではよくあるように、リリースまでの最後の6カ月はスケジュールを達成するためのクランチタイムとなりますが、この期間にスタジオ内の機器を追加することなく高速化を維持する必要がありました。

Coalition社は、Microsoft Azure上にIncrediBuildのファームを立ち上げました。Azureのエージェントを、既存のIncrediBuildに加えることで、新しい端末や機器を導入することなく700コアの使用が可能となりました。この環境は『Gears of War 4』の最終開発段階を通して使用されました。

「IncrediBuildがイテレーションと生産力に与えた影響は計り知れません。Coalition社では <ゲームのビルド作成→プレイ→バグの検出→バグの報告、修正→新たなビルド作成> が1サイクルで、これが1日に2回行われることもあります。そのため、どれだけ速くすべてのデータを最新バージョンに更新して、作業にフィードバックしていけるかが非常に重要です」(Joe Vogt 氏)

 

スタジオ外の高速化

パートナーの生産性をあげるため、AzureとIncrediBuildのリソースは外部にも提供されていました。短期間の試みでしたが、演算能力が不足していたパートナーにとっては極めて重要でした。Coalition社は、AzureとIncrediBuildの並列コンピューティング技術を1つのパッケージとして利用しました。外部パートナーは初期のリソースに関係なく、パフォーマンスを拡張することができ、驚くほどの高速化を実現できました。

「アクセス可能なAzureのデータセンターに約160コアを導入して、パートナーとの間にVPNを構築しました。これによりローカルのUnreal Engineユーザーが、Azure内のIncrediBuildファームのおかげで作業を高速化できるようになりました。」(Joe Vogt 氏)

これは短期間の取り組みでしたが、Coalition社では高価なハードウェアを購入する代わりに、Azure上にIncrediBuildをブーストしてハイブリッドクラウド環境を構築することで、パートナー企業の開発環境の高速化も実現しました。

 

結果

Coalition社では、非現実的にも思われた1年で2作のAAAゲームのリリースを成功させました。

– クラウド環境でIncrediBuildをスケールアウト:単一の仮想マシンの限界をはるかに上回る、700コアのAzure仮想スーパーコンピューターを創り出し、高速化の限界を超えました

– 不要な待ち時間を削除:Azureの演算能力により、IncrediBuildはシェーダーとコードのビルド時間を大幅に短縮。UE4上でのマップの読み込み待ち時間が新たな作業時間に変わりました。

– 外部委託パートナーの高速化:IncrediBuildをAzure上に展開し、外部パートナーに割り当てることで、作業をスムーズに進めました。

– 設備投資の節約:スタジオ内外両方のニーズに合わせてリアルタイムで、クラウド環境へスケールアップ/ダウンし、必要に応じたソリューションを適用できました。