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 port5150
; -
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.