UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LumenRadianceCacheInterpolation.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "RendererInterface.h"
8
9class FViewInfo;
11
12namespace LumenRadianceCache
13{
14 // Must match RadianceCacheCommon.ush
15 static constexpr int32 MaxClipmaps = 6;
16
17 static constexpr int32 MinRadianceProbeResolution = 8;
18
21 SHADER_PARAMETER(float, ClipmapWorldExtent)
22 SHADER_PARAMETER(float, ClipmapDistributionBase)
38
40
43 SHADER_PARAMETER_RDG_TEXTURE(Texture3D<uint>, RadianceProbeIndirectionTexture)
61
62 // Packed in vector to satisfy 16 byte array element alignment :
63 // X=RadianceProbeClipmapTMin, Y=WorldPositionToRadianceProbeCoordScale, Z=RadianceProbeCoordToWorldPositionScale, W=[available]
64 // Must match with LumenRadianceCacheInterpolation.ush
66 {
67 RadianceCacheInterpolationParameters.RadianceProbeSettings[Index].X = Value;
68 }
69 inline void SetClipmapCornerTWS(FRadianceCacheInterpolationParameters& RadianceCacheInterpolationParameters, uint32 Index, FVector3f Corner)
70 {
71 RadianceCacheInterpolationParameters.ClipmapCornerTWSAndCellSize[Index].X = Corner.X;
72 RadianceCacheInterpolationParameters.ClipmapCornerTWSAndCellSize[Index].Y = Corner.Y;
73 RadianceCacheInterpolationParameters.ClipmapCornerTWSAndCellSize[Index].Z = Corner.Z;
74 }
75 inline void SetClipmapCellSize(FRadianceCacheInterpolationParameters& RadianceCacheInterpolationParameters, uint32 Index, float CellSize)
76 {
77 RadianceCacheInterpolationParameters.ClipmapCornerTWSAndCellSize[Index].W = CellSize;
78 }
79
81 const FViewInfo& View,
82 FRDGBuilder& GraphBuilder,
83 const FRadianceCacheState& RadianceCacheState,
84 const LumenRadianceCache::FRadianceCacheInputs& RadianceCacheInputs,
86};
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
#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_ARRAY(MemberType, MemberName, ArrayDecl)
Definition ShaderParameterMacros.h:1696
#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 RenderGraphBuilder.h:49
Definition LumenViewState.h:250
Definition SceneRendering.h:1132
Definition DeferredShadingRenderer.h:40
void GetInterpolationParameters(const FViewInfo &View, FRDGBuilder &GraphBuilder, const FRadianceCacheState &RadianceCacheState, const LumenRadianceCache::FRadianceCacheInputs &RadianceCacheInputs, FRadianceCacheInterpolationParameters &OutParameters)
Definition LumenRadianceCache.cpp:163
FRadianceCacheInputs GetDefaultRadianceCacheInputs()
Definition LumenRadianceCache.cpp:115
void SetRadianceProbeClipmapTMin(FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, float Value)
Definition LumenRadianceCacheInterpolation.h:65
void SetClipmapCornerTWS(FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, FVector3f Corner)
Definition LumenRadianceCacheInterpolation.h:69
void SetClipmapCellSize(FRadianceCacheInterpolationParameters &RadianceCacheInterpolationParameters, uint32 Index, float CellSize)
Definition LumenRadianceCacheInterpolation.h:75
U16 Index
Definition radfft.cpp:71
Definition IntPoint.h:25