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

#include <GlobalShader.h>

Public Member Functions

RENDERCORE_API FGlobalShaderMap (EShaderPlatform InPlatform)
 
RENDERCORE_API ~FGlobalShaderMap ()
 
RENDERCORE_API TShaderRef< FShaderGetShader (FShaderType *ShaderType, int32 PermutationId=0) const
 
RENDERCORE_API FShaderPipelineRef GetShaderPipeline (const FShaderPipelineType *PipelineType) const
 
template<typename ShaderType >
TShaderRef< ShaderType > GetShader () const
 
template<typename ShaderType >
TShaderRef< ShaderType > GetShader (int32 PermutationId) const
 
template<typename ShaderType >
TShaderRef< ShaderType > GetShader (const typename ShaderType::FPermutationDomain &PermutationVector) const
 
bool HasShader (FShaderType *Type, int32 PermutationId) const
 
bool HasShaderPipeline (const FShaderPipelineType *ShaderPipelineType) const
 
RENDERCORE_API bool IsEmpty () const
 
RENDERCORE_API bool IsComplete (const ITargetPlatform *TargetPlatform) const
 
RENDERCORE_API void Empty ()
 
RENDERCORE_API void ReleaseAllSections ()
 
RENDERCORE_API FShaderFindOrAddShader (const FShaderType *ShaderType, int32 PermutationId, FShader *Shader)
 
RENDERCORE_API FShaderPipelineFindOrAddShaderPipeline (const FShaderPipelineType *ShaderPipelineType, FShaderPipeline *ShaderPipeline)
 
RENDERCORE_API void RemoveShaderTypePermutaion (const FShaderType *Type, int32 PermutationId)
 
RENDERCORE_API void RemoveShaderPipelineType (const FShaderPipelineType *ShaderPipelineType)
 
RENDERCORE_API void AddSection (FGlobalShaderMapSection *InSection)
 
RENDERCORE_API FGlobalShaderMapSectionFindSection (const FHashedName &HashedShaderFilename)
 
RENDERCORE_API FGlobalShaderMapSectionFindOrAddSection (const FShaderType *ShaderType)
 
RENDERCORE_API void LoadFromGlobalArchive (FArchive &Ar)
 
RENDERCORE_API void SaveToGlobalArchive (FArchive &Ar)
 
RENDERCORE_API void BeginCreateAllShaders ()
 
const FGlobalShaderMapSectionGetFirstSection ()
 

Constructor & Destructor Documentation

◆ FGlobalShaderMap()

FGlobalShaderMap::FGlobalShaderMap ( EShaderPlatform  InPlatform)
explicit

◆ ~FGlobalShaderMap()

FGlobalShaderMap::~FGlobalShaderMap ( )

Member Function Documentation

◆ AddSection()

void FGlobalShaderMap::AddSection ( FGlobalShaderMapSection InSection)

◆ BeginCreateAllShaders()

void FGlobalShaderMap::BeginCreateAllShaders ( )

◆ Empty()

void FGlobalShaderMap::Empty ( )

◆ FindOrAddSection()

FGlobalShaderMapSection * FGlobalShaderMap::FindOrAddSection ( const FShaderType ShaderType)

◆ FindOrAddShader()

FShader * FGlobalShaderMap::FindOrAddShader ( const FShaderType ShaderType,
int32  PermutationId,
FShader Shader 
)

◆ FindOrAddShaderPipeline()

FShaderPipeline * FGlobalShaderMap::FindOrAddShaderPipeline ( const FShaderPipelineType ShaderPipelineType,
FShaderPipeline ShaderPipeline 
)

◆ FindSection()

FGlobalShaderMapSection * FGlobalShaderMap::FindSection ( const FHashedName HashedShaderFilename)

◆ GetFirstSection()

const FGlobalShaderMapSection * FGlobalShaderMap::GetFirstSection ( )
inline

◆ GetShader() [1/4]

template<typename ShaderType >
TShaderRef< ShaderType > FGlobalShaderMap::GetShader ( ) const
inline

◆ GetShader() [2/4]

template<typename ShaderType >
TShaderRef< ShaderType > FGlobalShaderMap::GetShader ( const typename ShaderType::FPermutationDomain &  PermutationVector) const
inline

Finds the shader with the given type. Asserts on failure.

◆ GetShader() [3/4]

TShaderRef< FShader > FGlobalShaderMap::GetShader ( FShaderType ShaderType,
int32  PermutationId = 0 
) const

◆ GetShader() [4/4]

template<typename ShaderType >
TShaderRef< ShaderType > FGlobalShaderMap::GetShader ( int32  PermutationId) const
inline

◆ GetShaderPipeline()

FShaderPipelineRef FGlobalShaderMap::GetShaderPipeline ( const FShaderPipelineType PipelineType) const

◆ HasShader()

bool FGlobalShaderMap::HasShader ( FShaderType Type,
int32  PermutationId 
) const
inline

◆ HasShaderPipeline()

bool FGlobalShaderMap::HasShaderPipeline ( const FShaderPipelineType ShaderPipelineType) const
inline

◆ IsComplete()

bool FGlobalShaderMap::IsComplete ( const ITargetPlatform TargetPlatform) const

Whether the shadermap has all the shader types it needs (i.e. ones that returned ShouldCompilePermutation)

◆ IsEmpty()

bool FGlobalShaderMap::IsEmpty ( ) const

◆ LoadFromGlobalArchive()

void FGlobalShaderMap::LoadFromGlobalArchive ( FArchive Ar)

◆ ReleaseAllSections()

void FGlobalShaderMap::ReleaseAllSections ( )

◆ RemoveShaderPipelineType()

void FGlobalShaderMap::RemoveShaderPipelineType ( const FShaderPipelineType ShaderPipelineType)

◆ RemoveShaderTypePermutaion()

void FGlobalShaderMap::RemoveShaderTypePermutaion ( const FShaderType Type,
int32  PermutationId 
)

◆ SaveToGlobalArchive()

void FGlobalShaderMap::SaveToGlobalArchive ( FArchive Ar)

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