This is the documentation for Enlighten.
Enlighten SDK 4.01 Release Notes
New features
Probe lighting leak reduction
This release automatically reduces the impact of light leaking through thin walls for meshes lit by probes. In areas where this type of light leak would previously occur, the Enlighten probe resolution is now automatically increased, with only a minor increase in runtime cost.
Terrain automatic probe placement
It is no longer necessary to manually place probe volumes to light actors above terrain. Instead, you can now choose to automatically generate probes above a terrain instance object. When you specify the Probe Resolution property of an instance that refers to a terrain geometry object, probes are placed directly above the terrain surface.
Precompute on Intel 12th generation CPU
The Enlighten precompute now supports Intel 12th gen Alder Lake CPU models. Multithreaded tasks now make good use of both P and E cores.
HLRT: Limit the influence of a light
An option to control whether a light affects a given system, based on the distance of the system from the viewer. To do this, create a custom light type which derives from InputLightBase, and implement the DistanceFilter function. The DistanceFilter function returns true when a radiosity system at the provided distance from the viewer should be affected by the light.
HLBS: Eliminate slow probe region construction
Voxelisation of solid probe regions now runs as part of the precompute process to enable parallelization and distribution across machines. This delivers much faster output of the Enlighten scene by elimination of single threaded bottlenecks when creating large probe region objects.
HLBS: Zone dependencies with explicit system groups
Zone dependencies can now be used to limit radiosity dependencies when using explicit system groups. Zone dependencies replace explicit system dependencies.
Improvements
High Level Build System:
- Added option to disable XML validation: /p:ValidateXML=false.
Platform support
- Prebuilt binaries compiled with Visual Studio 2022 17.0.5 and VC tools version 14.30 for Win32, Win64 and XboxOne
- Prebuilt binaries compiled with XCode 12.5 for iOS.
Bug Fixes
- HLBS: systems within the same zone are now automatically considered as dependencies, to match the documented behavior.
- HLRT: Fixed failure to update input lighting after change to light visibility data.
- SamplePipeline: Fixed license check failure when built from customer source.
- (P2)Â Fixed some cases of probe lighting leaking through walls
- (P2) Enlighten Pipeline: Fixed hang when writing 2GB scene file
Deprecated
- Deprecated SDK binaries built with Visual Studio VS2015 tool sets.
- Deprecated baking a scene which contains probeSet or probeRegion elements.
- Deprecated IUpdateManager::TriggerTransparencyVolume and low level API ApplyVolumeTransparency. Please use the InitialiseTransparencyBuffer functions instead.
- Deprecated the combination of transparency with regular grid probe interpolation.
- Deprecated IPrecompInputProbeRegion::AddVolume
- Deprecated ComputePppiAtlasMaxima: Please use IPrecompute::CreateProbeAtlasMaxima
Removed
General:
- Removed HLBS probeOctree, replaced by probeRegion
- Removed ProbeSetManagerVoxel
Upgrade Notes
EnlightenPipeline:
- PipelineRadiosityInstance and PipelineExcludedInstance now require a zone argument
High Level Runtime:
- To use legacy probe interpolation with non-octree probe sets, enable m_UseLegacyProbeInterpolation. When true, probe lighting is interpolated only from non-octree probe sets. When false, probe lighting is interpolated only from octree probe sets.
Per pixel probe lighting:
- To obtain per pixel probe atlas maxima, instead of calling ComputePppiAtlasMaxima, please load the IPrecompAtlasMaxima object after the precompute.