FVertexFactoryType

An object used to represent the type of a vertex factory.

Windows
MacOS
Linux

References

Module

RenderCore

Header

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

Include

#include "VertexFactory.h"

Syntax

class FVertexFactoryType

Remarks

An object used to represent the type of a vertex factory.

Constructors

Name Description

Public function

FVertexFactoryType

(
    const TCHAR* InName,
    const TCHAR* InShaderFilename,
    bool bInUsedWithMaterials,
    bool bInSupportsStaticLighting,
    bool bInSupportsDynamicLighting,
    bool bInSupportsPrecisePrevWorldPos,
    bool bInSupportsPositionOnly,
    bool bInSupportsCachingMeshDrawComm...,
    bool bInSupportsPrimitiveIdStream,
    ConstructParametersType InConstruct...,
    GetParameterTypeLayoutType InGetPar...,
    GetParameterTypeElementShaderBindin...,
    ShouldCacheType InShouldCache,
    ModifyCompilationEnvironmentType In...,
    ValidateCompiledResultType InValida...,
    SupportsTessellationShadersType InS...
)

Minimal initialization constructor.

Destructors

Name Description

Public function Virtual

~FVertexFactoryType()

Functions

Name Description

Public function

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 Const

FVertexFacto...

 

CreateShaderParameters

(
    EShaderFrequency ShaderFrequency,
    const FShaderParameterMap& Paramet...
)

Public function

void

 

FlushShaderFileCache

(
    const TMap< FString, TArray< const ...
)

Public function Const

FName

 

GetFName()

Public function Const

const FHashe...

 

GetHashedName()

Public function Const

const TCHAR ...

 

GetName()

Accessors.

Public function Static

int32

 

GetNumVertexFactoryTypes()

Public function Const

const TMap< ...

 

GetReferencedUniformBufferStructsCache()

Public function Const

const TCHAR ...

 

GetShaderFilename()

Public function Const

void

 

GetShaderParameterElementShaderBindings

(
    EShaderFrequency ShaderFrequency,
    const FVertexFactoryShaderParameter...,
    const FSceneInterface* Scene,
    const FSceneView* View,
    const FMeshMaterialShader* Sha...,
    const EVertexInputStreamType InputS...,
    ERHIFeatureLevel::Type FeatureLevel,
    const FVertexFactory* VertexFa...,
    const FMeshBatchElement& BatchElem...,
    FMeshDrawSingleShaderBindings& Sha...,
    FVertexInputStreamArray& VertexStr...
)

Public function Const

const FTypeL...

 

GetShaderParameterLayout

(
    EShaderFrequency ShaderFrequency
)

Public function Static

const TArray...

 

GetSortedMaterialTypes()

Public function Const

const FSHAHa...

 

GetSourceHash

(
    EShaderPlatform ShaderPlatform
)

Calculates a Hash based on this vertex factory type's source code and includes

Public function Static

TLinkedList<...

 

GetTypeList()

Public function Static

FVertexFacto...

 

GetVFByName

(
    const FHashedName& VFName
)

Finds a FVertexFactoryType by name.

Public function Static

void

 

Initialize

(
    const TMap< FString, TArray< const ...
)

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

Public function Const

bool

 

IsUsedWithMaterials()

Public function

void

 

ModifyCompilationEnvironment

(
    const FVertexFactoryShaderPermutati...,
    FShaderCompilerEnvironment& OutEnv...
)

Calls the function ptr for the shader type on the given environment

Public function Const

bool

 

ShouldCache

(
    const FVertexFactoryShaderPermutati...
)

Should we cache the material's shadertype on this platform with this vertex factory?

Public function Const

bool

 

SupportsCachingMeshDrawCommands()

Public function Const

bool

 

SupportsDynamicLighting()

Public function Const

bool

 

SupportsPositionOnly()

Public function Const

bool

 

SupportsPrecisePrevWorldPos()

Public function Const

bool

 

SupportsPrimitiveIdStream()

Public function Const

bool

 

SupportsStaticLighting()

Public function Const

bool

 

SupportsTessellationShaders()

Does this vertex factory support tessellation shaders?

Public function Static

void

 

Uninitialize()

Uninitializes FVertexFactoryType cached data.

Public function

void

 

ValidateCompiledResult

(
    EShaderPlatform Platform,
    const FShaderParameterMap& Paramet...,
    TArray< FString >& OutErrors
)

Typedefs

Constants

Name

Description

bInitializedSerializationHistory

Tracks whether serialization history for all shader types has been initialized.

NumVertexFactories

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