FNiagaraShaderType

A shader meta type for niagara-linked shaders.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

FShaderType

FNiagaraShaderType

References

Module

NiagaraShader

Header

/Engine/Plugins/FX/Niagara/Source/NiagaraShader/Public/NiagaraShaderType.h

Include

#include "NiagaraShaderType.h"

Syntax

class FNiagaraShaderType : public FShaderType

Remarks

A shader meta type for niagara-linked shaders.

Constructors

Name Description

Public function

FNiagaraShaderType

(
    FTypeLayoutDesc& InTypeLayout,
    const TCHAR* InName,
    const TCHAR* InSourceFilename,
    const TCHAR* InFunctionName,
    uint32 InFrequency,
    int32 InTotalPermutationCount,
    ConstructSerializedType InConstruct...,
    ConstructCompiledType InConstructCo...,
    ModifyCompilationEnvironmentType In...,
    ShouldCompilePermutationType InShou...,
    ValidateCompiledResultType InValida...,
    uint32 InTypeSize,
    const FShaderParametersMetadata...
)

Functions

Name Description

Public function Const

void

 

AddReferencedUniformBufferIncludes

(
    FShaderCompilerEnvironment& OutEnv...,
    FString& OutSourceFilePrefix,
    EShaderPlatform Platform
)

Adds include statements for uniform buffers that this shader type references, and builds a prefix for the shader file with the include statements.

Public function

void

 

BeginCompileShader

(
    uint32 ShaderMapId,
    int32 PermutationId,
    const FNiagaraShaderScript* Sc...,
    FSharedShaderCompilerEnvironment&#...,
    EShaderPlatform Platform,
    TArray< TRefCountPtr< class FShader...,
    FShaderTarget Target,
    TArray< FNiagaraDataInterfaceGPUPar...
)

Enqueues a compilation for a new shader of this type.

Public function Const

void

 

CacheUniformBufferIncludes

(
    TMap< const TCHAR*, FCachedUni...,
    EShaderPlatform Platform
)

Public function Const

FShader *...

 

FinishCompileShader

(
    const FSHAHash& NiagaraShaderMapHa...,
    const FShaderCompileJob& CurrentJo...,
    const FString& InDebugDescription
)

Either creates a new instance of this type or returns an equivalent existing shader.

Protected function Const

void

 

SetupCompileEnvironment

(
    EShaderPlatform Platform,
    const FNiagaraShaderScript* Sc...,
    FShaderCompilerEnvironment& Enviro...
)

Sets up the environment used to compile an instance of this shader type.

Public function Const

bool

 

ShouldCache

(
    EShaderPlatform Platform,
    const FNiagaraShaderScript* Sc...
)

Checks if the shader type should be cached for a particular platform and script.

Classes

Constants

Name

Description

ExtraParamInfo