Об этом проекте
Polyray Game Engine — это игровой движок, написанный с нуля, описываемый как высокомодульный и гибкий, предназначенный для поддержки широкого спектра проектов и приложений. Он ориентирован на Windows и Linux.
Архитектура и основные системы:
- Data-oriented design: проект заявляет, что избегает ООП, наследования и виртуальных функций, а всё рассматривается как данные.
- Собственная ECS с поддержкой пользовательских реализаций хранения компонентов.
- Системы 2D- и 3D-сцен.
- 2D- и 3D-физический движок с интеграцией Верле, поддерживающий пользовательские типы коллайдеров.
- Система скриптинга времени компиляции.
- Математическая библиотека в стиле GLSL (prvl), стремящаяся оставаться как можно ближе к настоящему GLSL.
Рендеринг:
- Материалы по умолчанию — PBR.
- Карты теней, SSAO, bloom и функция "Improved Alpha 2 Cover".
- Конвейер рендеринга указан как находящийся в разработке.
Анимация и ассеты:
- Система анимации, способная анимировать любой член компонента.
- Система скиннинга.
- Загрузчик GLTF, который строит сцену полностью с мешами, анимациями, скинами, источниками света и камерами.
Сетевое взаимодействие и инструменты:
- Мультиплеер с собственным пакетным протоколом, включая менеджер клиентов и хостинг сервера.
- Высокоразрешающий профилировщик, использующий rdtsc с накладными расходами примерно в 20 циклов.
Статус: в README система анимации, загрузчик GLTF, система скиннинга, конвейер рендеринга, система мультиплеера и дополнительные функции рендеринга отмечены как находящиеся в разработке. Демонстрационные изображения для 2D probe-based RTGI, heightmap terrain и voxel raytracing явно отмечены как пока недоступные, с планами превратить их в модули в ближайшем будущем. В README есть ссылка на демонстрационное видео.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.