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

#include <MeshMaterialShaderType.h>

+ Inheritance diagram for FMeshMaterialShaderType:

Classes

struct  CompiledShaderInitializerType
 

Public Member Functions

 IMPLEMENT_SHADER_TYPE_CONSTRUCTOR (FMeshMaterialShaderType, EShaderTypeForDynamicCast::MeshMaterial, TEXT("mesh material shader"))
 
bool ShouldCompilePermutation (EShaderPlatform Platform, const FMaterialShaderParameters &MaterialParameters, const FVertexFactoryType *VertexFactoryType, int32 PermutationId, EShaderPermutationFlags Flags) const
 
- Public Member Functions inherited from FShaderType
RENDERCORE_API FShaderType (EShaderTypeForDynamicCast InShaderTypeForDynamicCast, FTypeLayoutDesc &InTypeLayout, const TCHAR *InName, const TCHAR *InSourceFilename, const TCHAR *InFunctionName, uint32 InFrequency, int32 TotalPermutationCount, ConstructSerializedType InConstructSerializedRef, ConstructCompiledType InConstructCompiledRef, ShouldCompilePermutationType InShouldCompilePermutationRef, ShouldPrecachePermutationType InShouldPrecachePermutationRef, GetRayTracingPayloadTypeType InGetRayTracingPayloadTypeRef, GetShaderBindingLayoutType InGetShaderBindingLayoutTypeRef, uint32 InTypeSize, const FShaderParametersMetadata *InRootParametersMetadata)
 
virtual RENDERCORE_API ~FShaderType ()
 
RENDERCORE_API FShaderConstructForDeserialization () const
 
RENDERCORE_API FShaderConstructCompiled (const FShader::CompiledShaderInitializerType &Initializer) const
 
RENDERCORE_API bool ShouldCompilePermutation (const FShaderPermutationParameters &Parameters) const
 
RENDERCORE_API EShaderPermutationPrecacheRequest ShouldPrecachePermutation (const FShaderPermutationParameters &Parameters) const
 
RENDERCORE_API const FShaderBindingLayoutGetShaderBindingLayout (const FShaderPermutationParameters &Parameters) const
 
RENDERCORE_API ERayTracingPayloadType GetRayTracingPayloadType (const int32 PermutationId) const
 
RENDERCORE_API const FSHAHashGetSourceHash (EShaderPlatform ShaderPlatform) const
 
FGlobalShaderTypeGetGlobalShaderType ()
 
const FGlobalShaderTypeGetGlobalShaderType () const
 
FMaterialShaderTypeGetMaterialShaderType ()
 
const FMaterialShaderTypeGetMaterialShaderType () const
 
FMeshMaterialShaderTypeGetMeshMaterialShaderType ()
 
const FMeshMaterialShaderTypeGetMeshMaterialShaderType () const
 
const FNiagaraShaderTypeGetNiagaraShaderType () const
 
FNiagaraShaderTypeGetNiagaraShaderType ()
 
const FOpenColorIOShaderTypeGetOpenColorIOShaderType () const
 
FOpenColorIOShaderTypeGetOpenColorIOShaderType ()
 
const FComputeKernelShaderTypeGetComputeKernelShaderType () const
 
FComputeKernelShaderTypeGetComputeKernelShaderType ()
 
const FNNERuntimeIREEShaderTypeGetNNERuntimeIREEShaderType () const
 
FNNERuntimeIREEShaderTypeGetNNERuntimeIREEShaderType ()
 
const FGlobalShaderTypeAsGlobalShaderType () const
 
const FMaterialShaderTypeAsMaterialShaderType () const
 
const FMeshMaterialShaderTypeAsMeshMaterialShaderType () const
 
const FNiagaraShaderTypeAsNiagaraShaderType () const
 
const FOpenColorIOShaderTypeAsOpenColorIOShaderType () const
 
EShaderTypeForDynamicCast GetTypeForDynamicCast () const
 
const FTypeLayoutDescGetLayout () const
 
EShaderFrequency GetFrequency () const
 
const TCHARGetName () const
 
const FNameGetFName () const
 
const FHashedNameGetHashedName () const
 
const TCHARGetShaderFilename () const
 
const FHashedNameGetHashedShaderFilename () const
 
const TCHARGetFunctionName () const
 
uint32 GetTypeSize () const
 
int32 GetNumShaders () const
 
int32 GetPermutationCount () const
 
const FShaderParametersMetadataGetRootParametersMetadata () const
 
RENDERCORE_API void DumpDebugInfo ()
 

Static Public Member Functions

static bool ShouldCompileVertexFactoryPermutation (EShaderPlatform Platform, const FMaterialShaderParameters &MaterialParameters, const FVertexFactoryType *VertexFactoryType, const FShaderType *ShaderType, EShaderPermutationFlags Flags)
 
static bool ShouldCompileVertexFactoryPipeline (const FShaderPipelineType *ShaderPipelineType, EShaderPlatform Platform, const FMaterialShaderParameters &MaterialParameters, const FVertexFactoryType *VertexFactoryType, EShaderPermutationFlags Flags)
 
static bool ShouldCompilePipeline (const FShaderPipelineType *ShaderPipelineType, EShaderPlatform Platform, const FMaterialShaderParameters &MaterialParameters, const FVertexFactoryType *VertexFactoryType, EShaderPermutationFlags Flags)
 
- Static Public Member Functions inherited from FShaderType
static RENDERCORE_API TLinkedList< FShaderType * > *& GetTypeList ()
 
static RENDERCORE_API FShaderTypeGetShaderTypeByName (const TCHAR *Name)
 
static RENDERCORE_API TArray< const FShaderType * > GetShaderTypesByFilename (const TCHAR *Filename, bool bSearchAsRegexFilter=false)
 
static RENDERCORE_API TArray< const FShaderType * > GetShaderTypesByFilenameFilter (const TFunction< bool(const TCHAR *)> &InFilenameFilter)
 
static RENDERCORE_API TMap< FHashedName, FShaderType * > & GetNameToTypeMap ()
 
static RENDERCORE_API const TArray< FShaderType * > & GetSortedTypes (EShaderTypeForDynamicCast Type)
 
static RENDERCORE_API void Initialize (const TMap< FString, TArray< const TCHAR * > > &ShaderFileToUniformBufferVariables)
 
static RENDERCORE_API void Uninitialize ()
 

Additional Inherited Members

- Public Types inherited from FShaderType
enum class  EShaderTypeForDynamicCast : uint32 { NumShaderTypes }
 
typedef class FShader *(* ConstructSerializedType) ()
 
typedef FShader *(* ConstructCompiledType) (const FShader::CompiledShaderInitializerType &Initializer)
 
typedef bool(* ShouldCompilePermutationType) (const FShaderPermutationParameters &)
 
typedef EShaderPermutationPrecacheRequest(* ShouldPrecachePermutationType) (const FShaderPermutationParameters &)
 
typedef ERayTracingPayloadType(* GetRayTracingPayloadTypeType) (const int32 PermutationId)
 
typedef const FShaderBindingLayout *(* GetShaderBindingLayoutType) (const FShaderPermutationParameters &)
 

Detailed Description

A shader meta type for material-linked shaders which use a vertex factory.

Member Function Documentation

◆ IMPLEMENT_SHADER_TYPE_CONSTRUCTOR()

FMeshMaterialShaderType::IMPLEMENT_SHADER_TYPE_CONSTRUCTOR ( FMeshMaterialShaderType  ,
EShaderTypeForDynamicCast::MeshMaterial  ,
TEXT("mesh material shader"  
)

◆ ShouldCompilePermutation()

bool FMeshMaterialShaderType::ShouldCompilePermutation ( EShaderPlatform  Platform,
const FMaterialShaderParameters MaterialParameters,
const FVertexFactoryType VertexFactoryType,
int32  PermutationId,
EShaderPermutationFlags  Flags 
) const

Checks if the shader type should be cached for a particular platform, material, and vertex factory type.

Parameters
Platform- The platform to check.
Material- The material to check.
VertexFactoryType- The vertex factory type to check.
Returns
True if this shader type should be cached.

◆ ShouldCompilePipeline()

bool FMeshMaterialShaderType::ShouldCompilePipeline ( const FShaderPipelineType ShaderPipelineType,
EShaderPlatform  Platform,
const FMaterialShaderParameters MaterialParameters,
const FVertexFactoryType VertexFactoryType,
EShaderPermutationFlags  Flags 
)
static

◆ ShouldCompileVertexFactoryPermutation()

bool FMeshMaterialShaderType::ShouldCompileVertexFactoryPermutation ( EShaderPlatform  Platform,
const FMaterialShaderParameters MaterialParameters,
const FVertexFactoryType VertexFactoryType,
const FShaderType ShaderType,
EShaderPermutationFlags  Flags 
)
static

◆ ShouldCompileVertexFactoryPipeline()

bool FMeshMaterialShaderType::ShouldCompileVertexFactoryPipeline ( const FShaderPipelineType ShaderPipelineType,
EShaderPlatform  Platform,
const FMaterialShaderParameters MaterialParameters,
const FVertexFactoryType VertexFactoryType,
EShaderPermutationFlags  Flags 
)
static

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