UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LumenRadianceCache Namespace Reference

Classes

class  FRadianceCacheSetup
 
class  FUpdateInputs
 
class  FUpdateOutputs
 
class  TInlineArray
 

Functions

FRadianceCacheInputs GetDefaultRadianceCacheInputs ()
 
void GetInterpolationParametersNoResources (FRDGBuilder &GraphBuilder, const FRadianceCacheState &RadianceCacheState, const LumenRadianceCache::FRadianceCacheInputs &RadianceCacheInputs, FRadianceCacheInterpolationParameters &OutParameters)
 
void GetInterpolationParameters (const FViewInfo &View, FRDGBuilder &GraphBuilder, const FRadianceCacheState &RadianceCacheState, const LumenRadianceCache::FRadianceCacheInputs &RadianceCacheInputs, FRadianceCacheInterpolationParameters &OutParameters)
 
FRadianceCacheMarkParameters GetMarkParameters (FRDGTextureUAVRef RadianceProbeIndirectionTextureUAV, const FRadianceCacheState &RadianceCacheState, const LumenRadianceCache::FRadianceCacheInputs &RadianceCacheInputs)
 
bool ShouldImportanceSampleBRDF (const FUpdateInputs &Inputs)
 
float GetSupersampleDistanceFromCameraSq ()
 
void UpdateRadianceCaches (FRDGBuilder &GraphBuilder, const FLumenSceneFrameTemporaries &FrameTemporaries, const TInlineArray< FUpdateInputs > &InputArray, TInlineArray< FUpdateOutputs > &OutputArray, const FScene *Scene, const FViewFamilyInfo &ViewFamily, bool bPropagateGlobalLightingChange, ERDGPassFlags ComputePassFlags)
 
ERDGPassFlags GetLumenSceneLightingComputePassFlags (const FEngineShowFlags &EngineShowFlags)
 
bool UseHitLighting (const FViewInfo &View, EDiffuseIndirectMethod DiffuseIndirectMethod)
 
void RenderLumenHardwareRayTracingRadianceCache (FRDGBuilder &GraphBuilder, const FScene *Scene, const FLumenSceneFrameTemporaries &FrameTemporaries, const TInlineArray< FUpdateInputs > &InputArray, TInlineArray< FUpdateOutputs > &OutputArray, const TInlineArray< FRadianceCacheSetup > &SetupOutputArray, const TInlineArray< FRDGBufferRef > &ProbeTraceTileAllocatorArray, const TInlineArray< FRDGBufferRef > &ProbeTraceTileDataArray, const TInlineArray< FRDGBufferRef > &ProbeTraceDataArray, const TInlineArray< FRDGBufferRef > &HardwareRayTracingRayAllocatorBufferArray, const TInlineArray< FRDGBufferRef > &TraceProbesIndirectArgsArray, ERDGPassFlags ComputePassFlags)
 
void RenderLumenHardwareRayTracingRadianceCache_REMOVE (FRDGBuilder &GraphBuilder, const FScene *Scene, const FSceneTextureParameters &SceneTextures, const FViewInfo &View, const FLumenCardTracingParameters &TracingParameters, const LumenRadianceCache::FRadianceCacheInterpolationParameters &RadianceCacheParameters, FRadianceCacheConfiguration Configuration, int32 MaxNumProbes, int32 MaxProbeTraceTileResolution, FRDGBufferRef ProbeTraceData, FRDGBufferRef ProbeTraceTileData, FRDGBufferRef ProbeTraceTileAllocator, FRDGBufferRef TraceProbesIndirectArgs, FRDGBufferRef HardwareRayTracingRayAllocatorBuffer, FRDGBufferRef RadianceCacheHardwareRayTracingIndirectArgs, FRDGTextureUAVRef RadianceProbeAtlasTextureUAV, FRDGTextureUAVRef DepthProbeTextureUAV, ERDGPassFlags ComputePassFlags)
 
void SetRadianceProbeClipmapTMin (FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, float Value)
 
void SetClipmapCornerTWS (FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, FVector3f Corner)
 
void SetClipmapCellSize (FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, float CellSize)
 

Variables

constexpr uint32 PRIORITY_HISTOGRAM_SIZE = 16
 
constexpr uint32 PROBES_TO_UPDATE_TRACE_COST_STRIDE = 2
 
const int32 TRACE_TILE_SIZE_2D = 8
 
const int32 TRACE_TILE_ATLAS_STRITE_IN_TILES = 512
 

Function Documentation

◆ GetDefaultRadianceCacheInputs()

FRadianceCacheInputs LumenRadianceCache::GetDefaultRadianceCacheInputs ( )

◆ GetInterpolationParameters()

void LumenRadianceCache::GetInterpolationParameters ( const FViewInfo View,
FRDGBuilder GraphBuilder,
const FRadianceCacheState RadianceCacheState,
const LumenRadianceCache::FRadianceCacheInputs &  RadianceCacheInputs,
FRadianceCacheInterpolationParameters OutParameters 
)

◆ GetInterpolationParametersNoResources()

void LumenRadianceCache::GetInterpolationParametersNoResources ( FRDGBuilder GraphBuilder,
const FRadianceCacheState RadianceCacheState,
const LumenRadianceCache::FRadianceCacheInputs &  RadianceCacheInputs,
FRadianceCacheInterpolationParameters OutParameters 
)

◆ GetLumenSceneLightingComputePassFlags()

