UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ScreenSpaceRayTracing.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "RenderGraph.h"
6#include "SceneView.h"
9#include "HZB.h"
10
11class FViewInfo;
13
14
15enum class ESSRQuality
16{
18
19 Low,
20 Medium,
21 High,
22 Epic,
23
24 MAX
25};
26
40
43
47
49
52
55
58
61
65
67{
68
73
74bool ShouldKeepBleedFreeSceneColor(const FViewInfo& View);
75
76bool ShouldRenderScreenSpaceReflections(const FViewInfo& View);
77bool ShouldRenderScreenSpaceReflectionsWater(const FViewInfo& View);
78
79
81 FRDGBuilder& GraphBuilder,
82 const FSceneTextureParameters& SceneTextures,
84 const FViewInfo& View);
85
87
88bool IsSSRTemporalPassRequired(const FViewInfo& View);
89
90int32 GetSSGIRayCountPerTracingPixel();
91
92
93FPrevSceneColorMip ReducePrevSceneColorMip(
94 FRDGBuilder& GraphBuilder,
95 const FSceneTextureParameters& SceneTextures,
96 const FViewInfo& View);
97
98
99void RenderScreenSpaceReflections(
100 FRDGBuilder& GraphBuilder,
101 const FSceneTextureParameters& SceneTextures,
103 const FViewInfo& View,
105 bool bDenoiser,
106 IScreenSpaceDenoiser::FReflectionsInputs* DenoiserInputs,
107 bool bSingleLayerWater = false,
108 FTiledReflection* TiledScreenSpaceReflection = nullptr);
109
111
112IScreenSpaceDenoiser::FDiffuseIndirectInputs CastStandaloneDiffuseIndirectRays(
113 FRDGBuilder& GraphBuilder,
114 const HybridIndirectLighting::FCommonParameters& CommonParameters,
116 const FViewInfo& View);
117
119 FRDGBuilder& GraphBuilder,
120 const FSceneTextureParameters& SceneTextures,
121 const ScreenSpaceRayTracing::FPrevSceneColorMip& PrevSceneColor,
122 const FViewInfo& View,
124
126
127} // namespace ScreenSpaceRayTracing
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
ESSRQuality
Definition ScreenSpaceRayTracing.h:16
#define SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1752
#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_REF(StructType, MemberName)
Definition ShaderParameterMacros.h:1909
#define SHADER_PARAMETER_RDG_TEXTURE_UAV(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1788
#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:1426
Definition RenderGraphResources.h:1321
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition SceneRendering.h:1132
Definition IndirectLightRendering.h:13
Definition ScreenSpaceRayTracing.cpp:122
void ProcessForNextFrameScreenSpaceRayTracing(FRDGBuilder &GraphBuilder, const FSceneTextureParameters &SceneTextures, const FRDGTextureRef CurrentSceneColor, const FViewInfo &View)
void SetupCommonScreenSpaceRayParameters(FRDGBuilder &GraphBuilder, const FSceneTextureParameters &SceneTextures, const ScreenSpaceRayTracing::FPrevSceneColorMip &PrevSceneColor, const FViewInfo &View, FCommonScreenSpaceRayParameters *OutParameters)
Definition ScreenSpaceRayTracing.cpp:210
FLinearColor ComputeSSRParams(const FViewInfo &View, ESSRQuality SSRQuality, bool bEnableDiscard)
Definition ScreenSpaceRayTracing.cpp:291
bool IsScreenSpaceDiffuseIndirectSupported(const FViewInfo &View)
Definition ScreenSpaceRayTracing.cpp:168
bool IsSSRTemporalPassRequired(const FViewInfo &View)
Definition ScreenSpaceRayTracing.cpp:178
Definition Color.h:48
Definition ScreenSpaceRayTracing.h:28
uint32 TileSize
Definition ScreenSpaceRayTracing.h:38
FRDGBufferSRVRef DownsampledTileListDataBufferSRV
Definition ScreenSpaceRayTracing.h:36
FRDGBufferRef DispatchDownsampledIndirectParametersBuffer
Definition ScreenSpaceRayTracing.h:32
FRDGBufferRef DrawIndirectParametersBuffer
Definition ScreenSpaceRayTracing.h:29
FRDGBufferRef DispatchClearIndirectParametersBuffer
Definition ScreenSpaceRayTracing.h:31
FRDGBufferSRVRef ClearTileListDataBufferSRV
Definition ScreenSpaceRayTracing.h:35
FRDGBufferSRVRef DownsampledClearTileListDataBufferSRV
Definition ScreenSpaceRayTracing.h:37
FRDGBufferSRVRef TileListDataBufferSRV
Definition ScreenSpaceRayTracing.h:34
FRDGBufferRef DispatchDownsampledClearIndirectParametersBuffer
Definition ScreenSpaceRayTracing.h:33
FRDGBufferRef DispatchIndirectParametersBuffer
Definition ScreenSpaceRayTracing.h:30
Definition ScreenSpaceDenoise.h:199