Фреймворк
- Поддерживаемые операционные системы (как для компонентов среды выполнения, так и для инструментов):
- Windows 7 / 8 / 10 (64 бит)
- Linux (64 бит)
- Адаптивная поддержка систем с многоядерной архитектурой
- Система управления ресурсами
- Кроссплатформенная файловая система с поддержкой нескольких точек монтирования
- Расширяемые структуры данных на базе XML
- Минимальная зависимость от сторонних библиотек
- Система мониторинга аппаратного обеспечения
- Оптимизированная математическая библиотека
Управление мирами
- Асинхронная потоковая передача данных
- Возможность настройки поиска пересечений:
- Режимы: луч, сфера, куб
- Пересечение геометрических форм внутри кадра
- Оптимизированная производительность
- Полнофункциональный граф сцены
- Оптимизированная система кластеров объектов
- Эффективная система LOD-ов (уровней детализации):
- Разные режимы перехода между уровнями
- Настройка точки переключения уровней
- Оптимизированные импосторы на основе билбордов для объектов на большом расстоянии
- Система настраиваемых битовых масок с разграничением по подсистемам платформы: (окно просмотра, тени, пересечения, коллизии, материалы, отражения, преграждение звука, физические свойства, исключения, поля, навигация, препятствия)
- Шаблонные объекты (NodeReference) с поддержкой вложенности
- Система файлов с готовыми настройками (настройки для рендеринга, физики, звука)
- Процедурное размещение объектов
Графика
- Поддержка графических API:
- DirectX 11
- OpenGL 4.5
- Современный подход к процессу визуализации:
- Полностью отложенный этап с кластерными оптимизациями
- Прямой рендеринг прозрачных объектов
- Возможность настройки процесса визуализации:
- Настраиваемые проходы отрисовки
- Вспомогательный буфер
- Поддержка скриптов в материалах
- Пользовательские пост-эффекты и материалы
- Система шейдинга:
- Физически корректный рендеринг материалов (PBR) с поддержкой двух техник: Specular и Metalness
- Соблюдение закона сохранения энергии
- Диффузный BRDF (двулучевая функция отражательной способности), разработанный Берли
- Использование GGX BRDF: реалистичные блики от источников света
- Эффект ворсистой поверхности для создания тканей
- Поверхности, пропускающие свет (модифицированный BRDF)
- Подповерхностное рассеивание в пределах экранного пространства
- Преломление света при прохождении сквозь гладкие и шероховатые поверхности прозрачных материалов
- Хроматическая аберрация для прозрачных материалов
- Система освещения:
- Динамическое освещение от различных типов источников (глобальный, ненаправленный, направленный)
- Модели светильников (сферические, прямоугольные)
- Технология расчета глобального освещения в экранном пространстве на основе трассировки лучей (SSRTGI)
- Запеченное глобальное освещение на основе вокселей:
- UV развертка не требуется
- Высокая производительность
- Работает со всеми типами объектов и шейдеров
- Преграждение окружающего света в экранном пространстве (SSAO)
- Волюметрическое освещение
- Солнечные лучи в экранном пространстве
- Тени в экранном пространстве
- Чересстрочный режим просчета освещения
- Система отражений:
- Отражения в экранном пространстве (SSR)
- Сферическая и кубическая проекции для запеченных отражений
- Динамический и статический режимы для запеченных отражений
- Отражения на основе вокселей
- Динамические планарные отражения
- Френелевское отражение, отражение на шероховатых поверхностях
- Несколько типов теней:
- Плавные переходы между каскадами теней по алгоритму (PSSM)
- Корректная полутень в зависимости от радиуса источника освещения
- Расчет теней методом трассировки лучей света в экранном пространстве
- Кэшированные тени
- Система материалов с обширным функционалом:
- Иерархия материалов с наследованием параметров и перегрузками
- Преднастроенный базовый материал ("суперматериал") с богатым набором функций, настраиваемых через простой UI:
- Фоновое затенение
- Карта бликов
- Карта шероховатости
- Карта просвечиваемости
- Детали
- Карта эмиссии
- Карта освещения
- Параллактическое затенение
- Цвета вершин
- Набор опций для настройки растительности
- Режим проволоки
- Трипланарное текстурирование в локальной и глобальной системах координат
- Плавный переход между объектом и ландшафтом
- Разные режимы прозрачности
- Настройка экранных эффектов для каждого материала
- и многое другое
- Поддержка пользовательских материалов
- Разные варианты сглаживания (антиалиасинга):
- Временное сглаживание (Temporal Anti-Aliasing)
- Метод сглаживания FXAA (Fast Approximate AA)
- Суперсэмплинг
- Пост-эффекты:
- Моделирование глобального освещения на основе трассировки лучей
- Процедурное снятие фасок
- Фильтр резкости
- Эффект зернистости
- Расчет SSAO на основе трассировки лучей
- Процедурный эффект загрязнений
- Цветовая коррекция по таблицам LUT
- Расчет наклонных нормалей (Bent Normals) на основе трассировки лучей
- Оптические эффекты:
- Физически корректные параметры
- Автоэкспозиция
- Автоматический баланс белого
- Тональная компрессия
- Эффект размытия в движении
- Эффект контурного рассеянного свечения
- Блики объектива с возможностью выбора текстуры
- Глубина резкости
- Хроматические аберрации
- Декали с отложенной отрисовкой:
- Гибкие настройки смешивания при наложении декалей
- Поддержка проекции меша
- Сортировка декалей по очередности отрисовки
- Выборочное проецирование декалей с использованием механизма битовых масок
- Выбор режима проекции для окна просмотра:
- Перспективная
- Ортографическая
- Криволинейная панорама 180 / 360
- Плоская панорама 180 / 360
- Сферическая панорама (Fisheye) 180 / 360
Ландшафт
- Собственная базовая технология:
- Возможность работы с объемами данных до нескольких петабайт
- Оптимальный режим использования VRAM (по сравнению с мегатекстурами)
- Умное кэширование деталей
- Оптимизация под многоядерные системы
- Масштабность:
- Сотни километров
- Поддержка биноклей/телескопов (увеличение до 20 раз / угол обзора до 1 градуса)
- Плавные бесшовные переходы
- Невероятный уровень детализации:
- Разрешение входных данных до 1 см/пиксель
- Сверхвысокая детализация (менее 1 мм на пиксель)
- Адаптивная аппаратная тесселяция
- Возможность назначения до 1024 материалов деталей ландшафта
- Деформация геометрии по картам смещения с высокой степенью детализации
- Поддержка геоморфинга
- 20 многоцелевых масок под разные задачи (детализация, трава, деревья, физика, классификация ландшафта и т. д.)
- Динамический стриминг:
- Асинхронная подгрузка данных
- Полный контроль с тонкой настройкой параметров
- Адаптивные алгоритмы получения данных из памяти (в зависимости от видимости, настроек камеры и т.п.)
- Принцип работы с ландшафтом, основанный на использовании системы слоев:
- Различные виды плавных переходов между слоями
- Неразрушающая модификация
- Смешивание слоев с разной плотностью данных (участки с повышенной детализацией)
- Неограниченный размер слоя
- Неограниченное количество слоев
- Хранение слоев в отдельных файлах (подходит для командной работы с использованием систем контроля версий)
- Поддержка модификации ландшафта в процессе работы приложения
- Одновременная работа с ручными правками и использованием процедурно генерируемых данных
- Возможность вырезать фрагменты поверхности ландшафта:
- Произвольная форма фрагментов
- Бесшовный переход между ландшафтом и произвольным геометрическим объектом для создания пещер и тоннелей
- Детализация с точностью до пикселя
- Замещение геометрии ландшафта произвольным геометрическим объектом (подходит для копания)
- Проверка на пересечение:
- Асинхронный режим
- Принудительный режим
- Обнаружение коллизий с адаптивной оптимизацией в зависимости от размера объекта
- API для модификации ландшафта в процессе работы приложения:
- Полный контроль над изменением высот, альбедо, масок, а также смешиванием слоев
- Возможность выбора производить операции на стороне процессора или на стороне видеокарты
- Асинхронное обновление данных
- Поддержка отмены действий
- Встроенный импорт тайлсетов
Система растительности
- Анимированная растительность (глобальный ветер, воздействие локальных вихрей и др.)
- Система травы
- Оптимизированная система клаттеров
Модель атмосферы
- Объемные трехмерные облака
- Многослойная облачность
- Разные типы облачности
- Тени от облаков
- Реалистичная визуализация атмосферы с рассеиванием света
- Солнечные лучи и объемное освещение
- Региональные метеоусловия
- Погодные эффекты, включая воздействие ветра на объекты, дождь, туман, молнии и снегопад
- Динамическая смена дня и ночи
- Ночное небо с луной и звездами (на основе карты их реального расположения)
Система воды
- Трехмерные геометрические волны
- Поддержка высоты волн по шкале Бофорта (от 0 до 12 баллов)
- Процедурная генерация пены и барашков
- Симуляция береговой линии
- Кильватерные волны от судна (носовая, кормовая)
- Бесшовный переход из надводного пространства в подводное
- Подповерхностное рассеивание света
- Удаление воды из локальных объемов (корпуса судов)
- Локальная симуляция физики
- Проекция декалей на поверхность воды
- Глобальная вода и локальные водоемы
- Доступ к информации о форме волн на стороне процессора
Система частиц
- Гибкие настройки симуляции
- Физическое взаимодействие с объектами
- Воздействие на частицы света и тени
- Поддержка эффекта преломления
- Анимация на основе атласа текстур
- Плавное взаимодействие
- Воздействие объемных сил (притяжение/отталкивание, шум)
Симуляция физики
- Обнаружение столкновений
- Проверка пересечений при помощи луча (рейкастинг)
- Обширный набор геометрических примитивов (куб, сфера, капсула, цилиндр, выпуклая оболочка)
- Симуляция физики твёрдого тела
- Различные сочленения, приводы и пружины
- Динамическое разрушение объектов
- Физика транспортных средств
- Физика систем частиц
- Физика ткани
- Физика веревок
- Поддержка Ragdoll-физики
- Силовые поля
- Плавучесть и двустороннее взаимодействие с водой
- Возможность обращать процессы во времени
- Поддержка многопоточных физических вычислений
Системы искусственного интеллекта
- Поиск пути (навигационные области, препятствия)
- Пространственные триггеры
- Логическая система свойств, назначаемых поверхностям
API
- Полный контроль функционала платформы для любого из перечисленных языков:
- C++ (до стандарта C++14: MS VS 2015 / 2017 / 2019, gcc 4.8+)
- C# (.NET framework / .NET Core)
- UnigineScript
- Свыше 10 000 описанных методов для каждого из указанных языков
- Поддерживаемые языки программирования шейдеров:
- HLSL
- GLSL
- UUSL
- Расширяемая архитектура с помощью C++ / C# плагинов
- Компонентные системы для языков C# и C++
Встроенные объекты
- Различные источники освещения (глобальные, ненаправленные, направленные, запеченные)
- Статическая, анимированная и динамически изменяемая геометрия
- Небо
- Вода (глобальная, локальная)
- Ландшафт
- Трава
- Системы частиц
- Billboards (плоское изображение, ориентированное на камеру)
- Декали (с перспективной или ортографической проекцией, а также проекции геометрии)
- Система кластеров для ускорения работы с большим количеством идентичных объектов
- Система клаттеров
- Волюметрики - объемные объекты различных форм (прямоугольной, сферической, конической)
- Различные поля (анимация, береговая линия, вырезание объема)
- Встроенные камеры с управлением (контроллеры персонажей от первого лица, от третьего лица)
- Трехмерный текст
- Поддержка различных источников звука и зон реверберации
- Поддержка произвольных навигационных областей и препятствий
- Объекты геодезической привязки
Графический интерфейс пользователя
- Встроенный интерфейс UnigineUI
Аудиосистема
- Поддержка неограниченного числа виртуальных объёмных источников звука
- Динамическая подгрузка звуковых файлов
- Поддержка модели HRTF (моделирование восприятия звука человеком)
- Эффект Доплера
- Поддержка преграждения звука
- Различные типы затухания звуковых волн
- Поддержка множественных зон реверберации
Устройства ввода
- Стандартные клавиатура и мышь
- Различные геймпады и джойстики
- Мультисенсорные экраны
- Системы захвата движения:
- ARTTrack
- Kinect
- LeapMotion
- Трекеры Vive VR
Вывод изображения
- Поддержка профессионального 3D стерео:
- Стереопара
- Режим чересстрочной развертки
- Анаглиф (красно-синий)
- Раздельный вывод изображений для каждого глаза
- Встроенная поддержка VR-гарнитур:
- Oculus Rift / Rift S
- HTC Vive / Vive Pro
- совместимые с Windows Mixed Reality (WMR)
- совместимые с OpenVR
Сеть
- Интеграция со Steam
- Низкоуровневый доступ к сетевым сокетам
- Поддержка SSL соединения
Инструменты для оптимизации проекта
- Профайлер для анализа производительности:
- по всем подсистемам платформы
- по настраиваемым маркерам
- подробный анализ кадра
- как на стороне процессора, так и на стороне видеокарты
- Профилирование потребления памяти (RAM и VRAM)
- Отладка динамической подгрузки данных
- Текстурный профайлер
- Система визуализации (информация по нодам, физике, звукам и пр.) в любом окне просмотра
- Режимы отладки для модуля рендеринга
Редактор сцен
- Визуальный редактор с отображением конечного результата (WYSIWYG)
- Тёмная тема пользовательского интерфейса по умолчанию
- Общепринятая навигация с настраиваемым расположением окон
- Система управления проектными файлами
- Безопасное перемещение и изменение имен проектных файлов (работа с файлами по идентификатору GUID)
- Отображение зависимостей файлов проекта
- Подхватывание изменений во внешних файлах на лету
- Настройки импорта для каждого проектного файла
- Возможность добавления пользовательских типов файлов
- Поддержка нескольких точек монтирования (контент проекта может храниться в разных местах)
- Эффективные инструменты для создания мира:
- Каждый разработчик может работать с отдельным слоем
- Инструмент быстрой замены объектов
- Легкость повтора операции клонирования и трансформации
- Разные варианты выравнивания объектов:
- активный (по нажатию клавиши) и пассивный (всегда включен) режимы
- по глобальной сетке
- по локальной сетке
- по ограничивающему контуру
- опустить на поверхность земли
- выравнивание с другими поверхностями
- Randomizer (инструмент для быстрого размещения множества объектов)
- Вложенные шаблонные объекты
- Операции при выборе нескольких объектов:
- редактирование параметров
- математические операции с параметрами
- Умное копирование/вставка параметров одного объекта в другой
- Интеграция компонентной системы:
- Создание, редактирование и назначение C#-компонентов объектам
- Автогенерация пользовательского интерфейса для параметров
- Поддержка совместной работы:
- Слои проекта
- Форматы данных, которые работают с системами контроля версий
- Управление иерархией сцены:
- Отображение перечня объектов сцены в виде иерархии или списка
- Простота переназначения родительского элемента
- Быстрый поиск
- Редакторы материалов/свойств/компонентов:
- Отображение иерархии
- Быстрый поиск
- Простота переназначения родительского элемента
- Единообразное окно настроек с поддержкой пресетов
- Гибкий пользовательский интерфейс:
- Поддержка нескольких окон просмотра
- Контекстные меню для быстрого доступа к опциям
- Возможность перенастройки расположения окон
- Инструмент Tracker (инструмент для создания анимаций по временной шкале)
- Редактор сплайновых графов (инструмент для создания дорог и веревок)
- Impostor Creator (инструмент для генерации изображений, которые используются для замещения объектов на большом удалении от камеры)
- Инструменты для обработки изображений
- Cleaner (удаление неиспользуемых проектных файлов)
- Build tool (сборка проекта на основе графа зависимости проектных файлов и заданного списка файлов)
- Video grabber (инструмент для создания высококачественных снимков и видеороликов)
- Встроенная консоль
- Система плагинов
Поддерживаемые форматы файлов
- 3D-модели: FBX, OBJ, COLLADA (DAE), PLY, 3DS, glTF/GLB
- Изображения: DDS, JPEG (JPG, JFIF, GFI, JIF, JPE), TGA, PNG, PSD, PPM, TIFF, EXR, RGB, SGI, HDR
- Видеофайлы: Theora (OGV)
- Аудиофайлы: Vorbis (OGG, OGA), WAV, MP3
- Шрифты: TrueType (TTF)
- Текст: Plain Text, XML, JSON
Примеры использования
- Примеры использования кода для языков C++, C# и UnigineScript
- Библиотека визуальных эффектов
- Библиотека растительности
- Демонстрационные проекты
- Примеры различных типов проектов
Документация
- Справочник API для C++, C# и UnigineScript (свыше 10 000 функций для каждого языка)
- Фрагменты кода для типовых задач
- Руководства по использованию различных инструментов
- Документация на сайте и в формате CHM для использования в режиме оффлайн
- Обучающие уроки (включая видео-уроки)
Системные требования
- Минимальные:
- ОС: Windows 7/8/10 или Linux
- Для разработки: 64-битная система
- Для запуска приложения: 32 или 64-битная система
- Процессор: 4-ядерный с поддержкой SSE4.2
- ОЗУ: 4 Гб
- Видеокарта: Совместимая с DirectX 11 / OpenGL 4.5
- NVIDIA GeForce GTX 7xx series (2013)
- AMD HD 7xxx series (2012)
- Intel Gen9 series (limited) (2015)
- VRAM: 2 Гб
- ОС: Windows 7/8/10 или Linux
- Рекомендованные:
- ОС: Windows 10 или Linux
- Для разработки: 64-битная система
- Для запуска приложения: 32 или 64-битная система
- Процессор: 6 ядер и более
- ОЗУ: 16 Гб
- Видеокарта:
- NVIDIA GeForce GTX 1080 и более производительные
- AMD RX Vega-64 и более производительные
- VRAM: 8 Гб и более
- ОС: Windows 10 или Linux
Вступи в сообщество творцов!
Платформа UNIGINE используется разработчиками со всех континентов (за исключением Антарктиды). Присоединяйся!
С 2005 г. Платформа UNIGINE преимущественно использовалась в промышленном секторе (симуляторы, BIM, САПР, цифровые двойники, GIS, системы "умный город"). Более подробная информация в описании UNIGINE 2 Sim.