Fox Engine
- 1 year ago
- 0
- 0
Dagor Engine — игровой движок с открытым исходным кодом , разработанный компанией Gaijin Entertainment . Dagor разрабатывается с 2002 года и постоянно совершенствуется. Поддерживаются ПК ( Microsoft Windows и Linux для x86 ), Xbox , Xbox 360 , PlayStation 3 , PlayStation 4 , PlayStation 5 и Xbox One . По состоянию на 2020 год последней является шестая версия движка. «Dagor» используется в преимущественном большинстве игр компании Gaijin Entertainment.
« Gaijin Entertainment » была основана в 2001 году. Тогда же и начала разрабатываться первая версия «Dagor». Команда, работающая над движком, была выделена в отдельное подразделение .
14 июня 2005 года «Gaijin Entertainment» анонсировала приобретение лицензии на физический движок « Meqon Game Dynamics » разработки шведской компании «Meqon Research A» и интегрировании его во вторую версию «Dagor» .
Через некоторое время после основания компании, но до начала 2006 года, подразделение по разработке «Dagor» было выделено в полностью отдельную компанию Dagor Technologies, которая продолжила работу исключительно над движком . По данным на 2022 год, развитием движка занимается центральный офис Gaijin в Будапеште.
29 марта 2006 года была официально анонсирована третья версия движка «Dagor». Данная версия имела поддержку основных приставок шестого и седьмого поколения .
7 апреля 2006 года в официальном пресс-релизе от Ageia и Gaijin Entertainment, опубликованном во время КРИ 2006, было сообщено о приобретении последней лицензии на физический движок Ageia PhysX , разработанный Ageia. Было заявлено, что Ageia PhysX будет интегрирован в «Dagor» .
20 апреля 2008 года на церемонии вручения премии «КРИ Awards», которая прошла в Москве в рамках ежегодной Конференции разработчиков игр , компания «Gaijin Entertainment» получила награды в двух номинациях, в том числе в номинации «Лучшая технология» за движок «Dagor Engine» .
2 октября 2015 года была официально анонсирована четвертая версия движка «Dagor». Данная версия включила в себя полностью динамически разрушаемое окружение, новый рендеринг воды с помощью NVIDIA Waveworks и еще ряд пока не объявленных возможностей .
В 2023 году код движка был открыт и распространяется на Github по лицензии BSD 3 .
«Dagor Engine» доступен на IBM PC-совместимых компьютерах под управлением Microsoft Windows и игровых консолях Xbox , Xbox 360 и PlayStation 3 . «Dagor Engine» написан на языках программирования С и C++ и использует интерфейс программирования приложений (API) Microsoft DirectX 11 .
Графический движок , входящий в состав «Dagor Engine», поддерживает множество графических эффектов и технологий. Он базируется на DirectX3D 11. Присутствует как собственный язык программирования шейдеров, так и возможность использовать HLSL .
Графический движок поддерживает множество алгоритмов освещения и источников света. Широко используется High Dynamic Range Rendering как в статическом, так и в динамическом освещении. Присутствуют рассеянные и направленные источники света , а также светящиеся объекты. Поддерживаются:
Также содержится набор разнообразных графических :
Имеется богатый арсенал средств поддержки рендеринга водных поверхностей, — в частности типы воды с поддержкой HDR, ряби, отражений и дифракции Френеля . Также поддерживаются:
Система частиц позволяет моделировать искры, дым, огонь, осадки, листья, насекомых и ауры. 2 октября 2015 добавлена поддержка технологии NVIDIA Waterworks .
Встроенный в «Dagor Engine» физический движок содержит:
Также имеется набор геометрических примитивов и разнообразных сочленений, — при этом поддерживается динамическое разрушение сочленений. Также реализована физика жидкостей и физика частиц. 7 августа 2015 в движок была добавлена поддержка полной разрушаемости всех объектов посредством технологии NVIDIA GameWorks Destruction
Несмотря на наличие собственного физического движка, «Dagor Engine» содержит открытый интерфейс, который позволяет подключать сторонние физические движки. Заявлено об успешном использовании с «Dagor Engine» следующих сторонних физических движков:
Звуковой движок , используемый «Dagor Engine», использует библиотеку FMOD . Основными функциональными характеристиками звукового движка являются DSP-эффекты, полностью трёхмерный звук, потоковый вывод, генерация виртуальных голосов, микширование, многоканальный режим работы и поддержка множества динамиков для вывода звука. Звуковой движок содержит свой API, поддерживает плагины и работает с более чем 20 файловыми форматами звука .
«Dagor Engine» поддерживает скелетную анимацию , процедурную анимацию , смешивание анимаций, морфинг и различные контроллеры анимаций. Также доступен редактор анимаций .
Сетевая подсистема «Dagor Engine» построена на архитектуре «клиент-сервер», имеет открытый интерфейс и поддерживает сетевые протоколы TCP и UDP .
Инструментарий для разработки игр на движке включает в себя набор утилит по работе с освещением «Light Tools», редактор уровней «Dagor Editor», редактор ресурсов «Resource Editor», редактор библиотек объектов «Object Library», а также набор импортеров, экспортеров и конвертеров файловых форматов .
«Light Tools» представляет собой набор утилит, предназначенных для расчёта статического освещения уровня. Расчёт освещения может проходить как на локальном клиенте, так и на отдельном сервере. Поддерживается вертексное освещение и освещение на основе лайтмапов (карт теней) с рассеянным светом. Также поддерживаются алгоритмы Global Illumination , основанные на текстурах освещённости .
«Dagor Editor» является редактором уровней , позволяющем создавать и модифицировать игровые уровни на движке. Присутствует экспорт уровня во внешнюю программу, режим пакетного экспорта, сбор статистики уровня, до четырёх портов просмотра на уровень и различные режимы работы .
«Dagor Editor» построен на основе плагинов , отвечающих за разные функции при создании уровня. «Dagor Editor» имеет функциональность на уровне других коммерческих редакторов уровней и предоставляет все функции, необходимые для создания игр. Есть возможность создавать и редактировать ландшафт, водные поверхности, а также текстурировать их. Поддерживается использование префабов (игровых объектов и ассетов ): их расстановка и редактирование параметров. На уровне можно расставлять статические источники света, которые потом просчитываются в «Light Tools». Поддерживается расстановка различных объектов: объёмных лучей и объёмного тумана, окклюдеров , виртуальных камер, источников звука, триггеров , растительности, объектов для игрового ИИ , скриптов и т. д. Присутствует SDK , позволяющий сторонним разработчикам создавать собственные плагины для «Dagor Editor» .
«Resource Editor» является редактором базы игровых ресурсов, в котором можно создавать и модифицировать игровые ресурсы: спецэффекты, системы частиц , физические объекты, персонажи и анимации .
«Object Library» является редактором библиотек объектов для «Dagor Editor». Он позволяет импортировать заготовки и текстуры в библиотеку, а также настраивать текстуры и кисти текстур .
В «Dagor Engine» входит множество импортёров и экспортёров данных в сам движок из внешних программ и наоборот — из движка во внешние программы. Присутствуют плагины для работы с 3ds max и Maya , которые позволяют импортировать и экспортировать геометрию и анимацию, а также редактировать материалы и параметры объектов .
Также присутствуют импортёры уровней из « Quake3 » (Q32dag), « Half-Life 2 » (BSP2dag) и « Unreal Tournament » (U3D2dag) .
Также в наличие есть «Texture Editor» — редактор DDS-текстур, который позволяет настраивать параметры текстур и конвертировать их в формат DDS из других форматов .