UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow > Class Template Reference

#include <ShadowRendering.h>

+ Inheritance diagram for TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >:

Public Member Functions

 TShadowProjectionPS ()
 
 TShadowProjectionPS (const ShaderMetaType::CompiledShaderInitializerType &Initializer)
 
void SetParameters (FRHIBatchedShaderParameters &BatchedParameters, int32 ViewIndex, const FSceneView &View, const FProjectedShadowInfo *ShadowInfo, bool bUseLightFunctionAtlas)
 
- Public Member Functions inherited from FShadowProjectionPixelShaderInterface
 FShadowProjectionPixelShaderInterface ()
 
 FShadowProjectionPixelShaderInterface (const ShaderMetaType::CompiledShaderInitializerType &Initializer)
 
- Public Member Functions inherited from FGlobalShader
 FGlobalShader ()=default
 
RENDERCORE_API FGlobalShader (const ShaderMetaType::CompiledShaderInitializerType &Initializer)
 
template<typename TViewUniformShaderParameters >
void SetParameters (FRHIBatchedShaderParameters &BatchedParameters, FRHIUniformBuffer *ViewUniformBuffer)
 
- Public Member Functions inherited from FShader
RENDERCORE_API FShader ()
 
RENDERCORE_API FShader (const CompiledShaderInitializerType &Initializer)
 
RENDERCORE_API ~FShader ()
 
RENDERCORE_API const FSHAHashGetHash () const
 
RENDERCORE_API const FSHAHashGetVertexFactoryHash () const
 
RENDERCORE_API const FSHAHashGetOutputHash () const
 
uint32 GetSortKey () const
 
RENDERCORE_API void Finalize (const FShaderMapResourceCode *Code)
 
FShaderTypeGetType (const FShaderMapPointerTable &InPointerTable) const
 
FShaderTypeGetType (const FPointerTableBase *InPointerTable) const
 
FVertexFactoryTypeGetVertexFactoryType (const FShaderMapPointerTable &InPointerTable) const
 
FVertexFactoryTypeGetVertexFactoryType (const FPointerTableBase *InPointerTable) const
 
FShaderTypeGetTypeUnfrozen () const
 
int32 GetResourceIndex () const
 
EShaderPlatform GetShaderPlatform () const
 
EShaderFrequency GetFrequency () const
 
const FShaderTarget GetTarget () const
 
bool IsFrozen () const
 
uint32 GetNumInstructions () const
 
uint32 GetNumTextureSamplers () const
 
uint32 GetCodeSize () const
 
void SetNumInstructions (uint32 Value)
 
template<typename UniformBufferStructType >
const TShaderUniformBufferParameter< UniformBufferStructType > & GetUniformBufferParameter () const
 
const FShaderUniformBufferParameterGetUniformBufferParameter (const FShaderParametersMetadata *SearchStruct) const
 
const FShaderUniformBufferParameterGetUniformBufferParameter (const FHashedName SearchName) const
 
RENDERCORE_API const FShaderParametersMetadataFindAutomaticallyBoundUniformBufferStruct (int32 BaseIndex) const
 
RENDERCORE_API void DumpDebugInfo (const FShaderMapPointerTable &InPtrTable)
 
 LAYOUT_FIELD (FShaderParameterBindings, Bindings)
 
 LAYOUT_FIELD (FShaderParameterMapInfo, ParameterMapInfo)
 

Static Public Member Functions

static bool ShouldCompilePermutation (const FGlobalShaderPermutationParameters &Parameters)
 
static void ModifyCompilationEnvironment (const FGlobalShaderPermutationParameters &Parameters, FShaderCompilerEnvironment &OutEnvironment)
 
- Static Public Member Functions inherited from FGlobalShader
static void ModifyCompilationEnvironment (const FGlobalShaderPermutationParameters &Parameters, FShaderCompilerEnvironment &Environment)
 
static bool ShouldCompilePermutation (const FShaderPermutationParameters &)
 
static EShaderPermutationPrecacheRequest ShouldPrecachePermutation (const FShaderPermutationParameters &Parameters)
 
- Static Public Member Functions inherited from FShader
static void ModifyCompilationEnvironment (const FShaderPermutationParameters &, FShaderCompilerEnvironment &)
 
static const FShaderBindingLayoutGetShaderBindingLayout (const FShaderPermutationParameters &)
 
static bool ShouldCompilePermutation (const FShaderPermutationParameters &)
 
