はじめに
マルチプレイヤーシステムやサーバーインフラの開発に精通するゲームネットワークプログラマーとして、アンリアルエンジンのスタジオ設定の best practices に取り組むことを楽しみにしています。最近のUnreal Fest 2024プレゼンテーションでは、テクニカル・プロダクション・ワークフローに関する豊富な情報が取り上げられました。そこで、バージョン管理、ブランチ戦略、バイナリデリバリー、仮想アセットなどについて、私の洞察を共有したいと思います。
バージョン管理とブランチ戦略
このビデオでは、さまざまなバージョン管理システムのサポートについて説明しています。その中でPerforceがエピック・ゲームズの主要な焦点となっています。推奨されるブランチ戦略は、「クリーン」なアンリアルエンジンの drop ブランチ、競合を解決するためのマージブランチ、そしてメインブランチにマージされるリリースブランチです。アンリアルエンジンのソースコードに対する、ネイティブのフォルダ構造の使用の重要性、およびブランチロックとRobo Mergeツールを使ったマージの自動化について説明されています。
アンリアルエンジンの統合とツーリング
このプレゼンテーションでは、PerforceのフロントエンドであるUnreal Gamsyncについて取り上げています。これにより、Unreal Engineの同期、ビルド、起動が可能になります。また、継続的インテグレーション、スタジオのテレメトリー、デバイス管理、ビルド高速化を扱う包括的なチームワークフローツールのHordeも紹介されています。さらに、ビルドパフォーマンスを向上させるための無料の公開ツールであるUnreal Build Acceleratorについても言及されています。
コードレビューと検証
このビデオでは、Swarmなどのツールを使ったアドホックおよび非同期のコードレビューの重要性が強調されています。また、ローカルでのプリコミット検証、非Unityコンパイル、静的解析、コンテンツの検証の使用についても説明されています。現時点では一般に公開されていない「submit tool」の存在にも触れられており、視聴者にはエンジニアリングチームへの要望が推奨されています。
派生データと仮想アセット
このビデオでは、Unreal アセット構造(コアメタデータ、バルクデータ、派生データ)と、ワークフローを高速化するために活用できる派生データキャッシュ (DDC) について説明しています。ZenによるローカルなDDC保存、Zenによる共有DDC、そして組織全体でプリクックされたアセットを共有できるUnreal Cloud DDCについても紹介されています。バルクデータと構造化データを分離する「仮想アセット」の概念も説明されています。
その他のツールとリソース
このプレゼンテーションでは、エピック・ゲームズで使用されている他のツールも取り上げられています。自動マージツールのRobo Merge、増分バイナリダウンロードとパッチングのUnSync、プログラマーの一般的な操作をカバーするUnreal Command Line (UCL) などです。また、Perforceビジュアルクライアントとの統合によりワークフローを合理化するツールセットであるP4V Utilsにも言及されています。最後に、このプレゼンテーションの作成に協力した各スタジオや個人への感謝が述べられています。
まとめ
総じて、Unreal Fest 2024のプレゼンテーションでは、「エピック社流」のアンリアルエンジン・スタジオの構築についての豊富な情報が提供されました。適切なバージョン管理戦略の活用、Unreal Gamyncやホードなどの強力なツールとの統合、徹底的なコードレビューと検証の実施、派生データと仮想アセットの最適化を通じて、ゲーム開発者は効率的で協調的なスタジオ環境を構築することができます。
主なポイント:
- Perforceやロボマージなど、推奨されるバージョン管理とブランチ戦略
- チームワークフローとビルド高速化のためのUnreal Gamyncとホードの統合
- コードレビュー、プリコミット検証、「submit tool」の使用の重要性
- Unreal アセット構造、派生データキャッシュ、仮想アセットの活用によるパフォーマンス向上
- Robo Merge、UnSync、UCL、P4V Utilsなどの追加ツールとリソース