Документация Engee

Интеграция Engee с UNIGINE

Страница в процессе разработки.

Для интеграции реализованы два класса: EngeeServerSocket и EngeeClientSocket. Это сетевые сокеты, предназначенные для обмена данными с блоками раздела Оборудование UNIGINE в системе Engee. Чтобы использовать эти классы, необходимо добавить их исходники в файл CMakeLists.txt по аналогии с примером в директории интеграции UNIGINE.

Конфигурация проекта

Используется приложение без шаблона.

Среда разработки: C++ и система сборки CMake.

В этой конфигурации вся логика мира (включая поведение объектов) реализована в классе AppWorldLogic. Классы AppEditorLogic и AppSystemLogic в данной интеграции не используются.

Пример интеграции

В директории Socket находятся исходные файлы новых классов, а также определение протокола передачи данных (common_types.h).

В метод инициализации мира добавляется:

  • Создание экземпляра EngeeClientSocket, который подключается к адресу 127.0.0.1 и порту 5150;

  • Получение объекта (ноды) по имени, например, material_ball.

В методе обновления мира (расчет каждого кадра):

  • Получаются данные с сокета Engee;

  • Позиция объекта обновляется: к текущей позиции прибавляются координаты, пришедшие по сокету.

При закрытии мира вызывается метод закрытия сокета.

Полезные ссылки