ERDGPassFlags LumenRadianceCache::GetLumenSceneLightingComputePassFlags ( const FEngineShowFlags EngineShowFlags)

◆ GetMarkParameters()

FRadianceCacheMarkParameters LumenRadianceCache::GetMarkParameters ( FRDGTextureUAVRef  RadianceProbeIndirectionTextureUAV,
const FRadianceCacheState RadianceCacheState,
const LumenRadianceCache::FRadianceCacheInputs &  RadianceCacheInputs 
)

◆ GetSupersampleDistanceFromCameraSq()

float LumenRadianceCache::GetSupersampleDistanceFromCameraSq ( )

◆ RenderLumenHardwareRayTracingRadianceCache()

void LumenRadianceCache::RenderLumenHardwareRayTracingRadianceCache ( FRDGBuilder GraphBuilder,
const FScene Scene,
const FLumenSceneFrameTemporaries FrameTemporaries,
const TInlineArray< FUpdateInputs > &  InputArray,
TInlineArray< FUpdateOutputs > &  OutputArray,
const TInlineArray< FRadianceCacheSetup > &  SetupOutputArray,
const TInlineArray< FRDGBufferRef > &  ProbeTraceTileAllocatorArray,
const TInlineArray< FRDGBufferRef > &  ProbeTraceTileDataArray,
const TInlineArray< FRDGBufferRef > &  ProbeTraceDataArray,
const TInlineArray< FRDGBufferRef > &  HardwareRayTracingRayAllocatorBufferArray,
const TInlineArray< FRDGBufferRef > &  TraceProbesIndirectArgsArray,
ERDGPassFlags  ComputePassFlags 
)

◆ RenderLumenHardwareRayTracingRadianceCache_REMOVE()

void LumenRadianceCache::RenderLumenHardwareRayTracingRadianceCache_REMOVE ( FRDGBuilder GraphBuilder,
const FScene Scene,
const FSceneTextureParameters SceneTextures,
const FViewInfo View,
const FLumenCardTracingParameters TracingParameters,
const LumenRadianceCache::FRadianceCacheInterpolationParameters &  RadianceCacheParameters,
FRadianceCacheConfiguration  Configuration,
int32  MaxNumProbes,
int32  MaxProbeTraceTileResolution,
FRDGBufferRef  ProbeTraceData,
FRDGBufferRef  ProbeTraceTileData,
FRDGBufferRef  ProbeTraceTileAllocator,
FRDGBufferRef  TraceProbesIndirectArgs,
FRDGBufferRef  HardwareRayTracingRayAllocatorBuffer,
FRDGBufferRef  RadianceCacheHardwareRayTracingIndirectArgs,
FRDGTextureUAVRef  RadianceProbeAtlasTextureUAV,
FRDGTextureUAVRef  DepthProbeTextureUAV,
ERDGPassFlags  ComputePassFlags 
)

◆ SetClipmapCellSize()

void LumenRadianceCache::SetClipmapCellSize ( FRadianceCacheInterpolationParameters RadianceCacheInterpolationParameters,
uint32  Index,
float  CellSize 
)
inline

◆ SetClipmapCornerTWS()

void LumenRadianceCache::SetClipmapCornerTWS ( FRadianceCacheInterpolationParameters RadianceCacheInterpolationParameters,
uint32  Index,
FVector3f  Corner 
)
inline

◆ SetRadianceProbeClipmapTMin()

void LumenRadianceCache::SetRadianceProbeClipmapTMin ( FRadianceCacheInterpolationParameters RadianceCacheInterpolationParameters,
uint32  Index,
float  Value 
)
inline

◆ ShouldImportanceSampleBRDF()

bool LumenRadianceCache::ShouldImportanceSampleBRDF ( const FUpdateInputs Inputs)

◆ UpdateRadianceCaches()

void LumenRadianceCache::UpdateRadianceCaches ( FRDGBuilder GraphBuilder,
const FLumenSceneFrameTemporaries FrameTemporaries,
const TInlineArray< FUpdateInputs > &  InputArray,
TInlineArray< FUpdateOutputs > &  OutputArray,
const FScene Scene,
const FViewFamilyInfo ViewFamily,
bool  bPropagateGlobalLightingChange,
ERDGPassFlags  ComputePassFlags = ERDGPassFlags::Compute 
)

Updates the requested Radiance Caches, overlapping their dispatches for better GPU utilization Places radiance probes around the positions marked in MarkUsedRadianceCacheProbes, re-using cached results where possible, then traces to update a subset of them. The Radiance Caches are then available for interpolating from the marked positions using FRadianceCacheInterpolationParameters.

◆ UseHitLighting()

bool LumenRadianceCache::UseHitLighting ( const FViewInfo View,
EDiffuseIndirectMethod  DiffuseIndirectMethod 
)

Variable Documentation

◆ PRIORITY_HISTOGRAM_SIZE

constexpr uint32 LumenRadianceCache::PRIORITY_HISTOGRAM_SIZE = 16
constexpr

◆ PROBES_TO_UPDATE_TRACE_COST_STRIDE

constexpr uint32 LumenRadianceCache::PROBES_TO_UPDATE_TRACE_COST_STRIDE = 2
constexpr

◆ TRACE_TILE_ATLAS_STRITE_IN_TILES

const int32 LumenRadianceCache::TRACE_TILE_ATLAS_STRITE_IN_TILES = 512

◆ TRACE_TILE_SIZE_2D

const int32 LumenRadianceCache::TRACE_TILE_SIZE_2D = 8