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

Classes

class  FLumenTranslucencyRadianceCacheMarkVS
 
class  FLumenTranslucencyRadianceCacheMarkPS
 
class  FLumenTranslucencyRadianceCacheMarkMeshProcessor
 

Namespaces

namespace  Lumen
 

Functions

FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCache (TEXT("r.Lumen.TranslucencyReflections.RadianceCache"), GLumenTranslucencyRadianceCacheReflections, TEXT("Whether to use the Radiance Cache to provide Lumen Reflections on Translucent Surfaces."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheDownsampleFactor (TEXT("r.Lumen.TranslucencyReflections.MarkDownsampleFactor"), GLumenTranslucencyReflectionsMarkDownsampleFactor, TEXT("Downsample factor for marking translucent surfaces in the Lumen Radiance Cache. Too low of factors will cause incorrect Radiance Cache coverage. Should be a power of 2."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheHZBOcclusionTest (TEXT("r.Lumen.TranslucencyReflections.HZBOcclusionTest"), GLumenTranslucencyRadianceCacheHZBOcclusionTest, TEXT("Whether to use HZB occlusion test when marking translucent surfaces in the Lumen Radiance Cache."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheReprojectionRadiusScale (TEXT("r.Lumen.TranslucencyReflections.ReprojectionRadiusScale"), GLumenTranslucencyReflectionsRadianceCacheReprojectionRadiusScale, TEXT("Larger values treat the Radiance Cache lighting as more distant."), ECVF_Scalability|ECVF_RenderThreadSafe)
 
bool Lumen::UseLumenTranslucencyRadianceCacheReflections (const FSceneViewFamily &ViewFamily)
 
bool Lumen::ShouldRenderInTranslucencyRadianceCacheMarkPass (bool bShouldRenderInMainPass, const FMaterial &Material)
 
 IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT (FLumenTranslucencyRadianceCacheMarkPassUniformParameters, "LumenTranslucencyRadianceCacheMarkPass", SceneTextures)
 
 IMPLEMENT_MATERIAL_SHADER_TYPE (, FLumenTranslucencyRadianceCacheMarkVS, TEXT("/Engine/Private/Lumen/LumenTranslucencyRadianceCacheMarkShaders.usf"), TEXT("MainVS"), SF_Vertex)
 
 IMPLEMENT_MATERIAL_SHADER_TYPE (, FLumenTranslucencyRadianceCacheMarkPS, TEXT("/Engine/Private/Lumen/LumenTranslucencyRadianceCacheMarkShaders.usf"), TEXT("MainPS"), SF_Pixel)
 
bool GetLumenTranslucencyRadianceCacheMarkShaders (const FMaterial &Material, const FVertexFactoryType *VertexFactoryType, TShaderRef< FLumenTranslucencyRadianceCacheMarkVS > &VertexShader, TShaderRef< FLumenTranslucencyRadianceCacheMarkPS > &PixelShader)
 
bool CanMaterialRenderInLumenTranslucencyRadianceCacheMarkPass (const FScene &Scene, const FSceneViewFamily &ViewFamily, const FPrimitiveSceneProxy &PrimitiveSceneProxy, const FMaterial &Material)
 
FMeshPassProcessorCreateLumenTranslucencyRadianceCacheMarkPassProcessor (ERHIFeatureLevel::Type FeatureLevel, const FScene *Scene, const FSceneView *InViewIfDynamicMeshCommand, FMeshPassDrawListContext *InDrawListContext)
 
 REGISTER_MESHPASSPROCESSOR_AND_PSOCOLLECTOR (LumenTranslucencyRadianceCacheMarkPass, CreateLumenTranslucencyRadianceCacheMarkPassProcessor, EShadingPath::Deferred, EMeshPass::LumenTranslucencyRadianceCacheMark, EMeshPassFlags::MainView)
 
int32 GetTranslucencyLightingVolumeDim ()
 
void LumenTranslucencyReflectionsMarkUsedProbes (FRDGBuilder &GraphBuilder, const FSceneRenderer &SceneRenderer, FViewInfo &View, const FSceneTextures &SceneTextures, const LumenRadianceCache::FRadianceCacheMarkParameters *RadianceCacheMarkParameters)
 

Variables

int32 GLumenTranslucencyRadianceCacheReflections = 1
 
int32 GLumenTranslucencyReflectionsMarkDownsampleFactor = 4
 
bool GLumenTranslucencyRadianceCacheHZBOcclusionTest = true
 
float GLumenTranslucencyReflectionsRadianceCacheReprojectionRadiusScale = 10
 
float GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize = 4.0f
 
FAutoConsoleVariableRef CVarLumenTranslucencyVolumeRadianceCacheClipmapFadeSize (TEXT("r.Lumen.TranslucencyReflections.ClipmapFadeSize"), GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize, TEXT("Size in Radiance Cache probes of the dithered transition region between clipmaps"), ECVF_RenderThreadSafe)
 

Function Documentation

◆ CanMaterialRenderInLumenTranslucencyRadianceCacheMarkPass()

bool CanMaterialRenderInLumenTranslucencyRadianceCacheMarkPass ( const FScene Scene,
const FSceneViewFamily ViewFamily,
const FPrimitiveSceneProxy PrimitiveSceneProxy,
const FMaterial Material 
)

◆ CreateLumenTranslucencyRadianceCacheMarkPassProcessor()

FMeshPassProcessor * CreateLumenTranslucencyRadianceCacheMarkPassProcessor ( ERHIFeatureLevel::Type  FeatureLevel,
const FScene Scene,
const FSceneView InViewIfDynamicMeshCommand,
FMeshPassDrawListContext InDrawListContext 
)

◆ CVarLumenTranslucencyRadianceCache()

FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCache ( TEXT("r.Lumen.TranslucencyReflections.RadianceCache")  ,
GLumenTranslucencyRadianceCacheReflections  ,
TEXT("Whether to use the Radiance Cache to provide Lumen Reflections on Translucent Surfaces." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenTranslucencyRadianceCacheDownsampleFactor()

FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheDownsampleFactor ( TEXT("r.Lumen.TranslucencyReflections.MarkDownsampleFactor")  ,
GLumenTranslucencyReflectionsMarkDownsampleFactor  ,
TEXT("Downsample factor for marking translucent surfaces in the Lumen Radiance Cache. Too low of factors will cause incorrect Radiance Cache coverage. Should be a power of 2.")  ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenTranslucencyRadianceCacheHZBOcclusionTest()

FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheHZBOcclusionTest ( TEXT("r.Lumen.TranslucencyReflections.HZBOcclusionTest")  ,
GLumenTranslucencyRadianceCacheHZBOcclusionTest  ,
TEXT("Whether to use HZB occlusion test when marking translucent surfaces in the Lumen Radiance Cache." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ CVarLumenTranslucencyRadianceCacheReprojectionRadiusScale()

FAutoConsoleVariableRef CVarLumenTranslucencyRadianceCacheReprojectionRadiusScale ( TEXT("r.Lumen.TranslucencyReflections.ReprojectionRadiusScale")  ,
GLumenTranslucencyReflectionsRadianceCacheReprojectionRadiusScale  ,
TEXT("Larger values treat the Radiance Cache lighting as more distant." ,
ECVF_Scalability ECVF_RenderThreadSafe 
)

◆ GetLumenTranslucencyRadianceCacheMarkShaders()

bool GetLumenTranslucencyRadianceCacheMarkShaders ( const FMaterial Material,
const FVertexFactoryType VertexFactoryType,
TShaderRef< FLumenTranslucencyRadianceCacheMarkVS > &  VertexShader,
TShaderRef< FLumenTranslucencyRadianceCacheMarkPS > &  PixelShader 
)

◆ GetTranslucencyLightingVolumeDim()

int32 GetTranslucencyLightingVolumeDim ( )
extern

Function returning current translucency lighting volume dimensions.

◆ IMPLEMENT_MATERIAL_SHADER_TYPE() [1/2]

IMPLEMENT_MATERIAL_SHADER_TYPE ( FLumenTranslucencyRadianceCacheMarkPS  ,
TEXT("/Engine/Private/Lumen/LumenTranslucencyRadianceCacheMarkShaders.usf" ,
TEXT("MainPS")  ,
SF_Pixel   
)

◆ IMPLEMENT_MATERIAL_SHADER_TYPE() [2/2]

IMPLEMENT_MATERIAL_SHADER_TYPE ( FLumenTranslucencyRadianceCacheMarkVS  ,
TEXT("/Engine/Private/Lumen/LumenTranslucencyRadianceCacheMarkShaders.usf" ,
TEXT("MainVS")  ,
SF_Vertex   
)

◆ IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT()

IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT ( FLumenTranslucencyRadianceCacheMarkPassUniformParameters  ,
"LumenTranslucencyRadianceCacheMarkPass"  ,
SceneTextures   
)

◆ LumenTranslucencyReflectionsMarkUsedProbes()

void LumenTranslucencyReflectionsMarkUsedProbes ( FRDGBuilder GraphBuilder,
const FSceneRenderer SceneRenderer,
FViewInfo View,
const FSceneTextures SceneTextures,
const LumenRadianceCache::FRadianceCacheMarkParameters RadianceCacheMarkParameters 
)

◆ REGISTER_MESHPASSPROCESSOR_AND_PSOCOLLECTOR()

Variable Documentation

◆ CVarLumenTranslucencyVolumeRadianceCacheClipmapFadeSize

FAutoConsoleVariableRef CVarLumenTranslucencyVolumeRadianceCacheClipmapFadeSize(TEXT("r.Lumen.TranslucencyReflections.ClipmapFadeSize"), GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize, TEXT("Size in Radiance Cache probes of the dithered transition region between clipmaps"), ECVF_RenderThreadSafe) ( TEXT("r.Lumen.TranslucencyReflections.ClipmapFadeSize")  ,
GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize  ,
TEXT("Size in Radiance Cache probes of the dithered transition region between clipmaps" ,
ECVF_RenderThreadSafe   
)

◆ GLumenTranslucencyRadianceCacheHZBOcclusionTest

bool GLumenTranslucencyRadianceCacheHZBOcclusionTest = true

◆ GLumenTranslucencyRadianceCacheReflections

int32 GLumenTranslucencyRadianceCacheReflections = 1

◆ GLumenTranslucencyReflectionsMarkDownsampleFactor

int32 GLumenTranslucencyReflectionsMarkDownsampleFactor = 4

◆ GLumenTranslucencyReflectionsRadianceCacheReprojectionRadiusScale

float GLumenTranslucencyReflectionsRadianceCacheReprojectionRadiusScale = 10

◆ GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize

float GLumenTranslucencyVolumeRadianceCacheClipmapFadeSize = 4.0f