18static const int32 kMaxDenoiserBufferProcessingCount = 4;
35 float DenoisingResolutionFraction,
52 static const int32 kMaxBatchSize = 4;
55 static constexpr int32 kMultiPolychromaticPenumbraHarmonics = 4;
58 static constexpr int32 kHarmonicBordersCount = kMultiPolychromaticPenumbraHarmonics + 1;
61 static constexpr int32 kSphericalHarmonicTextureCount = 2;
177 PenumbraAndAvgOccluder,
179 PenumbraAndClosestOccluder,
201 float ResolutionFraction = 1.0f;
211 float ResolutionFraction = 1.0f;
214 float RayCountPerPixel = 1.0f;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const IScreenSpaceDenoiser * GScreenSpaceDenoiser
Definition ScreenSpaceDenoise.cpp:142
int GetReflectionsDenoiserMode()
Definition ScreenSpaceDenoise.cpp:3033
#define SHADER_PARAMETER_RDG_TEXTURE(ShaderType, MemberName)
Definition ShaderParameterMacros.h:1752
#define SHADER_PARAMETER_RDG_TEXTURE_ARRAY(ShaderType, MemberName, ArrayDecl)
Definition ShaderParameterMacros.h:1755
#define SHADER_PARAMETER_RDG_TEXTURE_UAV_ARRAY(ShaderType, MemberName, ArrayDecl)
Definition ShaderParameterMacros.h:1791
#define BEGIN_SHADER_PARAMETER_STRUCT(StructTypeName, DllStorage)
Definition ShaderParameterMacros.h:1482
#define END_SHADER_PARAMETER_STRUCT()
Definition ShaderParameterMacros.h:1485
#define SHADER_PARAMETER_STRUCT(StructType, MemberName)
Definition ShaderParameterMacros.h:1847
#define SHADER_PARAMETER(MemberType, MemberName)
Definition ShaderParameterMacros.h:1684
Definition LightSceneInfo.h:208
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition SceneRendering.h:1132
Definition ScreenSpaceDenoise.h:49
virtual FDiffuseIndirectOutputs DenoiseSkyLight(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FDiffuseIndirectInputs &Inputs, const FAmbientOcclusionRayTracingConfig Config) const =0
virtual const TCHAR * GetDebugName() const =0
EMode
Definition ScreenSpaceDenoise.h:66
virtual FAmbientOcclusionOutputs DenoiseAmbientOcclusion(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FAmbientOcclusionInputs &ReflectionInputs, const FAmbientOcclusionRayTracingConfig RayTracingConfig) const =0
virtual FPolychromaticPenumbraOutputs DenoisePolychromaticPenumbraHarmonics(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FPolychromaticPenumbraHarmonics &Inputs) const =0
virtual ~IScreenSpaceDenoiser()
Definition ScreenSpaceDenoise.h:224
virtual void DenoiseShadowVisibilityMasks(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const TStaticArray< FShadowVisibilityParameters, IScreenSpaceDenoiser::kMaxBatchSize > &InputParameters, const int32 InputParameterCount, TStaticArray< FShadowVisibilityOutputs, IScreenSpaceDenoiser::kMaxBatchSize > &Outputs) const =0
virtual FReflectionsOutputs DenoiseReflections(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FReflectionsInputs &ReflectionInputs, const FReflectionsRayTracingConfig RayTracingConfig) const =0
virtual EShadowRequirements GetShadowRequirements(const FViewInfo &View, const FLightSceneInfo &LightSceneInfo, const FShadowRayTracingConfig &RayTracingConfig) const =0
virtual FSSDSignalTextures DenoiseDiffuseIndirectHarmonic(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FDiffuseIndirectHarmonic &Inputs, const HybridIndirectLighting::FCommonParameters &CommonDiffuseParameters) const =0
virtual FReflectionsOutputs DenoiseWaterReflections(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FReflectionsInputs &ReflectionInputs, const FReflectionsRayTracingConfig RayTracingConfig) const =0
virtual bool SupportsScreenSpaceDiffuseIndirectDenoiser(EShaderPlatform Platform) const =0
virtual FSSDSignalTextures DenoiseDiffuseIndirect(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FDiffuseIndirectInputs &Inputs, const FAmbientOcclusionRayTracingConfig Config) const =0
virtual FSSDSignalTextures DenoiseScreenSpaceDiffuseIndirect(FRDGBuilder &GraphBuilder, const FViewInfo &View, FPreviousViewInfo *PreviousViewInfos, const FSceneTextureParameters &SceneTextures, const FDiffuseIndirectInputs &Inputs, const FAmbientOcclusionRayTracingConfig Config) const =0
EShadowRequirements
Definition ScreenSpaceDenoise.h:168
Definition IConsoleManager.h:1792
Definition StaticArray.h:26
Definition ScreenSpaceDenoise.h:22
void SetupCommonShaderParameters(const FViewInfo &View, const FSceneTextureParameters &SceneTextures, const FIntRect DenoiserFullResViewport, float DenoisingResolutionFraction, FCommonShaderParameters *OutPublicCommonParameters)
Definition SceneRendering.h:975
Definition ScreenSpaceDenoise.h:209
Definition ScreenSpaceDenoise.h:199
Definition ScreenSpaceDenoise.h:184
Definition ScreenSpaceDenoise.h:191
FShadowRayTracingConfig RayTracingConfig
Definition ScreenSpaceDenoise.h:193
FShadowVisibilityInputs InputTextures
Definition ScreenSpaceDenoise.h:194