UNIGINE SDK 2.19 Release

Aug 16, 2024
2 19 Site news en

Major Optimizations

More Efficiency On The CPU

Implemented a multithreaded DX12 renderer significantly enhancing CPU performance by efficiently utilizing the power of all its cores providing FPS gain.

This optimization is particularly important for content-heavy scenes with a lot of separate objects (e.g. a typical CAD model).

average performance
Less RAM And VRAM Required

Enhanced the UNIGINE allocator to improve management of RAM and VRAM allocations for an application, resulting in faster and more efficient allocation processes. Total memory consumption can be lowered by about 30%.

Consumption
Faster Engine Startup

Meshes and properties are now loaded asynchronously in separate threads in parallel with materials having a little to none impact on startup loading time, as it mainly depends on materials and File System initialization. Loading of textures has also been optimized engaging more multithreading.

For a large-scale project with a lot of content these optimizations bring an average startup loading speedup from x1.4 to x1.9.

Engine Startup Initialization Time

We have also improved archived data streaming performance (contents of UNG and ZIP archives) making it faster and more memory-efficient with an ability to read archived files partially (partial mapping) providing up to x1.2 loading boost at startup due to faster headers processing and less RAM consumption.

Implemented deferred asynchronous loading for NodeReferences on loading a world providing an x1.3 world loading speedup and solving an issue with re-generating node IDs.

Rendering Upgrades

Multi-Bounce for Dynamic Environment Probes

All dynamic reflections now support multiple bounces, so the probes will see and render themselves in reflections. Multi-bouncing is available for Planar Reflection Probes and dynamic Environment Probes.

Multiple bounces off
Multiple bounces on
Advanced Color Control for Sky, Clouds, and Haze

We have added an extended control over the color of the sky, clouds, and haze via LUTs.

Sky 1
Sky 2
Other Rendering Improvements
  • The new Materials Quality feature lets you balance quality and performance by using different texture resolutions and material feature sets for globally selected quality levels (Low, Medium, or High).

  • Added a temporal filter for post-sensors to reduce noise from the SSRTGI effect.

  • Optimized denoiser removing artifacts in case of using half and quarter resolution of the Color Clamping Blur buffer.

  • A pack of DLSS and FSR upscalers improvements for PC and consoles.

  • We have significantly improved performance of the Local Tonemapper up to 1.5x-3x, with additional options to render it in Half and Quarter resolution.

  • Updated the Local Tonemapper with a new Effect On Dark Areas Gamma parameter.

  • Color clamping control has been added to the indirect interleaved buffer.

Video Streaming via WebRTC (Experimental)

Video Streaming via WebRTC (Experimental)

Broadcasting audio data and video frames rendered by a UNIGINE-application to an unlimited number of devices via WebRTC (Web Real-Time Communication) has become available.

Therefore you can now deploy UNIGINE apps in the cloud (a powerful remote computer in a data center) and access them from a thin client (a laptop/tablet/phone) from anywhere via the Internet.

USD Data Format Export

USD

Universal Scene Description (*.usd format) is an open-source, hierarchical scene description format designed to be a universal interchange format for 3D content creation workflows. USD support allows efficient and accurate exchange of 3D data across many 3D applications. The USD format is widely used in the film, animation, and VFX industries to streamline production pipelines and facilitate collaboration between artists and studios.

In 2.19 we added an ability to export scene content (including models, light sources, etc.) to a USD file. This feature is available for SIM and Engineering editions via the USD Exporter plugin for UnigineEditor.

OpenXR Support

Open XR

Added support for OpenXR, an open standard aimed at unifying the AR/VR/MR software development for broader hardware reach, reducing the effort for porting or re-writing code, and providing seamless integration across diverse platforms and devices. The shift does not require any significant code migration from users as the changes are mostly under the hood.

Current implementation is a baseline for supporting VR via OpenXR API, we will be adding more features regarding some OpenXR extensions in future.

SpiderVision Plugin

SpiderVision Plugin

We have united all major rendering output functionality related to displays, walls, and projectors, with edge blending warping, and other features earlier implemented in a set of different plugins (Wall, Projections, EasyBlend, etc.) into a single plugin called SpiderVision and replacing them all starting from 2.19. This makes the use of this functionality clearer, much more convenient, and reduces overhead (multiple classes, plugins, startup arguments etc.).

Editor Enhancements

Multiple Asset Browsers

For your convenience multiple instances of the Asset Browser window can now be opened at the same time each with its own filters, enabling you to drag your assets between them as you want, facilitating asset management when reorganizing them between multiple folders/mount points.

Multiple Asset Browsers
Faster Assembly Of Material Graphs

In this release we have added a pack of QoL improvements to make the process of creating material graphs simpler, even more intuitive, and faster by removing repeated operations and polishing the workflow.

Faster Assembly Of Material Graphs
Other Editor Improvements:
  • Packing release build content

  • Added an ability to select only those surfaces that are currently visible in the Viewport (by the Viewport Mask)

  • Support for version control systems now includes Subversion (SVN) and Git and has merged into a single VCSIntegration Plugin

  • Extended AssetManager API

  • Multiple minor QoL improvements

Animation System Updates (Experimental)

Our Animation System continues to evolve with the following improvements added so far:

  • Implemented LookAt-chains for ObjectMeshSkinned.

  • Bone rotation constraints for ObjectMeshSkinned.

  • Changed morph target management for ObjectMeshSkinned.

  • Added several interpolation modes for bone rotation of ObjectMeshSkinned.

  • ObjectMeshSkinned no longer supports mesh geometry modification, as there is a special procedural mode in which a custom user mesh can be set.

  • Animation retargeting for ObjectMeshSkinned can now be registered using pairs (anim_path, mesh_path).

  • A set of new samples on animation API usage.

    Animation


Other Important Changes

  • Integration with .NET 8 (C# 12, better Garbage Collector, improved serialization, and a lot more).

  • NVIDIA Quadro Sync support (Sim edition only).

  • In versions before 2.18.1, Node Reference geometry used a single lightmap, limiting lightmapping. UNIGINE 2.19 enables individual lightmaps and shadow maps for each instance, removing these constraints.

  • CUDA integration samples have become available in the Engineering edition as well.

Unique lightmaps

For more changes and technical details please see our devlog.

Download UNIGINE SDK for free now.