Первый выпуск открытого многопользовательского игрового движка Ambient

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
23-Фев-2023 13:58

После года разработки представлен первый выпуск нового открытого игрового движка Ambient. Движок предоставляет runtime для создания многопользовательских игр и 3D-приложений, компилируемых в представление WebAssembly и использующих API WebGPU для отрисовки. Код написан на языке Rust и распространяется под лицензией MIT.
Ключевой задачей при разработке Ambient называется предоставление инструментов, упрощающих разработку многопользовательские игр и делающих их создание не сложнее однопользовательских проектов. Движок изначально нацелен на создание универсального runtime, поддерживающего разработку игр и приложений на любых языках программирования, для которых возможна компиляция в промежуточный код WebAssembly. Тем не менее, в первом выпуске пока реализована только поддержка разработки на языке Rust.
Ключевые особенности нового движка:
  • Прозрачная поддержка сетевого взаимодействия. Движок сочетает в себе функции клиента и сервера, предоставляет все необходимые компоненты для создания клиентской и серверной логики, а также автоматически синхронизирует состояние сервера на клиентах. На стороне клиента и сервера используется общая модель данных, что упрощает перенос кода между бэкендом и фронтэндом.
  • Запуск каждого модуля в своём изолированном окружении, позволяющем ограничить влияние кода, не заслуживающего доверия. Аварийное завершение модуля не приводит к аварийному завершению всего приложения.
  • Архитектура, ориентированная на обработку данных (Data-oriented). Предоставление модели данных на основе системы компонентов, которыми может манипулировать каждый модуль WASM. Использование шаблона проектирования ECS (Entity Component System).
    Хранение данных всех компонентов в централизованной БД на сервере, состояние которой автоматически реплицируется клиенту, который на своей стороне может расширять данные с учётом локального состояния.
  • Возможность создания модулей Ambient на любых языках программирования, компилируемых в WebAssembly (пока поддерживается только Rust).
  • Формирование на выходе универсальных исполняемых файлов, которые могут запускаться в Windows, macOS и Linux, и функционировать как в роли клиента, так и сервера.
  • Возможность определения собственных компонентов и "концепций" (коллекций компонентов). В проектах, использующих одинаковые компоненты и концепции, обеспечивается переносимость и совместное использование данных, даже если эти данные специально не рассчитаны на использование в конкретных проектах.
  • Поддержка компиляции ресурсов в разных форматах, включая .glb и .fbx. Возможность потоковой загрузки ресурсов по сети - клиент может получить все необходимые ресурсы при подключении к серверу (можно начать играть не дожидаясь пока загрузятся все ресурсы).
    Поддерживаются форматы моделей FBX и glTF, различные форматы звука и изображений.
  • Продвинутая система отрисовки, использующая GPU для ускорения вывода, и поддерживающая выполнение отсечения по зоне видимости и смену уровней детализации на стороне GPU. Использование по умолчанию
    физически корректного рендеринга (PBR), поддержка анимации и каскадных теневых карт.
  • Поддержка симуляции физических процессов на базе движка PhysX.
  • Система построения интерфейсов пользователя, похожая на React.
  • Унифицированная система ввода, не зависящая от текущей платформы.
  • Система пространственного звука с подключаемыми фильтрами.
Разработка пока находится на стадии альфа-версии. Из ещё не реализованной функциональности можно отметить возможность запуска в Web, клиентский API, API для управления многопоточностью, библиотека для создания интерфейса пользователя, API для использования собственных шейдеров, поддержка звука, загрузка и сохранение компонентов ECS (Entity Component System), перезагрузка ресурсов на лету, автоматическое масштабирование серверов, редактор для совместного создания игровых карт и игровых сцен.
Извините, данный ресурс не поддреживается. :(
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_ambient, #_webassembly, #_game
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 13:41
Часовой пояс: UTC + 5