FShaderPipelineType

Binding of a set of shader stages in a single pipeline.

Windows
MacOS
Linux

References

Module

RenderCore

Header

/Engine/Source/Runtime/RenderCore/Public/Shader.h

Include

#include "Shader.h"

Syntax

class FShaderPipelineType

Remarks

Binding of a set of shader stages in a single pipeline.

Variables

Name Description

Protected variable

const FShaderTy...

 

AllStages

Protected variable

bool

 

bShouldOptimizeUnusedOutputs

Protected variable

TLinkedList< FS...

 

GlobalListLink

Protected variable

FHashedName

 

HashedName

Protected variable

FHashedName

 

HashedPrimaryShaderFilename

Protected variable

uint32

 

HashIndex

Protected variable

const TCHAR ...

 

Name

Protected variable

TArray< const F...

 

Stages

Pipeline Stages, ordered from lowest (usually PS) to highest (VS). Guaranteed at least one stage (for VS).

Protected variable

FName

 

TypeName

Constructors

Name Description

Public function

FShaderPipelineType

(
    const TCHAR* InName,
    const FShaderType* InVertexSha...,
    const FShaderType* InHullShade...,
    const FShaderType* InDomainSha...,
    const FShaderType* InGeometryS...,
    const FShaderType* InPixelShad...,
    bool bInShouldOptimizeUnusedOutputs
)

Set bShouldOptimizeUnusedOutputs to true if we want unique FShaders for each shader pipeline Set bShouldOptimizeUnusedOutputs to false if the FShaders will point to the individual shaders in the map

Destructors

Name Description

Public function

~FShaderPipelineType()

Functions

Name Description

Public function Const

FName

 

GetFName()

Public function Const

const FHashe...

 

GetHashedName()

Public function Const

const FHashe...

 

GetHashedPrimaryShaderFilename()

Public function Const

TCHAR const ...

 

GetName()

Public function Static

TMap< FHashe...

 

GetNameToTypeMap()

Public function Const

const FShade...

 

GetShader

(
    EShaderFrequency Frequency
)

Public function Static

const FShade...

 

GetShaderPipelineTypeByName

(
    const FHashedName& Name
)

Public function Static

TArray< cons...

 

GetShaderPipelineTypesByFilename

(
    const TCHAR* Filename
)

Public function Static

const TArray...

 

GetSortedTypes

Public function Const

const FSHAHa...

 

GetSourceHash

(
    EShaderPlatform ShaderPlatform
)

Calculates a Hash based on this shader pipeline type stages' source code and includes

Public function Const

const TArray...

 

GetStages()

Returns an array of valid stages, sorted from PS->GS->DS->HS->VS, no gaps if missing stages.

Public function Static

TLinkedList<...

 

GetTypeList()

Public function Const

bool

 

HasGeometry()

Public function Const

bool

 

HasPixelShader()

Public function Const

bool

 

HasTessellation()

Public function Static

void

 

Initialize()

Initialize static members, this must be called before any shader types are created.

Public function Const

bool

 

IsGlobalTypePipeline()

Check if this pipeline is built of specific types.

Public function Const

bool

 

IsMaterialTypePipeline()

Public function Const

bool

 

IsMeshMaterialTypePipeline()

Public function Const

bool

 

ShouldOptimizeUnusedOutputs

(
    EShaderPlatform Platform
)

Public function Static

void

 

Uninitialize()

Constants

Name

Description

bInitialized

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss