ゲーム制作クラウドの導入と Azure Game Dev VM
※本ブログは、米国時間 2022 年 3 月 23 日に Ben Humphrey (Microsoft Azure プリンシパル エンジニアリング マネージャー) により公開された Microsoft Game Dev – Game Creation Cloud Adoption and The Azure Game Dev VM | Microsoft Developer の翻訳です。
このたび、 Azure オファリングである、Azure Game Development Virtual Machine (英語) がリリースされました。Azure Game Development Virtual Machine (英語) は、最新のゲーム制作を容易にし、ゲーム開発者がクラウドでのゲーム制作を最大限に活用することを可能にします。
マイクロソフト社内のゲーム スタジオも含め、世界中のゲーム スタジオが、さまざまな場所からリモートで働くチームの複雑な要求に対応し、新たなパラダイムに適応しようとしています。マイクロソフトは、この変化に伴う課題やそれに対応するためには、たくさん苦労があることを理解しています。マイクロソフト社内のゲーム スタジオも、Azure の導入を加速させています。
こちらの記事では、ゲーム制作のために Azure クラウドを導入したスタジオで見られたいくつかのパターンを紹介します。そして、現在利用可能なソリューションについても簡単に説明します。また、クラウドでの制作を今後さらに改善するために、現状と理想のギャップを埋める計画についても解説します。
クラウド導入の主な利点
ハイブリッド ワークのシナリオやさまざまな場所から多くのチームがリモートで作業する中で、ゲーム スタジオは、ゲーム開発パイプラインの一部または大部分をクラウドに移行することの大きな利点を実感しています。
クラウドに関して、ゲーム スタジオが考える主な利点として以下が挙げられます。
- 強力なコンピューティング: ゲーム スタジオは、GPU 負荷の高いジョブのために強力なコンピューターを起動する必要がありますが、高性能タスクをサポートするには、遅延なしでアクセスできなければなりません。
- リモート スタジオの実現: Parsec (英語) または Teradici (英語) をクラウド VM として使用し、どこからでもリモート ワークが可能になります。これにより、クラウド マシンが持続的で拡張性が高いストレージを備えたデスクトップとして機能するようになります。また、必要なときにだけコンピューティングの料金を支払えば済むようになります。
- 世界規模: 世界規模でのスピーディーにどこからでもアクセスできることは、クラウドの大きな利点であり、スタジオが世界中の未使用の光ファイバー ネットワークを活用することを可能にします。
- アセットの管理: アセットの一元管理により、ゲーム開発者は、効率的に仕事を続けることができます。Perforce (英語) のプロキシとレプリカを展開することにより、外部の協力会社や内部の開発者をより迅速に戦力化できます。
- より高速なビルド: バースト可能なコンピューティング機能により、より高速なビルドが可能になります。これは、数百もの分散コアでのより迅速なコンパイルとアセットの処理のための Incredibuild (英語) などのテクノロジを使用する場合に特に当てはまります。
- より密なコラボレーション: Parsec や Teradici などの高忠実度で低遅延のデスクトップ オプションを使用して、ゲーム クリエーターはどこからでも制作/テスト サイクルを加速できます。また、Parsec (英語) の高性能でシームレスな画面共有機能によって、デスクトップを共有しつつ、クリエイティブな作品をより簡単かつ安全に制作できるようになります。Unreal Engine Pixel Streaming は、コラボレーションと効率性を実現します。
- 効率的なテスト: クラウドにより、ゲームテスターはコンパイルされたビルドをより迅速に入手でいるようになり、テストの効率が高まります。
マイクロソフトは、Azureがゲームクリエイターにとって最適なクラウドになるよう、取り組みを強化しています。これが、Azure Game Development Virtual Machine をリリースした理由です。Visual Studio、Unreal Engine、Perforce Helix Core、Parsec、Incredibuild、Blender、Teradici、DirectX/GDK/PlayFab SDK などを活用し、ゲーム制作環境の展開を簡潔でシームレスで安全にするために、大手ゲーム開発パートナー各社と提携しました。
Game Development Virtual Machine の紹介
Azure Game Development Virtual Machine のパブリック プレビューの提供を開始します。このサービスにより、クラウド移行のはじめの第一歩として、開発者を支援したいと考えています。リモート ワークステーションやパイプライン上のビルドサーバーにおいて、クラウド上でも主要な開発ツールを使用するために、Azure Game Development Virtual Machine がどのようなものであるのか、簡単にご紹介いたします。
マイクロソフトは、大手ゲーム開発ツール パートナー各社と提携して、以下の主要なゲーム開発ソリューションがプレインストールされた、事前にビルド済みの Game Development Virtual Machine を Azure で提供しています。
- Visual Studio Community Edition 2019
- Unreal Engine
- Quixel Bridge
- Perforce の P4V Client
- Parsec
- Incredibuild
- Blender
- Teradici (英語)
- DirectX/GDK/PlayFab SDK、その他 (英語)
この VM を使用することで、便利なゲーム開発ワークステーションやビルド サーバーを約 5 分ですばやく起動して稼働させることができます。これにより、パイプラインのパフォーマンスをより簡単に検証し、Perforce リポジトリからコード/アート アセットを引き出して、クラウド内からゲームを直接開発してテストできます。また、ゲーム制作に必要な環境を準備するために何時間もかけてダウンロードや構成を行わずに済みます。スタジオが Azure に慣れてきたら、構成済みの Game Dev VM を独自のカスタム ワークステーション環境またはビルド サーバーを構築するためのベース イメージとして使用し、必要なツール (アーティスト用ツール、SDK、フレームワークなど) を追加できます。
マイクロソフトは、Game Dev VM をゲーム開発者に使用してもらい、改善方法に関するフィードバックを受けたいと考えています。将来的には Game Dev VM 上にツールやオプションを追加するだけでなく、ゲーム開発者が使用している主要なゲーミング パートナー ソリューションを利用し、よりシンプルにできるように注力しています。各パートナーと協力して、クラウドでのゲーム開発のための最高のエクスペリエンスを提供することを目指しています。
マイクロソフトは、今後もクラウドでのゲーム開発を可能な限りシームレスにするための新たな方法を開拓すべく協力し続けていきます。
マイクロソフトは、Azure をゲーム クリエーターにとって最適なクラウドとするために力を注いでおり、将来的に次のような追加の投資を予定しています。
- より強力なコンピューティングと GPU
- パートナーとのより密な連携とクラウド ネイティブ認証の改良
- Azure でのゲーム開発パイプラインの実行に関する、エンドツーエンドのより良い事例の紹介およびドキュメントの公開
- Xbox 開発を活用したクラウド パイプラインのためのより優れたオプション
などです。
ひとまず、新しい Game Development Virtual Machine を試してみることをお勧めします。マイクロソフトは、Game Development VM が Azure でのゲーム開発パイプラインにおける重要なコンポーネントになると確信しています。まずは、Game Dev VM のドキュメント (英語) をお読みください。
Azure でのゲーム開発パイプラインの全貌
Azure 内に含まれる、ゲーム制作ワークフローの基本的な実装を示した図です。
左と右には、仮想デスクトップ インフラストラクチャを使用して、GPU を搭載した VM を通して Azure で直接作業をしている開発者がいます。これらのワークステーション VM として、新たにリリースされた Game Development VM を使用できます。パイプラインの中心には、バージョン管理のための Perforce Helix Core、およびマイクロソフトの強力な統合 SaaS CI/CD ソリューションである Azure DevOps があります。Azure では、自動化されたテスト ファームも作成できます。ここでは、ワークフロー、データ、配布が Azure 内ですべて一元化されているため、イテレーションの全般的な高速化、物理的な IT 管理労力の削減、全般的なセキュリティの向上が可能です。
上記のシナリオはクラウド ネイティブな構築のための理想図ですが、ゲーム スタジオの大半は制作ビルドを実行するオンプレミス インフラストラクチャをすでに自社で所有しています。このため、大規模に現在の環境から移行してしまうことは、制作中の業務を中断する必要があり、現実的ではありません。このようなスタジオでは、段階に分けて、クラウドへの移行を進める必要があります。この場合、上記の図は、最終的なクラウド ワークフローのテンプレートとして使用できます。一度に 1 つずつ慎重にクラウドに移行することにより、スタジオは、全般的な移行リスクをより効果的に管理しながら、クラウドの利点を享受することができます。
ここで重要なのは、Azure が包括的なソリューションでありつつも、カスタマイズ可能なソリューション スイートであるという点です。テクニカル ディレクターは、各段階で変革のためのコンポーネントを自由に選別することができますし、どのような最終目標でも達成できる完全なソリューション スタックが用意されていることが保証されています。
クラウドへの移行時にゲーム スタジオが取り組まなければならない最初のステップの 1 つが、ExpressRoute を通してオンプレミス ネットワークを Azure にリンクすることです。これにより、最速のプライベート接続、Azure Active Directory との ID の同期、およびセキュリティ コンプライアンスの適切な管理を実現できます。ネットワーク、ID 管理、およびセキュリティの設定が完了したら、ゲーム開発パイプラインの効率性を確保するために、バージョン管理を Azure に展開、複製、またはプロキシして、パイプライン内のアセットへのアクセスの遅延時間を最小にし、またオンプレミスに返されるトラフィックも最小限に抑えます。ゲーム アセットがクラウド内から利用可能になったら、次はパイプラインの構築する番です。
エンドポイント、または実際のコードやアセットの生成と使用の多くは、現在はまだクラウド外で行われており、その結果発生しているデータの出し入れが効率性を妨げています。そこで登場するのが Game Development Virtual Machine です。Game Development VM は、仮想デスクトップ インフラストラクチャの主要なコンポーネントであり、クラウド上での完全な開発ワークフローの仕上げとして使用できます。どのスタジオにも独自のソフトウェア パッケージが当然ありますが、プレインストールされたソフトウェアの多数の主要パッケージを含む Game Development VM は、信頼できるベース イメージの出発点として使用できます。また、Game Development VM は、Azure DevOps のビルド エージェントとして、Perforce、Incredibuild、Visual Studio、GDK、他のプレインストールされたソフトウェアなどの主要な構成要素を活用して、ビルド プロセス自体でも使用できます。
クラウド移行のための最初のステップ
クラウドにワークロードを移行するには、時間とリソースを注ぎ込む必要がありますが、正しく取り組めば、その利点はすぐに明らかになります。マイクロソフトはそのお手伝いをいたします。Microsoft Game Dev Discord サーバー (英語) の Game Dev VM チャンネルへのご参加をお待ちしています。まずは、Azure Cloud Build Pipelines のドキュメント (英語) をお読みください。サンプルの Perforce と Azure DevOps CI パイプラインの実装もお試しいただけます。