Urho3D - бесплатный, лёгкий, кросс-платформенный 2D/3D игровой движок, написанный на С++. Выпущен под лицензией MIT. Авторы вдохновлялись OGRE и Horde3D.
Rbfx бунтарская (Rebel) ветка rbfx, экспериментальное ответвление от Urho3D игрового движка.
Текущая версия Urho3D - 1.7.1
Особенности движка
- Рендеринг через Direct3D9, Direct3D11, OpenGL 2.0 или 3.2, OpenGL ES 2.0 или WebGL.
- HLSL или GLSL шейдеры + кеширование HLSL байт-кода.
- Настраиваемый конвейер рендеринга. Реализован по умолчанию для прямого, отложенного и pre-pass расчета освещения.
- Модель сцена основанная на компонентах.
- Анимация - скелетная (аппаратный скиннинг), морф-анимация вершин и анимация для узлов сцены.
- Автоматический инстансинг для видеокарт с поддержкой Shader Model 3
- Точечный, направленный и прожекторный тип источников света.
- Тени для всех источников света; каскадные тени для направленных источников света.
- Система частиц.
- Geomipmapped-ландшафт.
- Статичные и skinned декали.
- Дополнительные области рендеринга (отражения и прочее).
- Детализация для геометрии, материалов и анимации.
- Отсечение невидимой геометрии на основе програмной растеризации.
- Пост-обработка.
- HDR-рендеринг и PBR-рендеринг.
- 2D спрайты и частицы интегрированные в 3D сцену.
- Многопоточность на основе задач.
- Иерархический профайлер производительности.
- Загрузка сцены и объектов в двоичный и XML формат.
- Анимация атрибутов объектов.
- Фоновая загрузка ресурсов.
- Поддержка ввода от клавиатуры, мыши, джойстика и сенсорных устройств.
- Поддержка многоплатформенности с использованием SDL 2.0 (в настоящее время работает на Windows, Linux, Mac OS X, Android, iOS, Raspberry Pi включая другие платы на основе ARM и Web c Emscripten).
- Физика на основе Bullet.
- 2D физика на основе Box2D.
- Скрипты на AngelScript.
- Альтернативные скрипты на Lua или LuaJIT (Windows, Linux, Mac OS X, Android, Raspberry Pi и iOS).
- Поддержка сети на основе kNet с возможностью делать HTTP запросы.
- Поиск пути и симуляция толпы на Recast/Detour.
- Загрузка изображений с помощью stb_image + поддержка сжатых DDS / KTX / PVR.
- 2D и 3D воспроизведение звука OGG и WAV.
- Поддержка шрифтов TrueType используя FreeType, также поддерживаются шрифты AngelCode.
- Поддержка строк Unicode.
- Встроенная система интерфейса пользователя, система локализации и встроенные базы данных.
- Редактор сцены и интерфейса, реализованный в скриптах, с поддержкой отмены/повтора.
- Импорт сцен/моделей/анимации/материалов и различных форматов поддерживаемых Open Asset Import Library.
- Импорт xml-моделей Ogre3D.
- Поддержка различных сред разработки: Visual Studio, Xcode, Eclipse, CodeBlocks, CodeLite, QtCreator, CLion.
- Сборка в 32/64 битном режиме.
- Сборка как одной библиотеки, как статической так и динамической.
Ссылки:
Официальный англоязычный форум: https://discourse.urho3d.io/
Исходники на GitHub: https://github.com/urho3d/Urho3D/
Новейшая документация: https://urho3d.github.io/documentation/HEAD/index.html
Рекомендуем отдельный, прогрессирующий движок на базе Urho3D - Rbfx https://github.com/rokups/rbfx
Релизные скомпилированные версии и исходный код: https://sourceforge.net/projects/urho3d/files/Urho3D/
Релизная документация: https://urho3d.io/documentation/1.7.1/