Реализован многопоточный рендер для DirectX12, который существенно улучшил производительность процессора за счет эффективного использования всех имеющихся ядер, обеспечив заметный прирост.
Данная оптимизация имеет особенно важное значение для “тяжелых”сцен с большим количеством контента и множеством объектов (таких как типичные модели САПР).
Аллокатор UNIGINE был доработан с целью улучшения управления выделением оперативной и видеопамяти в процессе работы приложения, что значительно ускорило процесс и сделало его более эффективным. Что позволяет добиться снижения общего потребления памяти примерно на 30%.
Данные о геометрии и свойствах (properties) теперь загружаются асинхронно в отдельных потоках параллельно с загрузкой материалов, за счет чего значительно уменьшается, а то и вовсе сводится к нулю, их вклад в общее время загрузки на старте, поскольку главным образом это время зависит от инициализации Файловой системы и загрузки материалов. Загрузка текстур также ускорилась за счет более эффективного распараллеливания процессов.
Крупным проектам с большим количество контента эти оптимизации могут обеспечить ускорение загрузки в 1.4 - 1.9 раза.
Также улучшилась производительность стриминга упакованных данных (содержимое архивов UNG и ZIP), использование памяти стало более эффективным,а скорость увеличилась. Кроме того, появилась возможность частичного считывания данных из архивов (partial mapping), что обеспечило ускорение загрузки в 1.2 раза за счет более быстрой обработки заголовков и сокращению потребления памяти.
Отложенная асинхронная загрузка содержимого NodeReference при загрузке мира обеспечило ускорение процесса в 1.3 раза и позволила решить проблему перегенерации идентификаторов нод.
Все динамические отражения теперь поддерживают просчет множественных отскоков, что позволяет пробам отрисовывать самих себя в отражениях. Многократное отражение доступно для источников Planar Reflection Probe и динамических Environment Probe.
Расширены возможности управления цветом неба, облаков и дымки за счет использования LUT–таблиц.
Новый функционал Materials Quality позволяет найти оптимальный баланс между качеством и производительностью за счет использования различных разрешений текстур и набора опций для различных уровней качества (Low, Medium, или High), устанавливаемых глобально.
Для эффектов сенсоров добавлен темпоральный фильтр, уменьшающий шум от SSRTGI.
Оптимизирован шумоподавитель, что позволило избавиться от артефактов, появлявшихся при использовании Half и Quarter разрешения буфера Color Clamping Blur.
Набор улучшений апскейлеров DLSS и FSR для ПК и консолей.
Значительно улучшилась производительность локальной тональной компрессии (в 1,5-3 раза), с возможностью использования пониженного разрешения (Half и Quarter).
Также для эффекта локальной тональной компрессии был добавлен новый параметр Effect On Dark Areas Gamma.
Для буфера чересстрочного расчета отраженного освещения добавлено управление коррекцией цветового диапазона.
Стала доступной потоковая передача аудиоданных и кадров видео, отрисованных приложением на базе UNIGINE, на неограниченное количество устройств, включая мобильные с помощью WebRTC (Web Real-Time Communication).
Это позволяет развернуть UNIGINE-приложение в облаке (на мощном компьютере в ЦОД) и подключаться к нему через тонкого клиента из любой точки сети Internet (с ноутбука, планшета или телефона).
USD или Universal Scene Description (формат *.usd) - это открытый стандарт иерархического описания сцен, призванный унифицировать обмен данными между различными технологиями и процессами создания трехмерного контента. Поддержка USD позволять обеспечить эффективность и точность при передаче данных между множеством 3D-приложений. Формат USD широко используется в индустрии кинематографии, анимации и создании различных спецэффектов для стандартизации рабочих процессов и упрощения взаимодействия между отдельными студиями и художниками.
В релизе 2.19 мы добавили возможность экспорта сцены в файл формата USD. Данный функционал доступен в редакциях SIM и Engineering в виде плагина к редактору USD Exporter.
Добавлена поддержка OpenXR, открытого стандарта, унифицирующего разработку приложений виртуальной, дополненной и смешанной реальности (AR/VR/MR), с целью обеспечения большего охвата различного оборудования, бесшовной интеграции между множеством платформ и устройств и сокращения затрат на портирование функционала и переписывание кода. Новый функционал не требуют модификации кода на стороне пользователей, поскольку основные изменения носят внутренний характер.
Текущая реализация представляет собой базовый уровень поддержки VR через API OpenXR, в последующих релизах мы планируем расширять данный функционал.
Весь основной функционал вывода на дисплеи, видеостены и проекторы, с коррекцией искривлений и компенсацией пересвечивания на границах проекций, который ранее реализовывался набором отдельных плагинов (Wall, Projections, EasyBlend, etc.), был вынесен в единый плагин SpiderVision. Он будет использоваться вместо старого набора плагинов, начиная с версии 2.19. Благодаря этому изменению управление дисплеями и проекциями становится более прозрачным и удобным, а также устраняется избыточность (множество классов, плагинов, аргументов запуска и т.п.).
Добавлена возможность открывать несколько окон Asset Browser одновременно, каждое со своим индивидуальным фильтром, что позволяет удобно переносить ассеты между папками или смонтированными каталогами внутри вашего проекта.
В этом релизе мы добавили ряд улучшений, делающих процесс создания графов материалов еще более интуитивным, удобным и быстрым, в частности, за счет упразднения лишних повторяющихся операций и оптимизации рабочего процесса.
Упаковка контента для финальной релизной сборки приложения.
Добавлена возможность выделения только тех поверхностей, которые видны в окне просмотра (по маске Viewport)
Поддержка систем контроля версий теперь реализуется единым плагином VCSIntegration и включает в себя Subversion (SVN) и Git.
Расширен API менеджера ассетов (AssetManager).
Множество мелких изменений повышающих удобство использования.
Мы продолжаем развивать Систему анимаций, и к этому релизу было сделано следующее:
Реализованы цепочки LookAt для объекта ObjectMeshSkinned.
Добавлены ограничения вращения костей для ObjectMeshSkinned.
Изменена работа с целями морфинга (morph target) для у ObjectMeshSkinned.
Для вращения костей ObjectMeshSkinned добавлено несколько режимов интерполяции.
ObjectMeshSkinned более не поддерживает изменение геометрии меша, теперь есть специальный режим procedural, который позволяет использовать заданную пользователем геометрию.
Переназначение анимаций для ObjectMeshSkinned теперь можно зарегистрировать в виде пар (anim_path, mesh_path).
Набор новых примеров использования API Системы анимаций
Интеграция с .NET 8 (C# 12, улучшенный сборщик мусора, улучшенная сериализация и многое другое).
Поддержка карт NVIDIA Quadro Sync (только для редакции Sim).
В версиях SDK до 2.18.1 включительно, для геометрии всех экземпляров Node Reference использовались общие карты освещения, что значительно ограничивало возможности использования технологии лайтмаппинга. В UNIGINE 2.19 появилась возможность использования уникальных карт освещения и теней для каждого экземпляра, снимая эти ограничения.
Примеры интеграции CUDA теперь стали доступны и в редакции Engineering.
С более подробной информацией об изменениях в релизе 2.19 можно ознакомиться здесь.