UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ShaderParameterMetadata.cpp File Reference

Classes

class  FUniformBufferMemberAndOffset
 

Macros

#define VALIDATE_UNIFORM_BUFFER_UNIQUE_NAME   (!UE_BUILD_SHIPPING && !UE_BUILD_TEST)
 

Functions

bool SupportShaderPrecisionModifier (EShaderPlatform Platform)
 
TMap< FName, FName > & GetGlobalShaderVariableToStructMap ()
 
TMap< uint32, FShaderParametersMetadata * > & GetLayoutHashStructMap ()
 
FShaderParametersMetadataFindUniformBufferStructByName (const TCHAR *StructName)
 
FShaderParametersMetadataFindUniformBufferStructByFName (FName StructName)
 
FShaderParametersMetadataFindUniformBufferStructByLayoutHash (uint32 Hash)
 
void BuildShaderBindingLayout (TConstArrayView< FShaderParametersMetadata * > UniformBuffers, EShaderBindingLayoutFlags BaseShaderBindingLayoutFlags, FShaderBindingLayoutContainer &OutShaderBindingLayoutContainer)
 
const TCHARGetShaderParameterMacroName (EUniformBufferBaseType ShaderParameterBaseType)
 
EShaderCodeResourceBindingType ParseShaderResourceBindingType (const TCHAR *ShaderType)
 

Variables

const TCHAR *const kShaderParameterMacroNames []
 

Macro Definition Documentation

◆ VALIDATE_UNIFORM_BUFFER_UNIQUE_NAME

#define VALIDATE_UNIFORM_BUFFER_UNIQUE_NAME   (!UE_BUILD_SHIPPING && !UE_BUILD_TEST)

Function Documentation

◆ BuildShaderBindingLayout()

void BuildShaderBindingLayout ( TConstArrayView< FShaderParametersMetadata * >  UniformBuffers,
EShaderBindingLayoutFlags  BaseShaderBindingLayoutFlags,
FShaderBindingLayoutContainer OutShaderBindingLayoutContainer 
)

Build the shader binding layout desc from array of used Uniform buffers which will be bound as static uniform buffers to the rhi

◆ FindUniformBufferStructByFName()

FShaderParametersMetadata * FindUniformBufferStructByFName ( FName  StructName)

◆ FindUniformBufferStructByLayoutHash()

FShaderParametersMetadata * FindUniformBufferStructByLayoutHash ( uint32  Hash)

Finds the FShaderParameterMetadata corresponding to the given uniform buffer layout hash, or null if not found.

◆ FindUniformBufferStructByName()

FShaderParametersMetadata * FindUniformBufferStructByName ( const TCHAR StructName)

Finds the FShaderParametersMetadata corresponding to the given name, or NULL if not found.

◆ GetGlobalShaderVariableToStructMap()

TMap< FName, FName > & GetGlobalShaderVariableToStructMap ( )

◆ GetLayoutHashStructMap()

TMap< uint32, FShaderParametersMetadata * > & GetLayoutHashStructMap ( )

◆ GetShaderParameterMacroName()

const TCHAR * GetShaderParameterMacroName ( EUniformBufferBaseType  ShaderParameterBaseType)

Returns the name of the macro that should be used for a given shader parameter base type.

◆ ParseShaderResourceBindingType()

EShaderCodeResourceBindingType ParseShaderResourceBindingType ( const TCHAR ShaderType)

Parse the shader resource binding from the binding type used in shader code.

◆ SupportShaderPrecisionModifier()

bool SupportShaderPrecisionModifier ( EShaderPlatform  Platform)

Returns whether EShaderPrecisionModifier is supported.

Variable Documentation

◆ kShaderParameterMacroNames

const TCHAR* const kShaderParameterMacroNames[]