This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Basics
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Animations-Related Classes
Containers
Common Functionality
Controls-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
VR-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine::BootConfig Class

Header: #include <UnigineConfig.h>

A singleton that controls the Engine startup configuration and enables you to customize the boot screen.

Notice
Fonts, textures, or any other resources used in the boot screen cannot be packed into an UNG archive.

Usage Example#

By using the BootConfig class, you can customize the boot screen and change the startup settings and save them to the configuration file for the next engine start-up. For example:

AppSystemLogic.cpp

Source code (C++)
#include "AppSystemLogic.h"
#include <UnigineConfig.h>
#include <UnigineConsole.h>

using namespace Unigine;

/* .. */

int AppSystemLogic::shutdown()
{
	// set the window title
	BootConfig::setWindowTitle("Project Name");
	Console::setString("starting_world", "my_world");

	// customize the boot screen
	BootConfig::setScreenWidth(960);
	BootConfig::setScreenHeight(540);

	BootConfig::setScreenBackgroundColor(Math::vec4_black);
	BootConfig::setScreenTransform(Math::vec4(1.0f, 1.0f, 0.5f, 0.5f));

	BootConfig::setScreenThreshold(16);
	BootConfig::setScreenTexture("textures/boot_screen.png");

	BootConfig::setScreenText("								\
			<p align=\"center\">							\
				<font color=\"#ffffff\" size=\"64\">		\
					<xy x=\"%10\" y=\"%50\"/>Helicopter	\
				</font>										\
			</p>");
	BootConfig::setScreenMessageEngineInit(R"(					\
			<p><font size=\"24\" color=\"#777777\">			\
				Engine initialization.						\
			</font></p>)");
	BootConfig::setScreenMessageFileSystemInit("Custom message for file system initialization.");
	BootConfig::setScreenMessageMaterialsInit("Custom message for materials initialization.");
	BootConfig::setScreenMessagePropertiesInit("Custom message for properties initialization.");
	BootConfig::setScreenMessageShadersCompilation("Custom message for shaders compilation.");

	BootConfig::save();

	return 1;
}

See Also#

BootConfig Class

Members

void setScreenEnabled ( bool enabled ) #

Sets a new value indicating if the boot screen is enabled.

Arguments

  • bool enabled - Set true to enable the boot screen; false - to disable it.

bool isScreenEnabled() const#

Returns the current value indicating if the boot screen is enabled.

Return value

true if the boot screen is enabled; otherwise false.

void setScreenMessageShadersCompilation ( const char * compilation ) #

Sets a new message displayed on shaders compilation. The message is set the same way as the screen text.

Arguments

  • const char * compilation - The message for shaders compilation.

const char * getScreenMessageShadersCompilation() const#

Returns the current message displayed on shaders compilation. The message is set the same way as the screen text.

Return value

Current message for shaders compilation.

void setScreenMessageEngineInit ( const char * init ) #

Sets a new message to be displayed on the engine initialization. The message is set the same way as the screen text.

Arguments

  • const char * init - The Message for the engine initialization.

const char * getScreenMessageEngineInit() const#

Returns the current message to be displayed on the engine initialization. The message is set the same way as the screen text.

Return value

Current Message for the engine initialization.

void setScreenMessageFileSystemInit ( const char * init ) #

Sets a new message to be displayed on the file system initialization. The message is set the same way as the screen text.

Arguments

  • const char * init - The Message for the file system initialization.

const char * getScreenMessageFileSystemInit() const#

Returns the current message to be displayed on the file system initialization. The message is set the same way as the screen text.

Return value

Current Message for the file system initialization.

void setScreenMessagePropertiesInit ( const char * init ) #

Sets a new message displayed on properties initialization.The message is set the same way as the screen text.

Arguments

  • const char * init - The message for properties initialization.

const char * getScreenMessagePropertiesInit() const#

Returns the current message displayed on properties initialization.The message is set the same way as the screen text.

Return value

Current message for properties initialization.

void setScreenMessageStaticMeshesInit ( const char * init ) #

Sets a new message to be displayed on static meshes initialization. The message is set the same way as the screen text.

