Horde とは、フォートナイト、Unreal Engine、その他プロジェクトの開発のために Epic が使用する、ワークフロー支援サービスのセットです。
イベント
Horde は次の機能を提供しています。個別に有効化/無効化できるものがほとんどです。
- Remote Execution: Unreal Build Accelerator によるコンピュート作業 (C++ コンパイル処理を含む) などを他のマシンにオフロードする機能です。
- Build Automation (CI/CD): 大規模な Perforce のリポジトリで作業するチーム用に設計された、ビルドの自動化システムです。
- Test Automation: Automation Tool と Gauntlet を統合した、ストリームとプロジェクト全体での自動テスト結果をクエリするためのフロントエンドです。
- Studio Analytics: Unreal Editor からテレメトリを受け取り、主なワークフロー メトリクスのチャートを表示します。
- UnrealGameSync Metadata Server: UnrealGameSync を使用するチーム向けのさまざまな機能です。ビルド ステータスのレポート、コメント集計、クラウドソース ビルドのヘルス機能などが含まれます。
- Mobile/Console Device Manager: 開発キットとモバイル デバイスに関するファームの割り当てと管理のためのシステムです。
Unreal Build Accelerator
Unreal Build Accelerator (UBA) は Horde に含まれているツールであり、サードパーティー製プログラム (C++ コンパイラなど) の軽量な仮想化を実装し、それをリモート マシン上でも、必要に応じて発信側のマシンの情報をリクエストしながら実行することができます。リモートでの実行プロセスは、ローカル マシンで実行しているように動作し、ファイル システムなどを同じビューで表示し、その裏でファイルは必要に応じてリモート マシンとの間でやりとりされます。
Unreal Build Tool (UBT) は、Horde と UBA を併せて使用することで、接続されたエージェントにビルド タスクをオフロードし、ワークロードを複数のマシンに分散させることができます。
Unreal Engine 5.4 では、UBA は Windows のみに対応しています。今後のリリースでは Mac と Linux もサポートされる予定です。
Horde を使い始める
Horde の開始に必要なものはすべて EpicGames GitHub リポジトリに揃っています。
リポジトリへのアクセスを必要とする場合は、UE on GitHub ページの指示に従ってください。