Covellite++  Version: 2.3.0 Revision: 2580 Platform: x64 Build: 15:23 16.10.2020
Кроссплатформенный фреймворк для разработки приложений на С++
Класс covellite::expanse::Windowfinal

Класс входит в проект Covellite.Expanse
Класс окна, предоставлющего клиентскому коду возможности проекта. Подробнее...

#include <Window.hpp>

Граф наследования:covellite::expanse::Window:
Inheritance graph
Граф связей класса covellite::expanse::Window:
Collaboration graph

Открытые члены

ObjectId_t CreateObject (const GameObject_t &) override
 Функция создания 3D объекта. Подробнее...
 
void RemoveObject (const ObjectId_t) override
 Функция удаления объекта. Подробнее...
 
void DeferredCreateObject (const fnObjectCreation_t &, const fnObjectCreationCompleted_t &) override
 Функция создания 3D объекта. Подробнее...
 
void Add (const ObjectId_t) override
 Функция добавления идентификатора объекта в очередь рендеринга. Подробнее...
 

Подробное описание

Класс входит в проект Covellite.Expanse
Класс окна, предоставлющего клиентскому коду возможности проекта.

  • Подробное описание класса.
Версия
1.0.0.0
Дата
18 Июнь 2020
Автор
CTAPOBEP (unico.nosp@m.rnum.nosp@m..veru.nosp@m.m@gm.nosp@m.ail.c.nosp@m.om)

Методы

◆ Add()

void Window::Add ( const ObjectId_t  _Id)
overridevirtual

Функция добавления идентификатора объекта в очередь рендеринга.

  • Подразумевается, что рендеринг будет производиться в порядке добавления их идентификаторов.
Аргументы
[in]_IdИдентификатор объекта.

Замещает covellite::expanse::I3DScene.

◆ CreateObject()

ObjectId_t Window::CreateObject ( const GameObject_t &  _Object)
overridevirtual

Функция создания 3D объекта.

  • Функция создает 3D объект для указанного игрового объекта, после чего возвращает его идентификатор, который используется для рендеринга (реализация интерфеса I3DScene) и удаления объекта функцией RemoveObject().
  • Если в исходном наборе компонентов будет компонент Updater, для него будет создан отдельный рендер, который будет вызываться при обновлении сцены перед рендерингом кадра.
Аргументы
[in]_ObjectИгровой объект.
Возвращает
Идентификатор созданного объекта.
Исключения
std::exception
  • Действие невозможно (подробнее см. описание исключения).

Замещает covellite::expanse::IGameScene.

◆ DeferredCreateObject()

void Window::DeferredCreateObject ( const fnObjectCreation_t &  _fnObjectCreation,
const fnObjectCreationCompleted_t &  _Callback 
)
overridevirtual

Функция создания 3D объекта.

  • Функция помещает задание создания 3D объекта для указанного игрового объекта, после чего немедленно завершается (это действие выполняется очень быстро, поэтому таким образом можно сразу загрузить все объекты сцены, после чего рендерить их по мере создания).
  • Фактически объект будет создан позже (очередь создания объектов обрабатывается таким образом, чтобы слабо влиять на скорость рендеринга), после чего будет вызвана функция обратного вызова с идентификатором созданного объекта.
  • Полученный идентификатор может использоваться для рендеринга (реализация интерфеса I3DScene) и удаления объекта функцией RemoveObject().
  • Если в исходном наборе компонентов будет компонент Updater, для него будет создан отдельный рендер, который будет вызываться при обновлении сцены перед рендерингом кадра.
Аргументы
[in]_fnObjectCreationФункция создания игрового объекта.
[in]_CallbackФункция обратного вызова, которая вызывается после создания объекта.

Замещает covellite::expanse::IWindow.

◆ RemoveObject()

void Window::RemoveObject ( const ObjectId_t  _Id)
overridevirtual

Функция удаления объекта.

Аргументы
[in]_IdИдентификатор ранее созданного объекта.
Исключения
std::exception
  • Действие невозможно (подробнее см. описание исключения).

Замещает covellite::expanse::IGameScene.


Объявления и описания членов классов находятся в файлах: