UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMeshMaterialShaderMap Class Reference

#include <MaterialShared.h>

+ Inheritance diagram for FMeshMaterialShaderMap:

Public Member Functions

 FMeshMaterialShaderMap (EShaderPlatform InPlatform, const FHashedName &InVertexFactoryTypeName)
 
const FHashedNameGetVertexFactoryTypeName () const
 
- Public Member Functions inherited from FShaderMapContent
RENDERCORE_API FShaderMapContent (EShaderPlatform InPlatform)
 
RENDERCORE_API ~FShaderMapContent ()
 
RENDERCORE_API EShaderPlatform GetShaderPlatform () const
 
RENDERCORE_API void Validate (const FShaderMapBase &InShaderMap) const
 
template<typename ShaderType >
ShaderType * GetShader (int32 PermutationId=0) const
 
template<typename ShaderType >
ShaderType * GetShader (const typename ShaderType::FPermutationDomain &PermutationVector) const
 
FShaderGetShader (const FShaderType *ShaderType, int32 PermutationId=0) const
 
RENDERCORE_API FShaderGetShader (const FHashedName &TypeName, int32 PermutationId=0) const
 
bool HasShader (const FHashedName &TypeName, int32 PermutationId) const
 
bool HasShader (const FShaderType *Type, int32 PermutationId) const
 
TArrayView< const TMemoryImagePtr< FShader > > GetShaders () const
 
TArrayView< const TMemoryImagePtr< FShaderPipeline > > GetShaderPipelines () const
 
RENDERCORE_API void AddShader (const FHashedName &TypeName, int32 PermutationId, FShader *Shader)
 
RENDERCORE_API FShaderFindOrAddShader (const FHashedName &TypeName, int32 PermutationId, FShader *Shader)
 
RENDERCORE_API void AddShaderPipeline (FShaderPipeline *Pipeline)
 
RENDERCORE_API FShaderPipelineFindOrAddShaderPipeline (FShaderPipeline *Pipeline)
 
RENDERCORE_API void RemoveShaderTypePermutaion (const FHashedName &TypeName, int32 PermutationId)
 
void RemoveShaderTypePermutaion (const FShaderType *Type, int32 PermutationId)
 
RENDERCORE_API void RemoveShaderPipelineType (const FShaderPipelineType *ShaderPipelineType)
 
RENDERCORE_API void DumpShaderList (const FShaderMapBase &InShaderMap, FShaderListReport &Out) const
 
RENDERCORE_API void GetShaderList (const FShaderMapBase &InShaderMap, const FSHAHash &InMaterialShaderMapHash, TMap< FShaderId, TShaderRef< FShader > > &OutShaders) const
 
RENDERCORE_API void GetShaderList (const FShaderMapBase &InShaderMap, TMap< FHashedName, TShaderRef< FShader > > &OutShaders) const
 
RENDERCORE_API void GetShaderPipelineList (const FShaderMapBase &InShaderMap, TArray< FShaderPipelineRef > &OutShaderPipelines, FShaderPipeline::EFilter Filter) const
 
bool IsEmpty () const
 
RENDERCORE_API uint32 GetNumShaders () const
 
uint32 GetNumShaderPipelines () const
 
RENDERCORE_API void Empty ()
 
FShaderPipelineGetShaderPipeline (const FHashedName &PipelineTypeName) const
 
FShaderPipelineGetShaderPipeline (const FShaderPipelineType *PipelineType) const
 
bool HasShaderPipeline (const FHashedName &PipelineTypeName) const
 
bool HasShaderPipeline (const FShaderPipelineType *PipelineType) const
 
RENDERCORE_API uint32 GetMaxNumInstructionsForShader (const FShaderMapBase &InShaderMap, FShaderType *ShaderType) const
 
RENDERCORE_API void Finalize (const FShaderMapResourceCode *Code)
 
RENDERCORE_API void UpdateHash (FSHA1 &Hasher) const
 

Additional Inherited Members

- Protected Types inherited from FShaderMapContent
using FMemoryImageHashTable = THashTable< FMemoryImageAllocator >
 
- Protected Member Functions inherited from FShaderMapContent
RENDERCORE_API void EmptyShaderPipelines ()
 
 LAYOUT_FIELD (FMemoryImageHashTable, ShaderHash)
 
 LAYOUT_FIELD (TMemoryImageArray< FHashedName >, ShaderTypes)
 
 LAYOUT_FIELD (TMemoryImageArray< int32 >, ShaderPermutations)
 
 LAYOUT_FIELD (TMemoryImageArray< TMemoryImagePtr< FShader > >, Shaders)
 
 LAYOUT_FIELD (TMemoryImageArray< TMemoryImagePtr< FShaderPipeline > >, ShaderPipelines)
 
 LAYOUT_FIELD (FMemoryImageName, ShaderPlatformName)
 

Detailed Description

The shaders which the render the material on a mesh generated by a particular vertex factory type.

Constructor & Destructor Documentation

◆ FMeshMaterialShaderMap()

FMeshMaterialShaderMap::FMeshMaterialShaderMap ( EShaderPlatform  InPlatform,
const FHashedName InVertexFactoryTypeName 
)
inline

Member Function Documentation

◆ GetVertexFactoryTypeName()

const FHashedName & FMeshMaterialShaderMap::GetVertexFactoryTypeName ( ) const
inline

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