Arguments

  • const char * init - The Message for static meshes initialization.

const char * getScreenMessageStaticMeshesInit() const#

Returns the current message to be displayed on static meshes initialization. The message is set the same way as the screen text.

Return value

Current Message for static meshes initialization.

void setScreenMessageMaterialsInit ( const char * init ) #

Sets a new message to be displayed on materials initialization. The message is set the same way as the screen text.

Arguments

  • const char * init - The Message for materials initialization.

const char * getScreenMessageMaterialsInit() const#

Returns the current message to be displayed on materials initialization. The message is set the same way as the screen text.

Return value

Current Message for materials initialization.

void setScreenMessageMaterialsPreloading ( const char * preloading ) #

Sets a new message to be displayed on materials preloading.

Arguments

  • const char * preloading - The Message for materials preloading.

const char * getScreenMessageMaterialsPreloading() const#

Returns the current message to be displayed on materials preloading.

Return value

Current Message for materials preloading.

void setScreenText ( const char * text ) #

Sets a new text of the boot screen.

Arguments

  • const char * text - The text of the boot screen. Can be either a plain or rich text. A number of aliases is provided:
    • UNIGINE_COPYRIGHT — the UNIGINE copyright text.
    • UNIGINE_VERSION — the current UNIGINE version.
    • LOADING_PROGRESS — the loading progress going from 0 to 100.

const char * getScreenText() const#

Returns the current text of the boot screen.

Return value

Current text of the boot screen. Can be either a plain or rich text. A number of aliases is provided:
  • UNIGINE_COPYRIGHT — the UNIGINE copyright text.
  • UNIGINE_VERSION — the current UNIGINE version.
  • LOADING_PROGRESS — the loading progress going from 0 to 100.

void setScreenFont ( const char * font ) #

Sets a new path to the font for text rendering.
Notice
Fonts or any other resources used in the Boot screen cannot be packed into an UNG archive.

Arguments

  • const char * font - The path to the font for text rendering.

const char * getScreenFont() const#

Returns the current path to the font for text rendering.
Notice
Fonts or any other resources used in the Boot screen cannot be packed into an UNG archive.

Return value

Current path to the font for text rendering.

void setScreenTexture ( const char * texture ) #

Sets a new path to the boot screen texture.
Notice
Textures or any other resources used in the Boot screen cannot be packed into an UNG archive.

Arguments

  • const char * texture - The path to the boot screen texture.

const char * getScreenTexture() const#

Returns the current path to the boot screen texture.
Notice
Textures or any other resources used in the Boot screen cannot be packed into an UNG archive.

Return value

Current path to the boot screen texture.

void setScreenThreshold ( int threshold ) #

Sets a new threshold for blending based on the alpha-channel.

Arguments

  • int threshold - The threshold for blending based on the alpha-channel.

int getScreenThreshold() const#

Returns the current threshold for blending based on the alpha-channel.

Return value

Current threshold for blending based on the alpha-channel.

void setScreenTransform ( const Math::vec4& transform ) #

Sets a new transformation of the boot screen texture. The default value is vec4(1.0f, 1.0f, 0.5f, 0.5f).

Arguments

  • const Math::vec4& transform - The transformation of the screen defined by a vector of four numbers in the [0; 1] range:
    1. Texture size multiplier
    2. Window size multiplier
    3. Horizontal position
    4. Vertical position

Math::vec4 getScreenTransform() const#

Returns the current transformation of the boot screen texture. The default value is vec4(1.0f, 1.0f, 0.5f, 0.5f).

Return value

Current transformation of the screen defined by a vector of four numbers in the [0; 1] range:
  1. Texture size multiplier
  2. Window size multiplier
  3. Horizontal position
  4. Vertical position

void setScreenBackgroundColor ( const Math::vec4& color ) #

Sets a new background color of the screen.

Arguments

  • const Math::vec4& color - The background color defined by a vector of four numbers in the [0; 1] range.

Math::vec4 getScreenBackgroundColor() const#

Returns the current background color of the screen.

Return value

