UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LumenVisualize.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "RenderGraphFwd.h"
7#include "ScreenPass.h"
9#include "Math/IntPoint.h"
10#include "LumenReflections.h"
12
13class FScene;
15class FViewInfo;
19
21
22// r.Lumen.Visualize.Mode
23#define VISUALIZE_MODE_OVERVIEW 1
24#define VISUALIZE_MODE_PERFORMANCE_OVERVIEW 2
25#define VISUALIZE_MODE_LUMEN_SCENE 3
26#define VISUALIZE_MODE_REFLECTION_VIEW 4
27#define VISUALIZE_MODE_SURFACE_CACHE 5
28#define VISUALIZE_MODE_GEOMETRY_NORMALS 6
29#define VISUALIZE_MODE_DEDICATED_REFLECTION_RAYS 7
30#define VISUALIZE_MODE_ALBEDO 8
31#define VISUALIZE_MODE_NORMALS 9
32#define VISUALIZE_MODE_OPACITY 11
33#define VISUALIZE_MODE_CARD_SHARING_ID 22
34#define VISUALIZE_MODE_SCREENPROBEGATHER_FAST_UPDATE_MODE_AMOUNT 23
35#define VISUALIZE_MODE_SCREENPROBEGATHER_NUM_FRAMES_ACCUMULATED 24
36
37namespace LumenVisualize
38{
40 SHADER_PARAMETER(int32, Tonemap)
45
47 SHADER_PARAMETER_STRUCT_INCLUDE(LumenVisualize::FTonemappingParameters, TonemappingParameters)
48 SHADER_PARAMETER_STRUCT_INCLUDE(ShaderPrint::FShaderParameters, ShaderPrintUniformBuffer)
56 SHADER_PARAMETER_STRUCT_INCLUDE(LumenReflections::FCompositeParameters, ReflectionsCompositeParameters)
63
66
68 FRDGBuilder& GraphBuilder,
69 const FScene* Scene,
70 const FSceneTextureParameters& SceneTextures,
71 const FViewInfo& View,
78 EDiffuseIndirectMethod DiffuseIndirectMethod);
79
80 bool IsHitLightingForceEnabled(const FViewInfo& View, EDiffuseIndirectMethod DiffuseIndirectMethod);
81 bool UseHitLighting(const FViewInfo& View, EDiffuseIndirectMethod DiffuseIndirectMethod);
82 bool UseSurfaceCacheFeedback(const FEngineShowFlags& ShowFlags);
83};
84
86{
87 // [Optional] Render to the specified output. If invalid, a new texture is created and returned.
89
90 // [Required] The scene color
92
93 // [Required] The scene depth
95
96 FRDGTextureRef ColorGradingTexture = nullptr;
97 FRDGBufferRef EyeAdaptationBuffer = nullptr;
98
99 // [Required] Used when scene textures are required by the material.
101};
102
104
105extern int32 GetLumenVisualizeMode(const FViewInfo& View);
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EReflectionsMethod
Definition DeferredShadingRenderer.h:307
EDiffuseIndirectMethod
Definition DeferredShadingRenderer.h:291
FScreenPassTexture AddVisualizeLumenScenePass(FRDGBuilder &GraphBuilder, const FViewInfo &View, EDiffuseIndirectMethod DiffuseIndirectMethod, EReflectionsMethod ReflectionsMethod, const FVisualizeLumenSceneInputs &Inputs, FLumenSceneFrameTemporaries &FrameTemporaries)
Definition LumenVisualize.cpp:1033
int32 GetLumenVisualizeMode(const FViewInfo &View)
Definition LumenVisualize.cpp:1026
#define SHADER_PARAMETER_RDG_BUFFER_SRV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1800
#define SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1752
#define SHADER_PARAMETER_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1708
#define SHADER_PARAMETER_SAMPLER(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1740
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define SHADER_PARAMETER_STRUCT_INCLUDE(StructType, MemberName)
Definition ShaderParameterMacros.h:1895
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition RenderGraphResources.h:1321
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition ScenePrivate.h:2875
Definition SceneRendering.h:1132
Definition LumenVisualize.cpp:573
bool IsHitLightingForceEnabled(const FViewInfo &View, EDiffuseIndirectMethod DiffuseIndirectMethod)
Definition LumenVisualizeHardwareRayTracing.cpp:101
bool UseHitLighting(const FViewInfo &View, EDiffuseIndirectMethod DiffuseIndirectMethod)
Definition LumenVisualizeHardwareRayTracing.cpp:106
constexpr int32 OverviewTileMargin
Definition LumenVisualize.h:65
void VisualizeHardwareRayTracing(FRDGBuilder &GraphBuilder, const FScene *Scene, const FSceneTextureParameters &SceneTextures, const FViewInfo &View, const FLumenSceneFrameTemporaries &FrameTemporaries, const FLumenCardTracingParameters &TracingParameters, FLumenIndirectTracingParameters &IndirectTracingParameters, LumenVisualize::FSceneParameters &VisualizeParameters, FRDGTextureRef SceneColor, bool bVisualizeModeWithHitLighting, EDiffuseIndirectMethod DiffuseIndirectMethod)
Definition LumenVisualizeHardwareRayTracing.cpp:528
bool UseSurfaceCacheFeedback(const FEngineShowFlags &ShowFlags)
Definition LumenVisualize.cpp:295
constexpr int32 NumOverviewTilesPerRow
Definition LumenVisualize.h:64
Definition ShowFlags.h:56
Definition LumenSceneData.h:895
Definition ScreenPass.h:83
Definition ScreenPass.h:41
Definition LumenVisualize.h:86
FScreenPassTexture SceneColor
Definition LumenVisualize.h:91
FScreenPassRenderTarget OverrideOutput
Definition LumenVisualize.h:88
FSceneTextureShaderParameters SceneTextures
Definition LumenVisualize.h:100
FScreenPassTexture SceneDepth
Definition LumenVisualize.h:94
Definition IntPoint.h:25