Engee documentation

Integration of Engee with UNIGINE

Two classes are implemented for integration: EngeeServerSocket and `EngeeClientSocket'. These are network sockets designed to exchange data with the partition blocks. Software Environment UNIGINE in the Engee system. To use these classes, you need to add their source code to the file `CMakeLists.txt ` by analogy with the example in the UNIGINE integration directory.

Project Configuration

The application is being used without a template.

Development environment: C++ and CMake build system.

In this configuration, all the logic of the world (including the behavior of objects) is implemented in the AppWorldLogic' class. The `AppEditorLogic and AppSystemLogic classes are not used in this integration.

Example of integration

The Socket directory contains the source files of the new classes, as well as the definition of the data transfer protocol (`common_types.h').

The world initialization method adds:

  • Creating an instance of EngeeClientSocket' that connects to address `127.0.0.1 and port 5150;

  • Getting an object (node) by name, for example, `material_ball'.

In the world update method (calculation of each frame):

  • Data is received from the Engee socket;

  • The object’s position is updated: the coordinates received via the socket are added to the current position.

When the world is closed, the socket closure method is called.