This page has been translated automatically.
Getting Started
Migrating to UNIGINE 2.0
C++ API Migration
The Language
Core Library
Engine Library
Node-Related Classes
GUI-Related Classes
Plugins Library
Usage Examples
API Reference
Integration Samples
Usage Examples
C++ Plugins
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.

Game Class

The Game class manages a game. This class loads the level logic and the logic of all of the user entities.

The Game class implementation can be found in the data/framework/game/game.h file.

Game Class


Game ()

Constructor. Creates a new Game class instance.

void init (GameData data, int level_index)

Creates a game and initializes the necessary resources on the game launch.


  • GameData data - Game data.
  • int level_index - Loaded level index.

void update ()

Updates a game.

void flush ()

Updates game physics.

void shutdown ()

Releases game resources.

void render ()

Updates a game after the update() function is invoked.

GameData getGameData ()

Returns game data.

Return value

Game data.

Entity createEntity (string type)

Creates an Entity class instance.


  • string type - Entity type.

Return value

Entity class instance.

float getGameIFps ()

Returns the engine ifps. It is the fastest way to get the ifps.

Return value

Engine ifps.

float getPhysicsIFps ()

Returns the physics ifps. It is the fastest way to get the physics ifps.

Return value

Physics ifps.

void setFields (Entity entity)

Invokes all of the setter fields methods of the entity with the corresponding entity values.


  • Entity entity - Entity.

int getActiveLevelIndex ()

Returns an index of the active level.

Return value

Active level index.

void loadLevel (variable index)

Loads a level.


  • variable index - Level number if index is an integer; level name if index is a string.

void setGameParameter (string name, variable value)

Sets the game custom parameter.


  • string name - Unique parameter name.
  • variable value - Parameter value. The value can be the following types: int, float, double, vec3, vec4, string.

variable getGameParameter (string name)

Returns the custom parameter value.


  • string name - Parameter name.

Return value

Custom parameter value if it is found; otherwise 0.

variable getGameParameter (string name, int default_value)

Returns a parameter value.


  • string name - Parameter name.
  • int default_value - Default value.

Return value

Custom parameter value if it is found; otherwise a default value.

string getLogicNamespaceName ()

Returns the name of the namespace, which contains the custom logic.

Return value

Namespace name.

int isGameParameter (string name)

Returns a value indicating if the game parameter exists.


  • string name - Parameter name.

Return value

1 if the parameter exists; otherwise 0.
Last update: 2017-07-03
Build: ()