static EShaderPermutationPrecacheRequest ShouldPrecachePermutation (const FShaderPermutationParameters &Parameters)
 
static bool ValidateCompiledResult (EShaderPlatform InPlatform, const FShaderParameterMap &InParameterMap, TArray< FString > &OutError)
 
static EShaderCompileJobPriority GetOverrideJobPriority ()
 
static ERayTracingPayloadType GetRayTracingPayloadType (const int32 PermutationId)
 
static const FShaderParametersMetadataGetRootParametersMetadata ()
 

Protected Member Functions

 LAYOUT_FIELD (FShadowProjectionShaderParameters, ProjectionParameters)
 
 LAYOUT_FIELD (FShaderParameter, ShadowFadeFraction)
 
 LAYOUT_FIELD (FShaderParameter, ShadowSharpen)
 
 LAYOUT_FIELD (FShaderParameter, LightPosition)
 
- Protected Member Functions inherited from FShader
 LAYOUT_FIELD (TMemoryImageArray< FHashedName >, UniformBufferParameterStructs)
 
 LAYOUT_FIELD (TMemoryImageArray< FShaderUniformBufferParameter >, UniformBufferParameters)
 
 LAYOUT_FIELD_EDITORONLY (FSHAHash, OutputHash)
 
 LAYOUT_FIELD_EDITORONLY (FSHAHash, VFSourceHash)
 
 LAYOUT_FIELD_EDITORONLY (FSHAHash, SourceHash)
 

Additional Inherited Members

- Public Types inherited from FGlobalShader
using ShaderMetaType = FGlobalShaderType
 
using FPermutationParameters = FGlobalShaderPermutationParameters
 
- Public Types inherited from FShader
using FPermutationDomain = FShaderPermutationNone
 
using FPermutationParameters = FShaderPermutationParameters
 
using CompiledShaderInitializerType = FShaderCompiledShaderInitializerType
 
using ShaderMetaType = FShaderType
 
using ShaderStatKeyType = FMemoryImageName
 
using FShaderStatisticMap = TMemoryImageMap< ShaderStatKeyType, FShaderStatVariant >
 

Detailed Description

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
class TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >

TShadowProjectionPS A pixel shader for projecting a shadow depth buffer onto the scene. Used with any light type casting normal shadows.

Constructor & Destructor Documentation

◆ TShadowProjectionPS() [1/2]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::TShadowProjectionPS ( )
inline

◆ TShadowProjectionPS() [2/2]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::TShadowProjectionPS ( const ShaderMetaType::CompiledShaderInitializerType Initializer)
inline

Constructor - binds all shader params and initializes the sample offsets

Parameters
Initializer- init data from shader compiler

Member Function Documentation

◆ LAYOUT_FIELD() [1/4]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::LAYOUT_FIELD ( FShaderParameter  ,
LightPosition   
)
protected

◆ LAYOUT_FIELD() [2/4]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::LAYOUT_FIELD ( FShaderParameter  ,
ShadowFadeFraction   
)
protected

◆ LAYOUT_FIELD() [3/4]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::LAYOUT_FIELD ( FShaderParameter  ,
ShadowSharpen   
)
protected

◆ LAYOUT_FIELD() [4/4]

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::LAYOUT_FIELD ( FShadowProjectionShaderParameters  ,
ProjectionParameters   
)
protected

◆ ModifyCompilationEnvironment()

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
static void TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::ModifyCompilationEnvironment ( const FGlobalShaderPermutationParameters Parameters,
FShaderCompilerEnvironment OutEnvironment 
)
inlinestatic

Add any defines required by the shader

Parameters
OutEnvironment- shader environment to modify

◆ SetParameters()

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
void TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::SetParameters ( FRHIBatchedShaderParameters BatchedParameters,
int32  ViewIndex,
const FSceneView View,
const FProjectedShadowInfo ShadowInfo,
bool  bUseLightFunctionAtlas 
)
inline

Sets the pixel shader's parameters

Parameters
View- current view
ShadowInfo- projected shadow info for a single light

◆ ShouldCompilePermutation()

template<uint32 Quality, bool bUseFadePlane = false, bool bModulatedShadows = false, bool bUseTransmission = false, bool SubPixelShadow = false>
static bool TShadowProjectionPS< Quality, bUseFadePlane, bModulatedShadows, bUseTransmission, SubPixelShadow >::ShouldCompilePermutation ( const FGlobalShaderPermutationParameters Parameters)
inlinestatic

The documentation for this class was generated from the following file: