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

Enumerations

enum class  ETracingPermutation { Cards , VoxelsAfterCards , Voxels , MAX }
 
enum class  ESurfaceCacheSampling { AlwaysResidentPagesWithoutFeedback , AlwaysResidentPages , HighResPages }
 

Functions

bool AnyLumenHardwareRayTracingPassEnabled ()
 
bool AnyLumenHardwareRayTracingPassEnabled (const FScene *Scene, const FViewInfo &View)
 
bool AnyLumenHardwareInlineRayTracingPassEnabled (const FScene *Scene, const FViewInfo &View)
 
bool SupportsMultipleClosureEvaluation (EShaderPlatform ShaderPlatform)
 
bool SupportsMultipleClosureEvaluation (const FViewInfo &View)
 
void DebugResetSurfaceCache ()
 
float GetMaxTraceDistance (const FViewInfo &View)
 
bool IsLumenFeatureAllowedForView (const FScene *Scene, const FSceneView &View, bool bSkipTracingDataCheck=false, bool bSkipProjectCheck=false)
 
bool ShouldVisualizeScene (const FEngineShowFlags &ShowFlags)
 
bool ShouldVisualizeHardwareRayTracing (const FSceneViewFamily &ViewFamily)
 
bool ShouldHandleSkyLight (const FScene *Scene, const FSceneViewFamily &ViewFamily)
 
bool ShouldUpdateLumenSceneViewOrigin ()
 
FVector GetLumenSceneViewOrigin (const FViewInfo &View, int32 ClipmapIndex)
 
int32 GetGlobalDFResolution ()
 
float GetGlobalDFClipmapExtent (int32 ClipmapIndex)
 
int32 GetNumGlobalDFClipmaps (const FSceneView &View)
 
bool UseAsyncCompute (const FViewFamilyInfo &ViewFamily)
 
bool UseWaveOps (EShaderPlatform ShaderPlatform)
 
bool UseThreadGroupSize32 ()
 
EPixelFormat GetLightingDataFormat ()
 
FVector3f GetLightingQuantizationError ()
 
float GetCachedLightingPreExposure ()
 
bool IsSurfaceCacheFrozen ()
 
bool IsSurfaceCacheUpdateFrameFrozen ()
 
bool IsSoftwareRayTracingSupported ()
 
bool UseMeshSDFTracing (const FEngineShowFlags &EngineShowFlags)
 
bool UseGlobalSDFTracing (const FEngineShowFlags &EngineShowFlags)
 
bool UseGlobalSDFSimpleCoverageBasedExpand ()
 
bool UseGlobalSDFObjectGrid (const FSceneViewFamily &ViewFamily)
 
bool UseHeightfieldTracing (const FSceneViewFamily &ViewFamily, const FLumenSceneData &LumenSceneData)
 
bool UseHeightfieldTracingForVoxelLighting (const FLumenSceneData &LumenSceneData)
 
int32 GetHeightfieldMaxTracingSteps ()
 
bool IsUsingGlobalSDF (const FSceneViewFamily &ViewFamily)
 
bool IsUsingDistanceFieldRepresentationBit (const FViewInfo &View)
 
