Startup Command-Line Options
Startup command-line options can be specified on the Unigine executable file launching. These options control what rendering API to use, what resolution to set for Unigine window, where resources for initializing the engine are stored, etc. The options are either set in Unigine SDK Browser or manually via the command line.
The syntax of command-line options is as follows: the full name of the binary executable (32- or 64-bit, development or production version) is specified first and then the start-up options.
main_* -command argument
main_* -command "argument,argument"
main_* -console_command "command argument"
All paths are specified as absolute or relative to the binary executable or the data directory.
If the same command is specified multiple times, only the last command will be taken into account by the engine. For example, in the following case, only the argument3 will be used by the engine:
-command "argument1" -command "argument2" -command "argument3"
Video Settings
Name | Description | Arguments | Default |
---|---|---|---|
-video_mode | Video mode to set window resolution or size | -1 is video_width ×video_height 0 is 640×360 1 is 960×540 2 is 1024×576 3 is 1280×720 4 is 1366×768 5 is 1600×900 6 is 1920×1080 7 is 2560×1440 8 is 3840×2160 9 is 640×400 10 is 960×600 11 is 1024×640 12 is 1280×800 13 is 1440×900 14 is 1680×1050 15 is 1920×1200 16 is 2560×1600 17 is 640×480 18 is 800×600 19 is 1024×768 20 is 1280×960 21 is 1280×1024 22 is 1600×1200 23 is 2048×1536 24 is 2560×2048 |
1 |
-video_width | Screen width
Makes sense only if video_mode =-1 |
0 –10000 | 0 |
-video_height | Screen height
Makes sense only if video_mode =-1 |
0 –10000 | 0 |
-video_resizable | Allows changing a window size on the fly, without having to restart the application | 0 is a non-resizable mode
1 is a resizable mode |
0 |
-video_fullscreen | Fullscreen mode | 0 is a windowed mode
1 is a fullscreen mode 2 is a fullwindow mode when an application window is rendered without decorations |
0 |
Graphics Settings
Name | Description | Arguments | Default |
---|---|---|---|
-video_app | Graphics API to be used for rendering:
|
"null"
"auto" "direct3d11" "opengl" |
"auto" |
-video_debug | Enables or disables the debug context of OpenGL or DirectX.
Enabling the debug context may cause performance drop (~30-40%). |
Direct X:
|
0 |
-video_gamma | Gamma correction value | 0.5 –3.5 | 1.0 |
-video_refresh | Graphics refresh rate | 0 –200 | 0 |
-video_quad_buffer | Enables of disables quad buffered stereo. | 0 to disable quad buffering
1 to enable quad buffering |
0 |
-video_surround | Allows rendering of the application across 3 monitors. | 0 to disable rendering across 3 monitors
1 to enable rendering across 3 monitors |
0 |
-video_surround_border | Sets the size of monitor bezel compensation in pixels. It is used together with -video_surround 1. | Size of the bezel compensation in pixels. | |
-video_vsync | Vertical synchronization (synchronize FPS with monitor's refresh rate) | 0 - don't use synchronization
1 - use synchronization |
0 |
File System
Name | Description | Arguments | Default |
---|---|---|---|
-data_path |
The list of the specified -data_path directories can be obtained via the getNumDataPaths() and getDataPath(int num) methods. the getDataPath() function without arguments will return the first specified-data_path directory. |
The arguments can be passed as follows:
|
../ |
-extern_package | UNG or ZIP package outside the data directory to be added to the file system. This enables to access resources by specifying a relative path to the file only inside the package. The path can be specified relatively to the binary executable or as an absolute path. |
The arguments can be passed as follows:
|
|
-plugin_path | Path to a directory that contains plugins. All of the plugins in this directory will be loaded automatically on the start-up. The path can be specified relatively to the binary executable or as an absolute path. The list of the specified -plugin_path directories can be obtained via the getNumPluginPaths() and getPluginPath(int num) methods. | The arguments can be passed as follows:
|
plugins/ |
-extern_package ../RELATIVE_PATH_1/ -extern_package ../RELATIVE_PATH_2/ -extern_package ABSOLUTE_PATH
Other Data
Name | Description | Arguments | Default |
---|---|---|---|
-engine_config | The configuration file used to read and store all global engine-related and project-related settings.
If the configuration file is stored in an .ung package, it won't be loaded and, therefore, the engine won't be initialized. However, when the file system is initialized, you can set the configuration file stored in the package via the config_load
console command. |
unigine.cfg | |
-engine_log | The log file to be created and used. The path can be specified as an absolute path or relatively to the binary executable. For relative paths, if the -project_name is set, the log file with the specified name will be created in the corresponding directory in the User profile (only the name will be used, the remaining part of the relative path will be discarded). | log.html | |
-editor_plugin | Loads the specified editor plugins. This command-line option should be used if the required editor plugins
are located outside the data/editor/plugins directory.
Paths to plugins should be relative to the data directory. Several comma-separated plugins with no whitespaces can be specified. |
../RELATIVE_PATH1/*.plugin, ../RELATIVE_PATH2/*.plugin, ... | |
-editor_script | Path to the editor script (specified relative to the data directory) | data/editor/editor.cpp | |
-gui_path | A path to a GUI skin to be used for the engine interface. The path can be specified as an absolute path or relatively to the first specified-data_path. | core/gui/ | |
-project_name | Forces the engine to store all changing data (a log file, cache files and the configuration file) in the User profile rather than in a directory with binaries. For that, a directory will be created with a specified PROJECT_NAME. both a or a path to the project directory relative to the User profile (for example, unigine_projects/my_project). | PROJECT_NAME, namely:
|
|
-system_script | Path to the system script (specified relative to the data directory). | core/unigine.cpp |
Engine-related Settings
Name | Description | Arguments |
---|---|---|
-console_command | Console command to be used at the engine start-up. Several commands can be separated using the && sequence. | command <arguments> |
-extern_plugin | Load a plugin library (the path is specified relative to the binary executable).
|
The arguments can be specified as follows:
|
-extern_define | External definition to be used.
|
The arguments can be specified as follows:
|
Sound Settings
Name | Description | Arguments | Default |
---|---|---|---|
-sound_app | Sound API to be used:
|
null
auto openal xaudio2 |
auto |