Current background color defined by a vector of four numbers in the [0; 1] range.

void setScreenHeight ( int height ) #

Sets a new height of the boot screen window, in pixels.

Arguments

  • int height - The height of the boot screen window, in pixels.

int getScreenHeight() const#

Returns the current height of the boot screen window, in pixels.

Return value

Current height of the boot screen window, in pixels.

void setScreenWidth ( int width ) #

Sets a new width of the boot screen window.

Arguments

  • int width - The width of the boot screen window, in pixels.

int getScreenWidth() const#

Returns the current width of the boot screen window.

Return value

Current width of the boot screen window, in pixels.

int getNumExternPlugins() const#

Returns the current number of plugin libraries to be automatically loaded at the Engine startup. These plugins are specified in the .boot configuration file via the extern_plugin element. The list of these plugin paths can be obtained via the getNumExternPlugins() and getExternPlugin(int num) methods. The order of loading plugins matters, you can rearrange them via swapPluginPath().

Return value

Current number of plugin libraries to be loaded at the Engine startup.

int getNumPluginPaths() const#

Returns the current number of directory(ies) containing plugins to be automatically loaded at the Engine startup. These directories are specified in the .boot configuration file via the plugin_path element. The list of these plugin paths can be obtained via the getNumPluginPaths() and getPluginPath(int num) methods. The order of loading plugins matters, you can rearrange the paths via swapPluginPath()

Return value

Current number of plugin directories.

void setConsoleCommand ( const char * command ) #

Sets a new console command(s) used at the Engine startup (corresponds to the console_command element of the .boot configuration file).

Arguments

  • const char * command - The console command(s) used at the Engine startup. Several commands can be separated using the && sequence.

const char * getConsoleCommand() const#

Returns the current console command(s) used at the Engine startup (corresponds to the console_command element of the .boot configuration file).

Return value

Current console command(s) used at the Engine startup. Several commands can be separated using the && sequence.

void setExternDefine ( const char * define ) #

Sets a new extern define(s) used at the Engine startup (corresponds to the extern_define element of the .boot configuration file).

Arguments

  • const char * define - The external definition(s) used at the Engine startup. Several definitions are comma separated (no whitespaces). Definitions can be specified as follows:
    • DEFINITION_NAME
    • DEFINITION_NAME=VALUE
    • DEFINITION_NAME_1,DEFINITION_NAME_2,
      DEFINITION_NAME_3=VALUE,...,DEFINITION_NAME_N

const char * getExternDefine() const#

Returns the current extern define(s) used at the Engine startup (corresponds to the extern_define element of the .boot configuration file).

Return value

Current external definition(s) used at the Engine startup. Several definitions are comma separated (no whitespaces). Definitions can be specified as follows:
  • DEFINITION_NAME
  • DEFINITION_NAME=VALUE
  • DEFINITION_NAME_1,DEFINITION_NAME_2,
    DEFINITION_NAME_3=VALUE,...,DEFINITION_NAME_N

void setSoundApp ( const char * app ) #

Sets a new sound API used (corresponds to the sound_app element of the .boot configuration file).

Arguments

  • const char * app - The sound API used for rendering: nosound, auto, or openal.

const char * getSoundApp() const#

Returns the current sound API used (corresponds to the sound_app element of the .boot configuration file).

Return value

Current sound API used for rendering: nosound, auto, or openal.

void setVideoApp ( const char * app ) #

Sets a new graphics API used for rendering (corresponds to the video_app element of the .boot configuration file).

Arguments

  • const char * app - The graphics API used for rendering: null, auto, dx, dx11, direct3d11, dx12, direct3d12, vk, vulkan.

const char * getVideoApp() const#

Returns the current graphics API used for rendering (corresponds to the video_app element of the .boot configuration file).

Return value

Current graphics API used for rendering: null, auto, dx, dx11, direct3d11, dx12, direct3d12, vk, vulkan.

void setSystemCache ( const char * cache ) #

Sets a new path to a cache file used by the Engine (corresponds to the system_cache element of the .boot configuration file).

Arguments

  • const char * cache - The path to a cache file used by the Engine. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

