Сборка бинарной версии - Installed build

Документация по Isntalled Build

Основной флаг Automation Tool для сборки бинарной версии движка называется BuildGraph. Узнать параметры BuildGraph можно с помощью флага -help:

C:\>"C:\Epic Games\UE Binary\UE_4.26\Engine\Build\BatchFiles\RunUAT.bat" BuildGraph -help   
Running AutomationTool...
Parsing command line: BuildGraph -help

BuildGraph Help:

Tool for creating extensible build processes in UE4 which can be run locally or in parallel across a build farm.

Parameters:
    -Script=<FileName>              Path to the script describing the graph
    -Target=<Name>                  Name of the node or output tag to be built
    -Schema                         Generates a schema to the default location
    -Schema=<FileName>              Generate a schema describing valid script documents, including all the known tasks
    -ImportSchema=<FileName>        Imports a schema from an existing schema file
    -Set:<Property>=<Value>         Sets a named property to the given value
    -Clean                          Cleans all cached state of completed build nodes before running
    -CleanNode=<Name>[+<Name>...]   Cleans just the given nodes before running
    -Resume                         Resumes a local build from the last node that completed successfully
    -ListOnly                       Shows the contents of the preprocessed graph, but does not execute it
    -ShowDiagnostics                When running with -ListOnly, causes diagnostic messages entered when parsing the graph to be shown
    -ShowDeps                       Show node dependencies in the graph output
    -ShowNotifications              Show notifications that will be sent for each node in the output
    -Trigger=<Name>                 Executes only nodes behind the given trigger
    -SkipTrigger=<Name>[+<Name>...] Skips the given triggers, including all the nodes behind them in the graph
    -SkipTriggers                   Skips all triggers
    -TokenSignature=<Name>          Specifies the signature identifying the current job, to be written to tokens for nodes that require them. Tokens are ignored if this parameter is not    
                                    specified.
    -SkipTargetsWithoutTokens       Excludes targets which we can't acquire tokens for, rather than failing
    -Preprocess=<FileName>          Writes the preprocessed graph to the given file
    -Export=<FileName>              Exports a JSON file containing the preprocessed build graph, for use as part of a build system
    -HordeExport=<FileName>         Exports a JSON file containing the full build graph for use by Horde.
    -PublicTasksOnly                Only include built-in tasks in the schema, excluding any other UAT modules
    -SharedStorageDir=<DirName>     Sets the directory to use to transfer build products between agents in a build farm
    -SingleNode=<Name>              Run only the given node. Intended for use on a build system after running with -Export.
    -WriteToSharedStorage           Allow writing to shared storage. If not set, but -SharedStorageDir is specified, build products will read but not written
AutomationTool exiting with ExitCode=0 (Success)

Основные параметры

Параметр

Описание

target

нода построения (Make Installed Build Win64)

script

путь до файла построения (InstalledEngineBuild.xml)

clean

очищает все предыдущие бинарные файлы

Файл InstalledEngineBuild.xml находится в директории движка по адресу:

Engine\Build\InstalledEngineBuild.xml

Дополнительные параметры

Параметры InstalledEngineBuild.xml необходимо установить с помощью ключевого слова -set:

Параметр

Описание

HostPlatformOnly

билд только для текущей платформы (true/false)

VS2019

поддержка VS2019 (true/false)

WithClient

компилировать таргет клиента или нет (true/false)

WithServer

компилировать таргет сервера или нет (true/false)

WithDDC

создавать DDC или нет (true/false)

GameConfiguration

конфигурация движка, можно указать несколько через точку с запятой (Development;Shipping;Debug)

BuildDir

Output директория. Этот параметр мы добавляем

в InstalledEngineBuild.xml самостоятельно. Подробнее об этом чуть ниже.

Пример bat файла

"C:\Epic Games\UE Binary\UE_4.26\Engine\Build\BatchFiles\RunUAT.bat" BuildGraph ^ 
-target="Make Installed Build Win64" ^
-script="C:\Epic Games\UE Binary\UE_4.26\Engine\Build\InstalledEngineBuild.xml" ^
-clean ^
-set:HostPlatformOnly=true ^
-set:VS2019=true ^
-set:WithClient=true ^
-set:WithServer=true ^
-set:WithDDC=false ^
-set:BuildDir="C:\Epic Games\UE Binary\UE_4.26"

По умолчанию собранная бинарная версия движка окажется в поддиректории движка:

Engine\LocalBuilds\Engine\Windows

Это можно изменить, добавив самостоятельно параметр BuildDir в InstalledEngineBuild.xml и изменив проперти LocalInstalledDir:

<Property Name="LocalInstalledDir" Value="$(RootDir)/LocalBuilds/Engine/Windows"/>

Итоговый результат:

<!-- Output dir for build -->
<Option Name="BuildDir" DefaultValue="$(RootDir)/LocalBuilds/Engine" Description="Output dir for build"/>
	
<!-- The local output directory -->
<Property Name="LocalInstalledDir" Value="$(BuildDir)"/>
<Property Name="LocalInstalledDirMac" Value="$(BuildDir)/Mac"/>
<Property Name="LocalInstalledDirLinux" Value="$BuildDir)/Linux"/>

Notes

символ ^ позволяет переносить строчку в .bat файлах

Подробнее в видео уроке

Дополнительно

Last updated