Введение

UNIGINE — это запатентованный кроссплатформенный игровой движок, разработанный компанией UNIGINE и применяемый в симуляторах, системах виртуальной реальности, серьёзных играх и визуализации. Он поддерживает OpenGL 4, Vulkan и DirectX 12. UNIGINE Engine является ключевой технологией для линейки бенчмарков (CPU, GPU, блоков питания, систем охлаждения), используемых оверклокерами и техническими изданиями, такими как Tom's Hardware, Linus Tech Tips, PC Gamer и JayzTwoCents. Бенчмарки UNIGINE также включены в состав Phoronix Test Suite для проведения тестирования на Linux и других системах.

UNIGINE 1

Первым публичным релизом стала версия 0.3, выпущенная 4 мая 2005 года.

Платформы

UNIGINE 1 поддерживала Microsoft Windows, Linux, OS X, PlayStation 3, Android и iOS. Экспериментальная поддержка WebGL существовала, но не была включена в официальный SDK. UNIGINE 1 поддерживала DirectX 9, DirectX 10, DirectX 11, OpenGL, OpenGL ES и PlayStation 3, а первоначальные версии (v0.3x) поддерживали только OpenGL. UNIGINE 1 предоставляла разработчикам API на языках C++, C# и UnigineScript. Также поддерживались языки шейдеров GLSL и HLSL.

Особенности игры

UNIGINE 1 поддерживал большие виртуальные сценарии и специализированное оборудование, необходимое для профессиональных симуляторов и корпоративных VR-систем, часто называемых серьезными играми. Поддержка больших виртуальных миров была реализована за счет двойной точности координат (64 бита на ось), потоковой загрузки фоновых данных на основе зон и опциональной работы в географической системе координат (широта, долгота и высота вместо X, Y, Z). Вывод изображения осуществлялся посредством многоканального рендеринга (сетевой синхронизированной генерации единого большого изображения с использованием нескольких компьютеров), что характерно для профессиональных симуляторов. Эта же система обеспечивала поддержку нескольких устройств вывода с асимметричными проекциями (например, CAVE). Также поддерживались изогнутые экраны с несколькими проекторами. UNIGINE 1 поддерживал стереоскопический вывод для анаглифного рендеринга, вывода раздельных изображений, Nvidia 3D Vision и шлемов виртуальной реальности. Он также поддерживал вывод на несколько мониторов.

Другие особенности

UNIGINE отображал поддержку Shader Model 5.0 с аппаратной тесселяцией, DirectCompute и OpenCL. Также использовались экранное затенение окружающей среды (screen space ambient occlusion) и глобальное освещение в реальном времени. UNIGINE использовал проприетарный физический движок для обработки событий, таких как обнаружение столкновений, физика твердых тел и динамическое разрушение объектов. Он также использовал проприетарный движок для поиска пути и базовых компонентов искусственного интеллекта. UNIGINE обладал такими функциями, как интерактивный 3D графический пользовательский интерфейс, воспроизведение видео с использованием кодека Theora, 3D аудиосистема на основе библиотеки OpenAL и WYSIWYG редактор сцен (UNIGINE Editor).

UNIGINE 2

UNIGINE 2 был выпущен 10 октября 2015 года. UNIGINE 2 включает в себя все возможности UNIGINE 1 и перешел от прямого рендеринга к отложенному, использовал PBR-шейдинг и представил новые графические технологии, такие как вода на основе геометрии, многослойные объемные облака, SSRTGI и освещение на основе вокселей.

Платформы

UNIGINE 2 поддерживает Microsoft Windows, Linux и OS X (поддержка прекращена начиная с версии 2.6). UNIGINE 2 также поддерживает следующие графические API: DirectX 11, OpenGL 4.x. Начиная с версии 2.16, UNIGINE экспериментально поддерживает DirectX 12 и Vulkan. Для разработчиков доступны 3 API: C++, C#, Unigine Script. Поддерживаемые языки шейдеров: HLSL, GLSL, UUSL (Unified UNIGINE Shader Language).

SSRTGI

Собственная технология рендеринга SSRTGI (Screen Space Ray Traced Global Illumination) была представлена в версии 2.5. Она была продемонстрирована на мероприятии SIGGRAPH 2017 Real Time Live!

Разработка

Корни UNIGINE лежат в проекте frustum.org с открытым исходным кодом, который был инициирован в 2002 году Александром "Frustum" Запрягаевым, являющимся соучредителем (вместе с Денисом Шергиным, генеральным директором) и бывшим техническим директором компании UNIGINE.

Соревнования по играм для Linux

25 ноября 2010 года компания UNIGINE объявила о проведении конкурса в поддержку разработки игр для Linux. Компания обязалась предоставить бесплатную лицензию движка UNIGINE всем желающим разработать и выпустить игру с нативным клиентом для Linux, а также лицензию Windows для команды разработчиков. Конкурс проходил до 10 декабря 2010 года и привлек значительное количество участников. В связи с неожиданно большим откликом, UNIGINE приняла решение предоставить полные лицензии UNIGINE трем лучшим кандидатам. Победители были объявлены 13 декабря 2010 года. Ими стали Kot in Action Creative Artel (ранее разработавшая Steel Storm), Gamepulp (планирующая создать головоломку-платформер) и MED ART (ранее работавшая над Painkiller: Resurrection).

Проекты на базе UNIGINE

По состоянию на 2021 год компания заявляла о наличии более чем 250 B2B клиентов по всему миру. Некоторые компании, разрабатывающие программное обеспечение для профессиональных авиационных симуляторов, кораблей и наземного транспорта, используют UNIGINE Engine в качестве основы для 3D- и VR-визуализации.