This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Objects
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
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
Content Creation
Content Optimization
Materials
Art Samples
Tutorials
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

Unigine.BootConfig Class

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.cs

Source code (C#)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Unigine;

namespace UnigineApp
{
	class AppSystemLogic : SystemLogic
	{
		
		public override bool Shutdown()
		{
            // set the window title
            BootConfig.WindowTitle = "Project Name";
            Unigine.Console.SetString("starting_world", "my_world");

            // customize the boot screen
            BootConfig.ScreenWidth = 960;
            BootConfig.ScreenHeight = 540;

            BootConfig.ScreenBackgroundColor = vec4.BLACK;
            BootConfig.ScreenTransform = new vec4(1.0f, 1.0f, 0.5f, 0.5f);

            BootConfig.ScreenThreshold = 16;
            BootConfig.ScreenTexture = "textures/boot_screen.png";

            BootConfig.ScreenText = @"
		<![CDATA[
			<p align=""center"">
				<font color=""#ffffff"" size=""64"">
					<xy x=""%10"" y=""%50""/>Small Village
				</font>
			</p>
		]]>";

            BootConfig.ScreenMessageEngineInit = @"
		<![CDATA[
			<p><font size=""24"" color=""#777777"">
				Engine initialization.
			</font></p>
		]]>";
            BootConfig.ScreenMessageFileSystemInit = "Custom message for file system initialization.";
            BootConfig.ScreenMessageMaterialsInit = "Custom message for materials initialization.";
            BootConfig.ScreenMessagePropertiesInit = "Custom message for properties initialization.";
            BootConfig.ScreenMessagePluginsInit = "Custom message for plugins initialization.";
            BootConfig.ScreenMessageShadersCompilation = "Custom message for shaders compilation.";

            BootConfig.Save();

            return true;
		}
	}
}

See Also#

BootConfig Class

Properties

string ScreenMessageShadersCompilation#

The message currently displayed on shaders compilation.
set
Sets the message to be displayed on shaders compilation. The message is set the same way as the screen text.
set value - Message for shaders compilation.

string ScreenMessagePluginsInit#

The message currently displayed on plugins initialization.
set
Sets the message to be displayed on the plugins initialization. The message is set the same way as the screen text.
set value - Message for plugins initialization.

string ScreenMessagePropertiesInit#

The message currently displayed on properties initialization.
set
Sets the message to be displayed on properties initialization. The message is set the same way as the screen text.
set value - Message for properties initialization.

string ScreenMessageMaterialsInit#

The message currently displayed on materials initialization.
set
Sets the message to be displayed on materials initialization. The message is set the same way as the screen text.
set value - Message for materials initialization.

string ScreenMessageFileSystemInit#

The message currently displayed on the file system initialization.
set
Sets the message to be displayed on the file system initialization. The message is set the same way as the screen text.
set value - Message for file system initialization.

string ScreenMessageEngineInit#

The message currently displayed on the engine initialization.
set
Sets the message to be displayed on the engine initialization. The message is set the same way as the screen text.
set value - Message on the engine initialization.

string ScreenText#

The current text of the boot screen.
set
Sets the text of the boot screen.
set value - 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.
Notice
Rich text should be enclosed in <![CDATA[]]> section.

string ScreenFont#

The current path to the font for text rendering.
set
Sets the 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.
set value - Path to the font for text rendering.

string ScreenTexture#

The current path to the boot screen texture.
set
Sets the path to the boot screen texture.
Notice
Textures or any other resources used in the Boot screen cannot be packed into an UNG archive.
set value - Path to the boot screen texture.

int ScreenThreshold#

The current threshold for blending based on the alpha-channel.
set
Sets the threshold for blending based on the alpha-channel.
set value - Threshold for blending based on the alpha-channel.

vec4 ScreenTransform#

The current transformation of the boot screen texture.
set
Sets the transformation of the boot screen texture. The default value is vec4(1.0f, 1.0f, 0.5f, 0.5f).
set value - 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

vec4 ScreenBackgroundColor#

The current background color of the screen.
set
Sets the background color of the screen. The default value is vec4_zero.
set value - Background color defined by a vector of four numbers in the [0; 1] range.

int ScreenHeight#

The height of the boot screen window, in pixels.
set
Sets the height of the boot screen window, in pixels.
set value - Height of the boot screen window, in pixels.

int ScreenWidth#

The current width of the boot screen window.
set
Sets the width of the boot screen window, in pixels.
set value - Width of the boot screen window, in pixels.

int NumExternPlugins#

The 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().

int NumPluginPaths#

The 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()

string ConsoleCommand#

Console command(s) currently used at the Engine startup (corresponds to the console_command element of the .boot configuration file).
set
Sets a new Console command(s) to be used at the Engine startup (corresponds to the console_command element of the .boot configuration file).
set value - Console command(s) to be used at the engine startup. Several commands can be separated using the && sequence.

string ExternDefine#

Extern define(s) currently used at the Engine startup (corresponds to the extern_define element of the .boot configuration file).
set
Sets extern define(s) to be used at the Engine startup (corresponds to the extern_define element of the .boot configuration file).
set value - External definition(s) to be used. 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

string SoundApp#

The sound API currently used (corresponds to the sound_app element of the .boot configuration file).
set
Sets a new sound API to be used (corresponds to the sound_app element of the .boot configuration file).
set value - Sound API used for rendering: nosound, auto, or openal.

string VideoApp#

The graphics API currently used for rendering (corresponds to the video_app element of the .boot configuration file).
set
Sets a new graphics API to be used for rendering. (corresponds to the video_app element of the .boot configuration file).
set value - Graphics API used for rendering: null, auto, dx, or gl.

string SystemCache#

The current path to a cache file to be used by the Engine (corresponds to the system_cache element of the .boot configuration file).
set
Sets a new path to a cache file to be used by the Engine (corresponds to the system_cache element of the .boot configuration file).
set value - Path to a cache file currently used by the Engine. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

string EditorCache#

The path to a cache file currently used by the UnigineEditor (corresponds to the editor_cache element of the .boot configuration file).
set
Sets a new path to a cache file to be used by the UnigineEditor (corresponds to the editor_cache element of the .boot configuration file).
set value - Path to a cache file to be used by the UnigineEditor. Can be an absolute path or a path relative to the data path, or to the cache path (if any).

string CachePath#

The current path to store system and Editor cache files(corresponds to the cache_path element of the .boot configuration file).
set
Sets a new path to store system and Editor cache files(corresponds to the cache_path element of the .boot configuration file).
set value - Path to store system and Editor cache files. Can be an absolute path or a relative path to the data path.

string EditorScript#

The path to the editor script (corresponds to the system_script element of the .boot configuration file).
set
Sets a new path to the editor script (corresponds to the system_script element of the .boot configuration file).
set value - Path to the editor script (specified relative to the data folder).

string SystemScript#

The path to the system script (corresponds to the system_script element of the .boot configuration file).
set
Sets a new path to the system script (corresponds to the system_script element of the .boot configuration file).
set value - Path to the system script (specified relative to the data folder).

string EngineLog#

A log file (in txt format) currently 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).
set
Sets a log file (in txt format) to be created and 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).
set value - Log file (in txt format) to be used by the Engine.

string GuiPath#

A path to a gui skin currently used for the engine interface. the path can be specified as absolute or relatively to the data folder.
set
Sets 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 data folder.
set value - Path to a GUI skin to be used for the Engine interface (absolute path or path relative to the data folder).

bool Autosave#

Console: boot_config_autosave
A value indicating if current 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.
set
Sets a value indicating if current 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.
set value - true to enable automatic saving of current startup configuration settings; false — to disable it.

string Path#

Console: boot_config
The current path to the startup configuration file (default: configs/default.boot).
set
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_path or <project_name> folder if the -project_name is set. To run the application with another boot configuration file, specify the path to it using the ‑boot_config command-line option.
set value - New path to the startup configuration file to be set.

string WindowTitle#

Title of the application window.
set
Sets a new title for the application window.
set value - New application window title to be set.

Members


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 ( ) #

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

string 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, string 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.
  • string 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

string 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, string 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.
  • string 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 SetWindowTitle ( string title ) #

Sets a new title for the application window.

Arguments

  • string title - New application window title to be set.

string GetWindowTitle ( ) #

Returns the current application window title.

Return value

Current application window title.
Last update: 2021-04-29
Build: ()