True-to-life haze may be a nice-to-have thing for a game project, but it is crucial for simulation as well as for all projects where visual fidelity is a requirement.
Introducing Screen-Space Haze Global Illumination (SSHGI) - a new screen-space effect ensuring consistency of haze color with the current color of Global Illumination. The effect provides realistic result out of the box and is easily customizable.
We have refactored and improved import API in order to simplify creation of custom user importers. Now it is possible to register multiple importers from different vendors to be used for importing files having the same extension (importers are now identified by a pair Vendor + Name). You can also set priority for each importer for processing files with the specified extension.
New API is available for C++, C#, and UnigineScript. For more information on the related changes please refer to the API Migration Guide.
Sometimes, when specular highlights from glossy surfaces get into dynamic Environment Probes a very bright flickering of lighting from it may appear. A new Roughness Offset option makes surrounding materials look more matte for an Environment Probe than they actually are, reducing such flickering artefacts.
Added an ability to use advanced culling shadow cascades for Mesh Clusters and Clutters preventing shadows rendered in the nearest cascade from being rendered again in other cascades. This reduces the number of polygons rendered during the shadows rendering pass, saving performance. However, in some cases this feature may take more than it gives, therefore it is disabled by default.
When developing XR and MR applications, you may need to mask specific objects to act as a "window" into the real world. This is especially useful if you want to see real-world elements, such as instruments or controller devices, in the virtual environment (like windows in a car simulator, for example).
We have added the support for blending masks to give you full control of the boundaries of mixed reality combining VR image from the user's application and the image from the video see-through (VST). A set of different masking modes is available enabling you to define how dynamic and static masks are treated within a mixed-reality view, including the use of chroma-key setups. Blending mask can be used to extend or restrict the chroma-key mask or to control the depth testing against the estimated video depth.
You can now create your own Qt-based plugins on the basis of the VR Template - just select VR Template and choose C++ (Qt-based) as API+IDE when creating a new project.
VR output is now available in the Editor via the new VREditorPlugin. It will automatically detect that you’re running the Editor with a VR plugin and add a new item to the Windows menu enabling you to open a viewport displaying an image from your HMD. Just like in any other viewport, you can switch between all currently available cameras, additional controls (e.g. focus supersampling factor or viewport mode) are added automatically depending on the type of hardware (Oculus, OpenVR, or Varjo)
Faster startup
Improved validation for Assets and Runtimes
Cleaner improvements
Managing components/properties for multiple nodes
Multiple items assignment for array-type property parameters
Clear structure^ group headers and nesting
Copying nodes to clipboard
New helpers
Help icons
Plugin compatibility checks
Material Graph Editor updates
We have made certain optimizations and improvements of ship wake waves for aircraft applications enabling you to create multiple performance-friendly long wake waves for distant views (from an aircraft high above the sea level).
A set of samples has been added to the C++ Samples suite showcasing some typical use cases including the following:
Split-Screen View
CAD-Like View
Top-Down Controller
Widget Manipulator
Widget Target Marker
Cluster sample
Clutter-to-Cluster Converter
Physics-Based Animation
Some of these samples (Top-Down Controller, Cluster, Clutter-to-Cluster Converter, and Target Marker) were also implemented in C# and added to the C# Samples suite.
As always, it’s only a brief recap of what has been implemented with the new 2.16.1 release, all the fun is in our devlog describing the full list of updates, changes and features.