ユーザ用ツール

サイト用ツール


ue4:distributedbuildtool

分散ビルド

仕事で UnrealEngine を使った開発を行う場合分散ビルドはほぼ必須です。

ただし最近の PC は CPU core を多数搭載している物が増えてきたので、以前よりも単独ビルドと分散ビルドとの差が少なくなっています。 16 core 32 thread 以上の CPU かつ NVMe SSD であれば、分散ビルドとほぼ同等の効率で開発できると思われます。(4.24以前。新しいエンジンになるほどビルド時間が延びています)

UnrealEngine が対応している分散ビルドシステムには下記のものがあります。

分散ビルドツール C++ Shader Tool 対応 Platform UE4 の対応 Platform (未確認)
IncrediBuild 有料、コア数に応じて料金が必要 対応 対応 Windows/Linux/その他 Windows/Androidその他
SN-DBS Sony Platform の開発専用 対応 UE 4.27以降で対応 Windows/PS Windows/PS
FASTBuild オープンソース 対応 UE 5.0 Release 以降 Windows/Mac/Linux/その他 Windows/Mac/その他
Distcc Windows 以外、オープンソース 対応 非対応 (未確認) Mac/Linux Mac

分散ビルドできるのは UnrealEngine の C++ のコンパイルと Shader です。

  • 分散ビルド使用時のコンパイル時間は CPU Thread 数だけでなくネットワーク速度とストレージ速度にも依存します。
  • SN-DBS は UE4 4.27 以降で Shader の分散ビルドに対応しました。UE5 Release 版でも対応しています。(5.0 EA は非対応)
  • FASTBuild は UE5 Release 版以降で Shader の分散ビルドに対応を行っているようです。(5.0 EA は非対応)
  • Linux Host での分散ビルドは未確認ですが、Windows 上で Linux CrossToolchain を使用する場合は分散ビルドが可能です。

分散ビルドの有効化

  • IncrediBuild, SN-DBS はインストールされていれば自動的に有効になります。
  • 明示的に無効化したい場合は BuildConfiguration.xml (USERPROFILE/Documents/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml) で指定してください。
<?xml version='1.0' encoding='utf-8'?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
	<BuildConfiguration>
		<bAllowXGE>false</bAllowXGE>
		<bAllowSNDBS>true</bAllowSNDBS>
		<bAllowFASTBuild>false</bAllowFASTBuild>
		<bAllowDistcc>false</bAllowDistcc>
	</BuildConfiguration>
</Configuration>
ue4/distributedbuildtool.txt · 最終更新: 2021/12/26 15:23 by oga