UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LumenRadiosity.cpp File Reference

Classes

class  FBuildRadiosityTilesCS
 
class  FLumenRadiosityIndirectArgsCS
 
class  FLumenRadiosityDistanceFieldTracingCS
 
class  FLumenRadiositySpatialFilterProbeRadiance
 
class  FLumenRadiosityConvertToSH
 
class  FLumenRadiosityIntegrateCS
 
class  FBuildVisualizeProbesCS
 
class  FVisualizeRadiosityProbesVS
 
class  FVisualizeRadiosityProbesPS
 

Namespaces

namespace  LumenRadiosity
 

Enumerations

enum class  ERadiosityIndirectArgs {
  NumTracesDiv64 = 0 * sizeof(FRHIDispatchIndirectParameters) , NumTracesDiv32 = 1 * sizeof(FRHIDispatchIndirectParameters) , ThreadPerProbe = 2 * sizeof(FRHIDispatchIndirectParameters) , HardwareRayTracingThreadPerTrace = 3 * sizeof(FRHIDispatchIndirectParameters) ,
  MAX = 4
}
 

Functions

FAutoConsoleVariableRef CVarLumenRadiosity (TEXT("r.LumenScene.Radiosity"), GLumenRadiosity, TEXT("Whether to enable the Radiosity, which is an indirect lighting gather from the Surface Cache that provides multibounce diffuse."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityProbeSpacing (TEXT("r.LumenScene.Radiosity.ProbeSpacing"), GLumenRadiosityProbeSpacing, TEXT("Distance between probes, in Surface Cache texels"), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityHemisphereProbeResolution (TEXT("r.LumenScene.Radiosity.HemisphereProbeResolution"), GLumenRadiosityHemisphereProbeResolution, TEXT("Number of traces along one dimension of the hemisphere probe layout."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiositySpatialFilterProbes (TEXT("r.LumenScene.Radiosity.SpatialFilterProbes"), GLumenRadiositySpatialFilterProbes, TEXT("Whether to spatially filter Radiosity probes. Filtering reduces noise but increases leaking."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiositySpatialFilterProbesKernelSize (TEXT("r.LumenScene.Radiosity.SpatialFilterProbes.KernelSize"), GLumenRadiositySpatialFilterProbesKernelSize, TEXT("Larger kernels reduce noise but increase leaking."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarRadiosityFilteringProbePlaneWeighting (TEXT("r.LumenScene.Radiosity.ProbePlaneWeighting"), GRadiosityFilteringProbePlaneWeighting, TEXT("Whether to weight Radiosity probes by plane distance, useful to prevent leaking."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarRadiosityFilteringProbeOcclusion (TEXT("r.LumenScene.Radiosity.ProbeOcclusion"), GRadiosityFilteringProbeOcclusion, TEXT("Whether to depth test against the probe hit depths during interpolation and filtering to reduce leaking. Not available with Software Ray Tracing due to imprecision."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarRadiosityFilteringProbeOcclusionStrength (TEXT("r.LumenScene.Radiosity.ProbeOcclusionStrength"), GRadiosityFilteringProbeOcclusionStrength, TEXT("Strength of probe occlusion. 0 = No probe occlusion, 1 = Attempt to stop all leaking, but has self-occlusion artifacts, .5 (default) = tradeoff between the extremes."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarRadiosityProbePlaneWeightingDepthScale (TEXT("r.LumenScene.Radiosity.SpatialFilterProbes.PlaneWeightingDepthScale"), GRadiosityProbePlaneWeightingDepthScale, TEXT("Controls the distance at which probes can be interpolated from. Higher values introduce leaking."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityMaxRayIntensity (TEXT("r.LumenScene.Radiosity.MaxRayIntensity"), GLumenRadiosityMaxRayIntensity, TEXT("Clamps Radiosity trace intensity, relative to current view exposure. Useful for reducing artifacts from small bright emissive sources, but loses energy and adds view dependence."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiositySurfaceBias (TEXT("r.LumenScene.Radiosity.DistanceFieldSurfaceBias"), GLumenRadiosityDistanceFieldSurfaceBias, TEXT("."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityDistanceFieldSurfaceBias (TEXT("r.LumenScene.Radiosity.DistanceFieldSurfaceSlopeBias"), GLumenRadiosityDistanceFieldSurfaceBias, TEXT("."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityHardwareRayTracingSurfaceBias (TEXT("r.LumenScene.Radiosity.HardwareRayTracing.SurfaceBias"), GLumenRadiosityHardwareRayTracingSurfaceBias, TEXT("."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityHardwareRayTracingSlopeSurfaceBias (TEXT("r.LumenScene.Radiosity.HardwareRayTracing.SlopeSurfaceBias"), GLumenRadiosityHardwareRayTracingSurfaceSlopeBias, TEXT("."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityTemporalAccumulation (TEXT("r.LumenScene.Radiosity.Temporal"), GLumenRadiosityTemporalAccumulation, TEXT("Whether to use temporal super sampling on Radiosity. Increases quality, but also adds latency to the speed that lighting changes propagate, and animated noise in the results."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityTemporalMaxFramesAccumulated (TEXT("r.LumenScene.Radiosity.Temporal.MaxFramesAccumulated"), GLumenRadiosityTemporalMaxFramesAccumulated, TEXT("Lower values cause the temporal filter to propagate lighting changes faster, but also increase flickering from noise."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenRadiosityFixedJitterIndex (TEXT("r.LumenScene.Radiosity.Temporal.FixedJitterIndex"), GLumenRadiosityFixedJitterIndex, TEXT("If zero or greater, overrides the temporal jitter index with a fixed index. Useful for debugging and inspecting sampling patterns."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
void LumenRadiosity::AddRadiosityPass (FRDGBuilder &GraphBuilder, const FScene *Scene, const TArray< FViewInfo > &Views, bool bRenderSkylight, FLumenSceneData &LumenSceneData, const FLumenSceneFrameTemporaries &FrameTemporaries, const LumenRadiosity::FFrameTemporaries &RadiosityFrameTemporaries, const FLumenCardUpdateContext &CardUpdateContext, FLumenCardTileUpdateContext &CardTileUpdateContext, ERDGPassFlags ComputePassFlags)
 
uint32 LumenRadiosity::GetRadiosityProbeSpacing (const FViewInfo &View)
 
int32 LumenRadiosity::GetHemisphereProbeResolution (const FViewInfo &View)
 
bool LumenRadiosity::UseTemporalAccumulation ()
 
bool LumenRadiosity::UseProbeOcclusion ()
 
 IMPLEMENT_GLOBAL_SHADER (FBuildRadiosityTilesCS, "/Engine/Private/Lumen/Radiosity/LumenRadiosityCulling.usf", "BuildRadiosityTilesCS", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FLumenRadiosityIndirectArgsCS, "/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf", "LumenRadiosityIndirectArgsCS", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FLumenRadiosityDistanceFieldTracingCS, "/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf", "LumenRadiosityDistanceFieldTracingCS", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FLumenRadiositySpatialFilterProbeRadiance, "/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf", "LumenRadiositySpatialFilterProbeRadiance", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FLumenRadiosityConvertToSH, "/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf", "LumenRadiosityConvertToSH", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FLumenRadiosityIntegrateCS, "/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf", "LumenRadiosityIntegrateCS", SF_Compute)
 
FRDGTextureRef RegisterOrCreateRadiosityAtlas (FRDGBuilder &GraphBuilder, const TRefCountPtr< IPooledRenderTarget > &AtlasRT, const TCHAR *AtlasName, FIntPoint AtlasSize, EPixelFormat AtlasFormat, bool &bIndirectLightingHistoryValid)
 
 IMPLEMENT_GLOBAL_SHADER (FBuildVisualizeProbesCS, "/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf", "BuildVisualizeProbesCS", SF_Compute)
 
 IMPLEMENT_GLOBAL_SHADER (FVisualizeRadiosityProbesVS, "/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf", "VisualizeRadiosityProbesVS", SF_Vertex)
 
 IMPLEMENT_GLOBAL_SHADER (FVisualizeRadiosityProbesPS, "/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf", "VisualizeRadiosityProbesPS", SF_Pixel)
 

Variables

int32 GLumenRadiosity = 1
 
int32 GLumenRadiosityProbeSpacing = 4
 
int32 GLumenRadiosityHemisphereProbeResolution = 4
 
int32 GLumenRadiositySpatialFilterProbes = 1
 
int32 GLumenRadiositySpatialFilterProbesKernelSize = 1
 
int32 GRadiosityFilteringProbePlaneWeighting = 1
 
int32 GRadiosityFilteringProbeOcclusion = 0
 
float GRadiosityFilteringProbeOcclusionStrength = .5f
 
float GRadiosityProbePlaneWeightingDepthScale = -100.0f
 
float GLumenRadiosityMaxRayIntensity = 40.0f
 
float GLumenRadiosityDistanceFieldSurfaceBias = 10.0f
 
float GLumenRadiosityDistanceFieldSurfaceSlopeBias = 5.0f
 
float GLumenRadiosityHardwareRayTracingSurfaceBias = 0.1f
 
float GLumenRadiosityHardwareRayTracingSurfaceSlopeBias = 0.2f
 
int32 GLumenRadiosityTemporalAccumulation = 1
 
int32 GLumenRadiosityTemporalMaxFramesAccumulated = 4
 
int32 GLumenRadiosityFixedJitterIndex = -1
 
TAutoConsoleVariable< int32CVarLumenSceneRadiosityVisualizeProbes (TEXT("r.LumenScene.Radiosity.VisualizeProbes"), 0, TEXT("Whether to visualize radiosity probes."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
TAutoConsoleVariable< int32CVarLumenSceneRadiosityVisualizeProbeRadius (TEXT("r.LumenScene.Radiosity.VisualizeProbeRadius"), 10.0f, TEXT("Radius of a visualized radiosity probe."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
TAutoConsoleVariable< int32CVarLumenSceneRadiosityVisualizeProbesShowInvalid (TEXT("r.LumenScene.Radiosity.VisualizeProbes.ShowInvalid"), 0, TEXT("Whether to show invalid radiosity probes in visualization."), ECVF_RenderThreadSafe)
 

Enumeration Type Documentation

◆ ERadiosityIndirectArgs

Enumerator
NumTracesDiv64 
NumTracesDiv32 
ThreadPerProbe 
HardwareRayTracingThreadPerTrace 
MAX 

Function Documentation

◆ CVarLumenRadiosity()

FAutoConsoleVariableRef CVarLumenRadiosity ( TEXT("r.LumenScene.Radiosity")  ,
GLumenRadiosity  ,
TEXT("Whether to enable the Radiosity, which is an indirect lighting gather from the Surface Cache that provides multibounce diffuse." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityDistanceFieldSurfaceBias()

FAutoConsoleVariableRef CVarLumenRadiosityDistanceFieldSurfaceBias ( TEXT("r.LumenScene.Radiosity.DistanceFieldSurfaceSlopeBias")  ,
GLumenRadiosityDistanceFieldSurfaceBias  ,
TEXT(".")  ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityFixedJitterIndex()

FAutoConsoleVariableRef CVarLumenRadiosityFixedJitterIndex ( TEXT("r.LumenScene.Radiosity.Temporal.FixedJitterIndex")  ,
GLumenRadiosityFixedJitterIndex  ,
TEXT("If zero or greater, overrides the temporal jitter index with a fixed index. Useful for debugging and inspecting sampling patterns." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityHardwareRayTracingSlopeSurfaceBias()

FAutoConsoleVariableRef CVarLumenRadiosityHardwareRayTracingSlopeSurfaceBias ( TEXT("r.LumenScene.Radiosity.HardwareRayTracing.SlopeSurfaceBias")  ,
GLumenRadiosityHardwareRayTracingSurfaceSlopeBias  ,
TEXT(".")  ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityHardwareRayTracingSurfaceBias()

FAutoConsoleVariableRef CVarLumenRadiosityHardwareRayTracingSurfaceBias ( TEXT("r.LumenScene.Radiosity.HardwareRayTracing.SurfaceBias")  ,
GLumenRadiosityHardwareRayTracingSurfaceBias  ,
TEXT(".")  ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityHemisphereProbeResolution()

FAutoConsoleVariableRef CVarLumenRadiosityHemisphereProbeResolution ( TEXT("r.LumenScene.Radiosity.HemisphereProbeResolution")  ,
GLumenRadiosityHemisphereProbeResolution  ,
TEXT("Number of traces along one dimension of the hemisphere probe layout." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityMaxRayIntensity()

FAutoConsoleVariableRef CVarLumenRadiosityMaxRayIntensity ( TEXT("r.LumenScene.Radiosity.MaxRayIntensity")  ,
GLumenRadiosityMaxRayIntensity  ,
TEXT("Clamps Radiosity trace intensity, relative to current view exposure. Useful for reducing artifacts from small bright emissive sources, but loses energy and adds view dependence." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityProbeSpacing()

FAutoConsoleVariableRef CVarLumenRadiosityProbeSpacing ( TEXT("r.LumenScene.Radiosity.ProbeSpacing")  ,
GLumenRadiosityProbeSpacing  ,
TEXT("Distance between probes, in Surface Cache texels" ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiositySpatialFilterProbes()

FAutoConsoleVariableRef CVarLumenRadiositySpatialFilterProbes ( TEXT("r.LumenScene.Radiosity.SpatialFilterProbes")  ,
GLumenRadiositySpatialFilterProbes  ,
TEXT("Whether to spatially filter Radiosity probes. Filtering reduces noise but increases leaking." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiositySpatialFilterProbesKernelSize()

FAutoConsoleVariableRef CVarLumenRadiositySpatialFilterProbesKernelSize ( TEXT("r.LumenScene.Radiosity.SpatialFilterProbes.KernelSize")  ,
GLumenRadiositySpatialFilterProbesKernelSize  ,
TEXT("Larger kernels reduce noise but increase leaking." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiositySurfaceBias()

FAutoConsoleVariableRef CVarLumenRadiositySurfaceBias ( TEXT("r.LumenScene.Radiosity.DistanceFieldSurfaceBias")  ,
GLumenRadiosityDistanceFieldSurfaceBias  ,
TEXT(".")  ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityTemporalAccumulation()

FAutoConsoleVariableRef CVarLumenRadiosityTemporalAccumulation ( TEXT("r.LumenScene.Radiosity.Temporal")  ,
GLumenRadiosityTemporalAccumulation  ,
TEXT("Whether to use temporal super sampling on Radiosity. Increases quality, but also adds latency to the speed that lighting changes propagate, and animated noise in the results." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenRadiosityTemporalMaxFramesAccumulated()

FAutoConsoleVariableRef CVarLumenRadiosityTemporalMaxFramesAccumulated ( TEXT("r.LumenScene.Radiosity.Temporal.MaxFramesAccumulated")  ,
GLumenRadiosityTemporalMaxFramesAccumulated  ,
TEXT("Lower values cause the temporal filter to propagate lighting changes faster, but also increase flickering from noise." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarRadiosityFilteringProbeOcclusion()

FAutoConsoleVariableRef CVarRadiosityFilteringProbeOcclusion ( TEXT("r.LumenScene.Radiosity.ProbeOcclusion")  ,
GRadiosityFilteringProbeOcclusion  ,
TEXT("Whether to depth test against the probe hit depths during interpolation and filtering to reduce leaking. Not available with Software Ray Tracing due to imprecision." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarRadiosityFilteringProbeOcclusionStrength()

FAutoConsoleVariableRef CVarRadiosityFilteringProbeOcclusionStrength ( TEXT("r.LumenScene.Radiosity.ProbeOcclusionStrength")  ,
GRadiosityFilteringProbeOcclusionStrength  ,
TEXT("Strength of probe occlusion. 0 = No probe occlusion, 1 = Attempt to stop all leaking, but has self-occlusion artifacts, .5 (default) = tradeoff between the extremes." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarRadiosityFilteringProbePlaneWeighting()

FAutoConsoleVariableRef CVarRadiosityFilteringProbePlaneWeighting ( TEXT("r.LumenScene.Radiosity.ProbePlaneWeighting")  ,
GRadiosityFilteringProbePlaneWeighting  ,
TEXT("Whether to weight Radiosity probes by plane distance, useful to prevent leaking." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarRadiosityProbePlaneWeightingDepthScale()

FAutoConsoleVariableRef CVarRadiosityProbePlaneWeightingDepthScale ( TEXT("r.LumenScene.Radiosity.SpatialFilterProbes.PlaneWeightingDepthScale")  ,
GRadiosityProbePlaneWeightingDepthScale  ,
TEXT("Controls the distance at which probes can be interpolated from. Higher values introduce leaking." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ IMPLEMENT_GLOBAL_SHADER() [1/9]

IMPLEMENT_GLOBAL_SHADER ( FBuildRadiosityTilesCS  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosityCulling.usf"  ,
"BuildRadiosityTilesCS"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [2/9]

IMPLEMENT_GLOBAL_SHADER ( FBuildVisualizeProbesCS  ,
"/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf"  ,
"BuildVisualizeProbesCS"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [3/9]

IMPLEMENT_GLOBAL_SHADER ( FLumenRadiosityConvertToSH  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf"  ,
"LumenRadiosityConvertToSH"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [4/9]

IMPLEMENT_GLOBAL_SHADER ( FLumenRadiosityDistanceFieldTracingCS  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf"  ,
"LumenRadiosityDistanceFieldTracingCS"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [5/9]

IMPLEMENT_GLOBAL_SHADER ( FLumenRadiosityIndirectArgsCS  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf"  ,
"LumenRadiosityIndirectArgsCS"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [6/9]

IMPLEMENT_GLOBAL_SHADER ( FLumenRadiosityIntegrateCS  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf"  ,
"LumenRadiosityIntegrateCS"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [7/9]

IMPLEMENT_GLOBAL_SHADER ( FLumenRadiositySpatialFilterProbeRadiance  ,
"/Engine/Private/Lumen/Radiosity/LumenRadiosity.usf"  ,
"LumenRadiositySpatialFilterProbeRadiance"  ,
SF_Compute   
)

◆ IMPLEMENT_GLOBAL_SHADER() [8/9]

IMPLEMENT_GLOBAL_SHADER ( FVisualizeRadiosityProbesPS  ,
"/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf"  ,
"VisualizeRadiosityProbesPS"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [9/9]

IMPLEMENT_GLOBAL_SHADER ( FVisualizeRadiosityProbesVS  ,
"/Engine/Private/Lumen/Radiosity/LumenVisualizeRadiosityProbes.usf"  ,
"VisualizeRadiosityProbesVS"  ,
SF_Vertex   
)

◆ RegisterOrCreateRadiosityAtlas()

FRDGTextureRef RegisterOrCreateRadiosityAtlas ( FRDGBuilder GraphBuilder,
const TRefCountPtr< IPooledRenderTarget > &  AtlasRT,
const TCHAR AtlasName,
FIntPoint  AtlasSize,
EPixelFormat  AtlasFormat,
bool bIndirectLightingHistoryValid 
)

Variable Documentation

◆ CVarLumenSceneRadiosityVisualizeProbeRadius

TAutoConsoleVariable< int32 > CVarLumenSceneRadiosityVisualizeProbeRadius(TEXT("r.LumenScene.Radiosity.VisualizeProbeRadius"), 10.0f, TEXT("Radius of a visualized radiosity probe."), ECVF_Scalability|ECVF_RenderThreadSafe) ( TEXT("r.LumenScene.Radiosity.VisualizeProbeRadius")  ,
10.  0f,
TEXT("Radius of a visualized radiosity probe." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenSceneRadiosityVisualizeProbes

TAutoConsoleVariable< int32 > CVarLumenSceneRadiosityVisualizeProbes(TEXT("r.LumenScene.Radiosity.VisualizeProbes"), 0, TEXT("Whether to visualize radiosity probes."), ECVF_Scalability|ECVF_RenderThreadSafe) ( TEXT("r.LumenScene.Radiosity.VisualizeProbes")  ,
,
TEXT("Whether to visualize radiosity probes." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenSceneRadiosityVisualizeProbesShowInvalid

TAutoConsoleVariable< int32 > CVarLumenSceneRadiosityVisualizeProbesShowInvalid(TEXT("r.LumenScene.Radiosity.VisualizeProbes.ShowInvalid"), 0, TEXT("Whether to show invalid radiosity probes in visualization."), ECVF_RenderThreadSafe) ( TEXT("r.LumenScene.Radiosity.VisualizeProbes.ShowInvalid")  ,
,
TEXT("Whether to show invalid radiosity probes in visualization." ,
ECVF_RenderThreadSafe   
)

◆ GLumenRadiosity

int32 GLumenRadiosity = 1

◆ GLumenRadiosityDistanceFieldSurfaceBias

float GLumenRadiosityDistanceFieldSurfaceBias = 10.0f

◆ GLumenRadiosityDistanceFieldSurfaceSlopeBias

float GLumenRadiosityDistanceFieldSurfaceSlopeBias = 5.0f

◆ GLumenRadiosityFixedJitterIndex

int32 GLumenRadiosityFixedJitterIndex = -1

◆ GLumenRadiosityHardwareRayTracingSurfaceBias

float GLumenRadiosityHardwareRayTracingSurfaceBias = 0.1f

◆ GLumenRadiosityHardwareRayTracingSurfaceSlopeBias

float GLumenRadiosityHardwareRayTracingSurfaceSlopeBias = 0.2f

◆ GLumenRadiosityHemisphereProbeResolution

int32 GLumenRadiosityHemisphereProbeResolution = 4

◆ GLumenRadiosityMaxRayIntensity

float GLumenRadiosityMaxRayIntensity = 40.0f

◆ GLumenRadiosityProbeSpacing

int32 GLumenRadiosityProbeSpacing = 4

◆ GLumenRadiositySpatialFilterProbes

int32 GLumenRadiositySpatialFilterProbes = 1

◆ GLumenRadiositySpatialFilterProbesKernelSize

int32 GLumenRadiositySpatialFilterProbesKernelSize = 1

◆ GLumenRadiosityTemporalAccumulation

int32 GLumenRadiosityTemporalAccumulation = 1

◆ GLumenRadiosityTemporalMaxFramesAccumulated

int32 GLumenRadiosityTemporalMaxFramesAccumulated = 4

◆ GRadiosityFilteringProbeOcclusion

int32 GRadiosityFilteringProbeOcclusion = 0

◆ GRadiosityFilteringProbeOcclusionStrength

float GRadiosityFilteringProbeOcclusionStrength = .5f

◆ GRadiosityFilteringProbePlaneWeighting

int32 GRadiosityFilteringProbePlaneWeighting = 1

◆ GRadiosityProbePlaneWeightingDepthScale

float GRadiosityProbePlaneWeightingDepthScale = -100.0f