Российский игровой движок NauEngine начал бета-тестирование

26 ноября 2024 года стартовало бета-тестирование открытого российского игрового движка NauEngine и интегрированной среды разработки NauEditor. Проект, изначально разработанный компанией VK (Россия), сейчас развивается независимой компанией "Н-Джинн" (Россия). Код движка распространяется под свободной лицензией BSD, что делает его полностью бесплатным для коммерческого и некоммерческого использования. Ожидается официальный релиз в конце 2025 года.

NauEngine представляет собой модульную систему, позволяющую заменять отдельные подсистемы. В основе движка лежит система рендеринга, частично основанная на коде открытого движка Dagor Engine (Gaijin Entertainment, Венгрия), но значительно переработанная. В частности, был заменён внутренний язык шейдеров Dagor (dshl) на стандартный HLSL, переработана система управления ассетами и реализация физически корректного рендеринга (PBR). Рендер в Nau Engine представлен в виде графа, что позволяет оптимизировать использование ресурсов и обеспечивает гибкость расширения. Любой пользователь может создавать собственные модули, интегрируя новые технологии в общую структуру.

Для симуляции физики используется библиотека Jolt (разработчик из Нидерландов, использовалась в игре Horizon Forbidden West от Guerrilla Games, Нидерланды), а для построения графического интерфейса – Cocos2dx (разработчики из Китая) и Dear ImGui (Омар Корнут, Франция). Сетевое взаимодействие обеспечивается GameNetworkingSockets (Valve, США) и ASIO (Кристофер Кольхофф, Австралия), звук обрабатывается miniaudio (Дэвид Рид, Австралия), а управление вводом – gainput (Йоханнес Кульманн, Германия). Импорт скелетной анимации осуществляется с помощью библиотеки ozz-animation (Гийом Блан, Великобритания). Написание игровой логики в текущей бета-версии поддерживается на C++ и Lua, также разрабатывается система агностического скриптинга для использования других языков.

Среда разработки NauEditor, работающая под Windows (требуется Windows 10 и Visual Studio 2022), включает редактор сцен, материалов, анимации и VFX. Интерфейс построен на Qt6 и содержит стандартные компоненты, такие как Project Browser, Viewport, Outliner, Inspector и Console. Отдельно предоставляется редактор GUI, основанный на Cocos2dx. Для хранения игрового контента используется формат OpenUSD (Pixar Animation Studios, США), позволяющий хранить 3D-модели, текстуры и звуковые эффекты в едином структурированном файле. OpenUSD обеспечивает эффективную работу с огромными объемами данных, неразрушающее редактирование и упрощает совместную работу над проектом благодаря своим метаданным. В настоящее время NauEngine поддерживает только DX12 для Windows, но планируется расширение поддержки на другие операционные системы и платформы (мобильные устройства, консоли, веб). Доступно руководство пользователя на русском языке.

28комментариев