Как обрабатывать различия API при разработке рендера, управляемого данными?

Я работаю над движком рендерера в реальном времени для игры ( https://github.com/ghostec/White). Я реализовывал это, используя подход ООП. Однако, прочитав о программировании на основе данных, я испытываю желание переписать свой код с помощью этой парадигмы.

Я использовал виртуальные (абстрактные фабрики), чтобы быть независимым от API (DirectX против OpenGL).

Поскольку DDP в основном о данных. Как я могу спроектировать, например, мой класс Model (если вы посмотрите на мой код, есть классы Model, ModelOpenGL, ModelFactory и ModelFactoryOpenGL) для работы с DirectX и OpenGL?

OpenGL и DirectX имеют разные элементы данных, и я предполагаю, что даже с аналогичными типами данных они могут обрабатывать их по-разному. Как это отразится на моем коде?

1 ответ

Я получил отличный ответ на /r/gamedev

Проверьте это: http://www.reddit.com/r/gamedev/comments/22e81o/how_to_handle_api_differences_when_developing_a/

Другие вопросы по тегам