const char * getSystemCache() const#

Returns the current path to a cache file used by the Engine (corresponds to the system_cache element of the .boot configuration file).

Return value

Current path to a cache file used by the Engine. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

void setEditorCache ( const char * cache ) #

Sets a new path to a cache file used by the UnigineEditor (corresponds to the editor_cache element of the .boot configuration file).

Arguments

  • const char * cache - The path to a cache file used by the UnigineEditor. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

const char * getEditorCache() const#

Returns the current path to a cache file used by the UnigineEditor (corresponds to the editor_cache element of the .boot configuration file).

Return value

Current path to a cache file used by the UnigineEditor. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

void setCachePath ( const char * path ) #

Sets a new path to the store system and Editor cache files(corresponds to the cache_path element of the .boot configuration file).

Arguments

  • const char * path - The path to the store system and Editor cache files. Can be an absolute path or a relative path to the data path.

const char * getCachePath() const#

Returns the current path to the store system and Editor cache files(corresponds to the cache_path element of the .boot configuration file).

Return value

Current path to the store system and Editor cache files. Can be an absolute path or a relative path to the data path.

void setEditorScript ( const char * script ) #

Sets a new path to the editor script (corresponds to the system_script element of the .boot configuration file).

Arguments

  • const char * script - The path to the editor script (specified relative to the data folder).

const char * getEditorScript() const#

Returns the current path to the editor script (corresponds to the system_script element of the .boot configuration file).

Return value

Current path to the editor script (specified relative to the data folder).

void setSystemScript ( const char * script ) #

Sets a new path to the system script (corresponds to the system_script element of the .boot configuration file).

Arguments

  • const char * script - The path to the system script (specified relative to the data folder).

const char * getSystemScript() const#

Returns the current path to the system script (corresponds to the system_script element of the .boot configuration file).

Return value

Current path to the system script (specified relative to the data folder).

void setEngineLog ( const char * log ) #

Sets a new log file (in TXT format) used by the Engine. The path can be absolute or relative to the binary executable. For relative paths, if the Project Name startup parameter 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).

Arguments

  • const char * log - The log file (in TXT format) used by the Engine.

const char * getEngineLog() const#

Returns the current log file (in TXT format) used by the Engine. The path can be absolute or relative to the binary executable. For relative paths, if the Project Name startup parameter 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).

Return value

Current log file (in TXT format) used by the Engine.

void setGuiPath ( const char * path ) #

Sets a new path to a GUI skin used for the engine interface. The path can be specified as absolute or relatively to the data folder.

Arguments

  • const char * path - The path to a GUI skin used for the Engine interface (absolute path or path relative to the data folder).

const char * getGuiPath() const#

Returns the current path to a GUI skin used for the engine interface. The path can be specified as absolute or relatively to the data folder.

Return value

Current path to a GUI skin used for the Engine interface (absolute path or path relative to the data folder).

void setAutosave ( bool autosave ) #

Sets a new value indicating if the startup configuration settings are automatically saved to the corresponding config file on loading, closing, and saving the world, as well as on the Engine shutdown.

Arguments

  • bool autosave - Set true to enable automatic saving of current startup configuration settings; false - to disable it.

bool isAutosave() const#

Returns the current value indicating if the startup configuration settings are automatically saved to the corresponding config file on loading, closing, and saving the world, as well as on the Engine shutdown.

Return value

true if automatic saving of current startup configuration settings is enabled; otherwise false.

void setPath ( const char * path ) #

Sets a new path to the startup configuration file (default: configs/default.boot). The path can be specified as an absolute path or relative to the -data_pathor <project_name> folder if the -project_nameis set. To run the application with another boot configuration file, specify the path to it using the ‑boot_config command-line option.

Arguments

  • const char * path - The path to the startup configuration file.

const char * getPath() const#

Returns the current path to the startup configuration file (default: configs/default.boot). The path can be specified as an absolute path or relative to the -data_pathor <project_name> folder if the -project_nameis set. To run the application with another boot configuration file, specify the path to it using the ‑boot_config command-line option.

