Видеоуроки
Interface
Essentials
Advanced
Полезные советы
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Настройки и предпочтения
Работа с проектами
Настройка параметров узла
Setting Up Materials
Setting Up Properties
Освещение
Landscape Tool
Sandworm (Experimental)
Использование инструментов редактора для конкретных задач
Extending Editor Functionality
Программирование
Основы
Настройка среды разработки
Примеры использования
UnigineScript
C++
C#
Унифицированный язык шейдеров UUSL
File Formats
GUI
Двойная точность координат
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Art Samples
Tutorials

Semi-automatic Compilation with Build Script

A UNIGINE Build script is a one-touch solution to rebuild the engine tools with different options.

To invoke the build script, run <UnigineSDK>/source/build.py from a console (see examples below). Note that you need to properly set the development environment to get the script working.

Built files can be found in the target directory, in bin and lib folders.

Notice
Rebuilding the UNIGINE engine tools is available only in the full source version of SDK.

Command Line Options#

--help Display a help message and exit.
--type TYPE Type of the build (multiple options are accepted). The default is release.

all
release
debug
Both debug and release versions of components are built at the same time
Production version
Version with detailed debugging information
--csharp Build the C# libraries and the application.
--component COMPONENT UNIGINE component to build.

all

plugins
tools
samples
qtapp
build_tool
runtimes_generator
UNIGINE stand-alone tools, plugins and C++ samples. If the --csharp is passed, C# and samples will be built too.
Plugins
Stand-alone tools
C++ samples. If the --csharp is passed, both the C++ and C# samples will be built.
Build Qt main application
Command-line Build Tool
Runtimes Generator command-line tool
--precision PRECISION Create a build with single or double precision coordinates support. The default is float.

float
double
Use single precision coordinates
Use double precision coordinates
--plugins PLUGIN Build C++ plugins individually or in groups. The default is no. In the evaluation version of UNIGINE SDK, some plugins cannot be rebuilt.

no
all
AppEasyBlend
AppOculus
AppProjection
AppSeparate
AppSurround
AppVive
AppWall
FbxImporter
CadImporter
GPUMonitor
Interface
LeapMotion
OpenFlight
SSLSocket
Steam
Syncker
Kinect
VrpnClient
ARTTracker
Geodetics
Do not build plugins
Build all available plugins
AppEasyBlend plugin
Plugin for the Oculus Rift virtual display
AppProjection plugin
AppSeparate plugin
AppSurround plugin
AppVive plugin
Plugin for multi-monitor support
FbxImporter plugin
CadImporter plugin
GPUMonitor plugin
Interface plugin
LeapMotion plugin
Import plugin for OpenFlight
SSLSocket plugin
Plugin for Steam integration
Plugin for Multi-channel rendering synchronization
Kinect2 plugin
VRPN plugin
ARTTRACK plugin
Geodetics plugin

Plugins are specified in the following way:

Shell commands
--component plugins --plugin PluginName1 PluginName2 PluginName3
--tool TOOL Build UNIGINE tools individually or in groups (--component parameter should be set to all or tools). The default is all.

all
Archiver
Interpreter
Resource
Build all available tools
Archiver tool
Interpreter tool
Resource tool

Tools are specified in the following way:

Shell commands
--component tools --tool ToolName1 ToolName2 ToolName3
--log LOGFILE Create a log file that contains a record of the compilation. By default, no name is specified and the log file is not created.
--simd SIMD Perform parallel compilation using the SIMD operations. The default is sse2.

no
sse
sse2
avx
Do not use
Use SSE technology
Use SSE2 technology
Use AVX technology
--vs VS Version of Visual Studio build tools to be used. The default is v140.


v140
v141

Use VS2015, build tools v140
Use VS2017, build tools v141
--jobs JOBS Perform parallel compilation. An argument specifies the number of parallel building jobs to be run. The default is all.

all
1
2
3
4
6
8
16
Use all available CPU cores to run the building jobs
Use 1 thread
Use 2 threads
Use 3 threads
Use 4 threads
Use 6 threads
Use 8 threads
Use 16 threads
--clean_source Clean up the source directory before the compilation starts (i.e. remove pdb, ilk, exp files, etc.).
--clean_target Delete everything from the target directory before the compilation starts.
--clean_only Full clean up without compilation. The default is false.
--skip_errors Skip build errors (if any). When this option is set, the build.py script is run for all of the specified tools and plugins, even if errors occur. The build errors are displayed at the end.
Notice
This option allows skipping build errors only for tools and plugins.
This option allows you to check which plugins and tools have not been built successfully and speeds up error fixing.
--sample List of samples separated by spaces.
--verbose Enable verbose output.
--dry-run Print commands without building.
--batch Batch mode for msvc compiler.
--watermark Watermark type.

no Do not use any additional features.
evaluation Enable the TELNET terminal.
confidential Use the password. The <UnigineSDK>/source/engine/password.resource file should be created by using the Resource tool before rebuilding.
default Include microprofile - tiny third-party profiler with web integration.
--cmake_gen Cmake generators.
TARGET The last optional argument is a target directory to store builds, by default it's ../. Two additional directories in the target directory will be created: bin and lib to store the binary executable and libraries, respectively.

If no options are set, the script will be built with default values.

Usage Examples#

To build all the C++ and C# samples, type:

Shell commands
C:\UNIGINESDK\source>build.py --component samples --sample csharp

To build the release version of the GPUMonitor plugin, use the following command:

Shell commands
C:\UNIGINESDK\source>build.py --component plugins --plugin GPUMonitor
Last update: 11.11.2020