bool UseHardwareRayTracing (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedSceneLighting (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedDirectLighting (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedReflections (const FSceneViewFamily &ViewFamily)
 
bool UseReSTIRGather (const FSceneViewFamily &ViewFamily, EShaderPlatform ShaderPlatform)
 
bool UseHardwareRayTracedScreenProbeGather (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedShortRangeAO (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedRadianceCache (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedRadiosity (const FSceneViewFamily &ViewFamily)
 
bool UseHardwareRayTracedVisualize (const FSceneViewFamily &ViewFamily)
 
bool IsUsingRayTracingLightingGrid (const FSceneViewFamily &ViewFamily, const FViewInfo &View, EDiffuseIndirectMethod DiffuseIndirectMethod)
 
bool ShouldRenderRadiosityHardwareRayTracing (const FSceneViewFamily &ViewFamily)
 
bool ShouldPrecachePSOs (EShaderPlatform Platform)
 
bool UseHardwareInlineRayTracing (const FSceneViewFamily &ViewFamily)
 
float GetHardwareRayTracingPullbackBias ()
 
bool UseFarField (const FSceneViewFamily &ViewFamily)
 
bool UseFarFieldOcclusionOnly ()
 
float GetFarFieldMaxTraceDistance ()
 
float GetNearFieldMaxTraceDistanceDitherScale (bool bUseFarField)
 
float GetNearFieldSceneRadius (const FViewInfo &View, bool bUseFarField)
 
uint32 GetMeshCardDistanceBin (float Distance)
 
float GetHeightfieldReceiverBias ()
 
void Shutdown ()
 
bool WriteWarnings (const FScene *Scene, const FEngineShowFlags &ShowFlags, const TArray< FViewInfo > &Views, FScreenMessageWriter *Writer)
 
bool UseLumenFrontLayerTranslucencyReflections (const FViewInfo &View)
 
bool ShouldRenderInFrontLayerTranslucencyGBufferPass (bool bShouldRenderInMainPass, const FMaterial &Material)
 
void UpdateCardSceneBuffer (FRDGBuilder &GraphBuilder, FRDGScatterUploadBuilder &UploadBuilder, FLumenSceneFrameTemporaries &FrameTemporaries, const FSceneViewFamily &ViewFamily, FScene *Scene)
 
bool SetLandscapeHeightSamplingParameters (const FVector &LumenSceneViewOrigin, const FScene *Scene, FLumenLandscapeHeightSamplingParameters &OutParameters)
 
uint32 GetFeedbackBufferSize (const FViewFamilyInfo &ViewFamily)
 
uint32 GetCompactedFeedbackBufferSize ()
 
void SetDirectLightingDeferredLightUniformBuffer (const FViewInfo &View, const FLightSceneInfo *LightSceneInfo, TUniformBufferBinding< FDeferredLightUniformStruct > &UniformBuffer)
 
void CombineLumenSceneLighting (FScene *Scene, const FViewInfo &View, FRDGBuilder &GraphBuilder, const FLumenSceneFrameTemporaries &FrameTemporaries, const FLumenCardUpdateContext &CardUpdateContext, const FLumenCardTileUpdateContext &CardTileUpdateContext, ERDGPassFlags ComputePassFlags)
 
void BuildCardUpdateContext (FRDGBuilder &GraphBuilder, const FLumenSceneData &LumenSceneData, const TArray< FViewInfo > &Views, const FLumenSceneFrameTemporaries &FrameTemporaries, bool bIndirectLightingHistoryValid, FLumenCardUpdateContext &DirectLightingCardUpdateContext, FLumenCardUpdateContext &IndirectLightingCardUpdateContext, ERDGPassFlags ComputePassFlags)
 
void SpliceCardPagesIntoTiles (FRDGBuilder &GraphBuilder, const FGlobalShaderMap *GloablShaderMap, const FLumenCardUpdateContext &CardUpdateContext, const TRDGUniformBufferRef< FLumenCardScene > &LumenCardSceneUniformBuffer, FLumenCardTileUpdateContext &OutCardTileUpdateContext, ERDGPassFlags ComputePassFlags)
 
EPixelFormat GetDirectLightingAtlasFormat ()
 
EPixelFormat GetIndirectLightingAtlasFormat ()
 
EPixelFormat GetNumFramesAccumulatedAtlasFormat ()
 
uint32 GetFeedbackBufferTileSize ()
 
uint32 GetFeedbackBufferTileWrapMask ()
 
bool UseLumenTranslucencyRadianceCacheReflections (const FSceneViewFamily &ViewFamily)
 
bool ShouldRenderInTranslucencyRadianceCacheMarkPass (bool bShouldRenderInMainPass, const FMaterial &Material)
 
bool UseHardwareRayTracedTranslucencyVolume (const FSceneViewFamily &ViewFamily)
 

Variables

constexpr uint32 PhysicalPageSize = 128
 
constexpr uint32 VirtualPageSize = PhysicalPageSize - 1
 
constexpr uint32 MinCardResolution = 8
 
constexpr uint32 MinResLevel = 3
 
constexpr uint32 MaxResLevel = 11
 
constexpr uint32 SubAllocationResLevel = 7
 
constexpr uint32 NumResLevels = MaxResLevel - MinResLevel + 1
 
constexpr uint32 CardTileSize = 8
 
constexpr uint32 CardTileShadowDownsampleFactorDwords = 8
 
constexpr uint32 NumDistanceBuckets = 16
 
constexpr float MaxTraceDistance = 0.5f * UE_OLD_WORLD_MAX
 
constexpr uint32 NumAxisAlignedDirections = 6
 
constexpr uint32 FeedbackBufferElementStride = 2
 

Enumeration Type Documentation

◆ ESurfaceCacheSampling

Enumerator
AlwaysResidentPagesWithoutFeedback 
AlwaysResidentPages 
HighResPages 

◆ ETracingPermutation

Enumerator
Cards 
VoxelsAfterCards 
Voxels 
MAX 

Function Documentation

◆ AnyLumenHardwareInlineRayTracingPassEnabled()

bool Lumen::AnyLumenHardwareInlineRayTracingPassEnabled ( const FScene Scene,
const FViewInfo View 
)

◆ AnyLumenHardwareRayTracingPassEnabled() [1/2]

bool Lumen::AnyLumenHardwareRayTracingPassEnabled ( )
extern

◆ AnyLumenHardwareRayTracingPassEnabled() [2/2]

bool Lumen::AnyLumenHardwareRayTracingPassEnabled ( const FScene Scene,
const FViewInfo View 
)

◆ BuildCardUpdateContext()

void Lumen::BuildCardUpdateContext ( FRDGBuilder GraphBuilder,
const FLumenSceneData LumenSceneData,
const TArray< FViewInfo > &  Views,
const FLumenSceneFrameTemporaries FrameTemporaries,
bool  bIndirectLightingHistoryValid,
FLumenCardUpdateContext DirectLightingCardUpdateContext,
FLumenCardUpdateContext IndirectLightingCardUpdateContext,
ERDGPassFlags  ComputePassFlags 
)

◆ CombineLumenSceneLighting()

void Lumen::CombineLumenSceneLighting ( FScene Scene,
const FViewInfo View,
FRDGBuilder GraphBuilder,
const FLumenSceneFrameTemporaries FrameTemporaries,
const FLumenCardUpdateContext CardUpdateContext,
const FLumenCardTileUpdateContext CardTileUpdateContext,
ERDGPassFlags  ComputePassFlags 
)

◆ DebugResetSurfaceCache()

void Lumen::DebugResetSurfaceCache ( )

◆ GetCachedLightingPreExposure()

float Lumen::GetCachedLightingPreExposure ( )

◆ GetCompactedFeedbackBufferSize()

uint32 Lumen::GetCompactedFeedbackBufferSize ( )

◆ GetDirectLightingAtlasFormat()

EPixelFormat Lumen::GetDirectLightingAtlasFormat ( )

◆ GetFarFieldMaxTraceDistance()

float Lumen::GetFarFieldMaxTraceDistance ( )

◆ GetFeedbackBufferSize()

uint32 Lumen::GetFeedbackBufferSize ( const FViewFamilyInfo ViewFamily)

◆ GetFeedbackBufferTileSize()

uint32 Lumen::GetFeedbackBufferTileSize ( )

◆ GetFeedbackBufferTileWrapMask()

uint32 Lumen::GetFeedbackBufferTileWrapMask ( )

◆ GetGlobalDFClipmapExtent()

float Lumen::GetGlobalDFClipmapExtent ( int32  ClipmapIndex)

◆ GetGlobalDFResolution()

int32 Lumen::GetGlobalDFResolution ( )

◆ GetHardwareRayTracingPullbackBias()

float Lumen::GetHardwareRayTracingPullbackBias ( )

◆ GetHeightfieldMaxTracingSteps()

int32 Lumen::GetHeightfieldMaxTracingSteps ( )

◆ GetHeightfieldReceiverBias()

float Lumen::GetHeightfieldReceiverBias ( )

◆ GetIndirectLightingAtlasFormat()

EPixelFormat Lumen::GetIndirectLightingAtlasFormat ( )

◆ GetLightingDataFormat()

EPixelFormat Lumen::GetLightingDataFormat ( )

◆ GetLightingQuantizationError()

FVector3f Lumen::GetLightingQuantizationError ( )

◆ GetLumenSceneViewOrigin()

FVector Lumen::GetLumenSceneViewOrigin ( const FViewInfo View,
int32  ClipmapIndex 
)

◆ GetMaxTraceDistance()

float Lumen::GetMaxTraceDistance ( const FViewInfo View)

◆ GetMeshCardDistanceBin()

uint32 Lumen::GetMeshCardDistanceBin ( float  Distance)

◆ GetNearFieldMaxTraceDistanceDitherScale()

float Lumen::GetNearFieldMaxTraceDistanceDitherScale ( bool  bUseFarField)

◆ GetNearFieldSceneRadius()

float Lumen::GetNearFieldSceneRadius ( const FViewInfo View,
bool  bUseFarField 
)

◆ GetNumFramesAccumulatedAtlasFormat()

EPixelFormat Lumen::GetNumFramesAccumulatedAtlasFormat ( )
inline

◆ GetNumGlobalDFClipmaps()

int32 Lumen::GetNumGlobalDFClipmaps ( const FSceneView View)

◆ IsLumenFeatureAllowedForView()

bool Lumen::IsLumenFeatureAllowedForView ( const FScene Scene,
const FSceneView View,
bool  bSkipTracingDataCheck = false,
bool  bSkipProjectCheck = false 
)

◆ IsSoftwareRayTracingSupported()

bool Lumen::IsSoftwareRayTracingSupported ( )

◆ IsSurfaceCacheFrozen()

bool Lumen::IsSurfaceCacheFrozen ( )

◆ IsSurfaceCacheUpdateFrameFrozen()

bool Lumen::IsSurfaceCacheUpdateFrameFrozen ( )

◆ IsUsingDistanceFieldRepresentationBit()

bool Lumen::IsUsingDistanceFieldRepresentationBit ( const FViewInfo View)

◆ IsUsingGlobalSDF()

bool Lumen::IsUsingGlobalSDF ( const FSceneViewFamily ViewFamily)

◆ IsUsingRayTracingLightingGrid()

bool Lumen::IsUsingRayTracingLightingGrid ( const FSceneViewFamily ViewFamily,
const FViewInfo View,
EDiffuseIndirectMethod  DiffuseIndirectMethod 
)

◆ SetDirectLightingDeferredLightUniformBuffer()

void Lumen::SetDirectLightingDeferredLightUniformBuffer ( const FViewInfo View,
const FLightSceneInfo LightSceneInfo,
TUniformBufferBinding< FDeferredLightUniformStruct > &  UniformBuffer 
)

◆ SetLandscapeHeightSamplingParameters()

bool Lumen::SetLandscapeHeightSamplingParameters ( const FVector LumenSceneViewOrigin,
const FScene Scene,
FLumenLandscapeHeightSamplingParameters OutParameters 
)

◆ ShouldHandleSkyLight()

bool Lumen::ShouldHandleSkyLight ( const FScene Scene,
const FSceneViewFamily ViewFamily 
)

◆ ShouldPrecachePSOs()

bool Lumen::ShouldPrecachePSOs ( EShaderPlatform  Platform)

◆ ShouldRenderInFrontLayerTranslucencyGBufferPass()

bool Lumen::ShouldRenderInFrontLayerTranslucencyGBufferPass ( bool  bShouldRenderInMainPass,
const FMaterial Material 
)

◆ ShouldRenderInTranslucencyRadianceCacheMarkPass()

bool Lumen::ShouldRenderInTranslucencyRadianceCacheMarkPass ( bool  bShouldRenderInMainPass,
const FMaterial Material 
)

◆ ShouldRenderRadiosityHardwareRayTracing()

bool Lumen::ShouldRenderRadiosityHardwareRayTracing ( const FSceneViewFamily ViewFamily)

◆ ShouldUpdateLumenSceneViewOrigin()

bool Lumen::ShouldUpdateLumenSceneViewOrigin ( )

◆ ShouldVisualizeHardwareRayTracing()

bool Lumen::ShouldVisualizeHardwareRayTracing ( const FSceneViewFamily ViewFamily)

◆ ShouldVisualizeScene()

bool Lumen::ShouldVisualizeScene ( const FEngineShowFlags ShowFlags)

◆ Shutdown()

void Lumen::Shutdown ( )

◆ SpliceCardPagesIntoTiles()

void Lumen::SpliceCardPagesIntoTiles ( FRDGBuilder GraphBuilder,
const FGlobalShaderMap GloablShaderMap,
const FLumenCardUpdateContext CardUpdateContext,
const TRDGUniformBufferRef< FLumenCardScene > &  LumenCardSceneUniformBuffer,
FLumenCardTileUpdateContext OutCardTileUpdateContext,
ERDGPassFlags  ComputePassFlags 
)

◆ SupportsMultipleClosureEvaluation() [1/2]

bool Lumen::SupportsMultipleClosureEvaluation ( const FViewInfo View)

◆ SupportsMultipleClosureEvaluation() [2/2]

bool Lumen::SupportsMultipleClosureEvaluation ( EShaderPlatform  ShaderPlatform)

◆ UpdateCardSceneBuffer()

void Lumen::UpdateCardSceneBuffer ( FRDGBuilder GraphBuilder,
FRDGScatterUploadBuilder UploadBuilder,
FLumenSceneFrameTemporaries FrameTemporaries,
const FSceneViewFamily ViewFamily,
FScene Scene 
)

◆ UseAsyncCompute()

bool Lumen::UseAsyncCompute ( const FViewFamilyInfo ViewFamily)

◆ UseFarField()

bool Lumen::UseFarField ( const FSceneViewFamily ViewFamily)

◆ UseFarFieldOcclusionOnly()

bool Lumen::UseFarFieldOcclusionOnly ( )

◆ UseGlobalSDFObjectGrid()

bool Lumen::UseGlobalSDFObjectGrid ( const FSceneViewFamily ViewFamily)

◆ UseGlobalSDFSimpleCoverageBasedExpand()

bool Lumen::UseGlobalSDFSimpleCoverageBasedExpand ( )

◆ UseGlobalSDFTracing()

bool Lumen::UseGlobalSDFTracing ( const FEngineShowFlags EngineShowFlags)

◆ UseHardwareInlineRayTracing()

bool Lumen::UseHardwareInlineRayTracing ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedDirectLighting()

bool Lumen::UseHardwareRayTracedDirectLighting ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedRadianceCache()

bool Lumen::UseHardwareRayTracedRadianceCache ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedRadiosity()

bool Lumen::UseHardwareRayTracedRadiosity ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedReflections()

bool Lumen::UseHardwareRayTracedReflections ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedSceneLighting()

bool Lumen::UseHardwareRayTracedSceneLighting ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedScreenProbeGather()

bool Lumen::UseHardwareRayTracedScreenProbeGather ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedShortRangeAO()

bool Lumen::UseHardwareRayTracedShortRangeAO ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedTranslucencyVolume()

bool Lumen::UseHardwareRayTracedTranslucencyVolume ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracedVisualize()

bool Lumen::UseHardwareRayTracedVisualize ( const FSceneViewFamily ViewFamily)

◆ UseHardwareRayTracing()

bool Lumen::UseHardwareRayTracing ( const FSceneViewFamily ViewFamily)

◆ UseHeightfieldTracing()

bool Lumen::UseHeightfieldTracing ( const FSceneViewFamily ViewFamily,
const FLumenSceneData LumenSceneData 
)

◆ UseHeightfieldTracingForVoxelLighting()

bool Lumen::UseHeightfieldTracingForVoxelLighting ( const FLumenSceneData LumenSceneData)

◆ UseLumenFrontLayerTranslucencyReflections()

bool Lumen::UseLumenFrontLayerTranslucencyReflections ( const FViewInfo View)

◆ UseLumenTranslucencyRadianceCacheReflections()

bool Lumen::UseLumenTranslucencyRadianceCacheReflections ( const FSceneViewFamily ViewFamily)

◆ UseMeshSDFTracing()

bool Lumen::UseMeshSDFTracing ( const FEngineShowFlags EngineShowFlags)

◆ UseReSTIRGather()

bool Lumen::UseReSTIRGather ( const FSceneViewFamily ViewFamily,
EShaderPlatform  ShaderPlatform 
)

◆ UseThreadGroupSize32()

bool Lumen::UseThreadGroupSize32 ( )

◆ UseWaveOps()

bool Lumen::UseWaveOps ( EShaderPlatform  ShaderPlatform)

◆ WriteWarnings()

bool Lumen::WriteWarnings ( const FScene Scene,
const FEngineShowFlags ShowFlags,
const TArray< FViewInfo > &  Views,
FScreenMessageWriter Writer 
)

Variable Documentation

◆ CardTileShadowDownsampleFactorDwords

constexpr uint32 Lumen::CardTileShadowDownsampleFactorDwords = 8
constexpr

◆ CardTileSize

constexpr uint32 Lumen::CardTileSize = 8
constexpr

◆ FeedbackBufferElementStride

constexpr uint32 Lumen::FeedbackBufferElementStride = 2
constexpr

◆ MaxResLevel

constexpr uint32 Lumen::MaxResLevel = 11
constexpr

◆ MaxTraceDistance

constexpr float Lumen::MaxTraceDistance = 0.5f * UE_OLD_WORLD_MAX
constexpr

◆ MinCardResolution

constexpr uint32 Lumen::MinCardResolution = 8
constexpr

◆ MinResLevel

constexpr uint32 Lumen::MinResLevel = 3
constexpr

◆ NumAxisAlignedDirections

constexpr uint32 Lumen::NumAxisAlignedDirections = 6
constexpr

◆ NumDistanceBuckets

constexpr uint32 Lumen::NumDistanceBuckets = 16
constexpr

◆ NumResLevels

constexpr uint32 Lumen::NumResLevels = MaxResLevel - MinResLevel + 1
constexpr

◆ PhysicalPageSize

constexpr uint32 Lumen::PhysicalPageSize = 128
constexpr

◆ SubAllocationResLevel

constexpr uint32 Lumen::SubAllocationResLevel = 7
constexpr

◆ VirtualPageSize

constexpr uint32 Lumen::VirtualPageSize = PhysicalPageSize - 1
constexpr