Return value

Current path to the startup configuration file.

void setWindowTitle ( const char * title ) #

Sets a new title of the application window.

Arguments

  • const char * title - The application window title.

const char * getWindowTitle() const#

Returns the current title of the application window.

Return value

Current application window title.

void setWindowIconPath ( const char * path ) #

Sets a new path to the custom icon for the final application's window.

Arguments

  • const char * path - The path to the custom icon for the final application's window.

const char * getWindowIconPath() const#

Returns the current path to the custom icon for the final application's window.

Return value

Current path to the custom icon for the final application's window.

bool load ( ) #

Console: boot_config_load
Loads Engine startup configuration from the file. To change the path to the configuration file use the setPath() method.

Return value

true if the config is successfully loaded from the file; otherwise, false.

bool save ( ) const#

Console: boot_config_save
Saves the current Engine startup configuration to the file. To change the path to the configuration file use the setPath() method.

Return value

true if the current configuration is successfully saved to the file; otherwise, false.

void reset ( ) #

Resets the settings in the Engine startup configuration file to the default.

void removePluginPath ( int num ) #

Removes a plugin path with the specified number from the list of the plugin paths specified in the .boot configuration file via the plugin_path element.A plugin path is a directory containing plugins to be automatically loaded at the Engine startup.

Arguments

void swapPluginPath ( int num0, int num1 ) #

Swaps two plugin paths with the given numbers specified in the .boot configuration file.A plugin path is a directory containing plugins to be automatically loaded at the Engine startup. The list of these plugin paths can be obtained via the getNumPluginPaths() and getPluginPath(int num) methods. The order of loading plugins matters, you can rearrange the paths via swapPluginPath()

Arguments

const char * getPluginPath ( int num ) #

Returns a plugin path with the given number specified in the .boot configuration file via the plugin_path element.A plugin path is a directory containing plugins to be automatically loaded at the Engine startup. The order of loading plugins matters, you can rearrange the paths via swapPluginPath().

Arguments

Return value

Path to the plugins directory with the given number in the list of the plugin paths. Сan be absolute or specified relatively to the binary executable.

void setPluginPath ( int num, const char * value ) #

Sets a new path for the item of the list of the plugin paths with the given number specified in the .boot configuration file via the plugin_path element.A plugin path is a directory containing plugins to be automatically loaded at the Engine startup. The order of loading plugins matters, you can rearrange the paths via swapPluginPath().

Arguments

  • int num - Plugin path number in the list of the specified plugin paths.
  • const char * value - New path to be set for the specified item of the list of the plugin paths. Сan be specified relatively to the binary executable or as an absolute path.

void removeExternPlugin ( int num ) #

Removes a plugin with the specified number from the list of the plugins specified in the .boot configuration file via the extern_plugin element.

Arguments

void swapExternPlugin ( int num0, int num1 ) #

Swaps two plugins with the given numbers specified in the .boot configuration file.The list of these plugins can be obtained via the getNumExternPlugins() and getExternPlugin(int num) methods. The order of loading plugins matters, this method enables you to rearrange plugins to change loading order.

Arguments

const char * getExternPlugin ( int num ) #

Returns the name of the plugin with the given number specified in the .boot configuration file via the extern_plugin element.The order of loading plugins matters, you can rearrange the paths via swapExternPlugin().

Arguments

Return value

Name of the plugin with the given number specified in the .boot configuration file. Plugin library name goes without any prefixes and postfixes (e.g., libNetwork_x64d.so is listed as "Network").

void setExternPlugin ( int num, const char * value ) #

Sets a new name of the plugin with the given number specified in the .boot configuration file via the extern_plugin element.The order of loading plugins matters, you can rearrange the paths via swapExternPlugin().

Arguments

  • int num - Number of the plugin to be set in the list of the specified plugins, in the range from 0 to the total number of plugins specified.
  • const char * value - Name of the plugin with the given number specified in the .boot configuration file. Plugin library name goes without any prefixes and postfixes (e.g., libNetwork_x64d.so is listed as "Network").
Last update: 2024-08-16
Build: ()