UNiagaraDataInterfaceStaticMesh

Data Interface allowing sampling of static meshes.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Niagara

Header

/Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceStaticMesh.h

Include

#include "NiagaraDataInterfaceStaticMesh.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Category="Meshes", Meta=(DisplayName="Static Mesh"))
class UNiagaraDataInterfaceStaticMesh : public UNiagaraDataInterface

Remarks

Data Interface allowing sampling of static meshes.

Variables

Name Description

Public variable

uint32

 

ChangeId

Changed within the editor on PostEditChangeProperty.

Public variable UProperty Category, EditAnywhere

UStaticMesh ...

 

DefaultMesh

Mesh used to sample from when not overridden by a source actor from the scene.

Public variable UProperty Category, EditAnywhere

UStaticMesh ...

 

PreviewMesh

Mesh used to sample from when not overridden by a source actor from the scene.

Public variable UProperty Category, EditAnywhere

FNDIStaticMeshS...

 

SectionFilter

Array of filters the can be used to limit sampling to certain sections of the mesh.

Public variable UProperty Category, EditAnywhere

AActor *

 

Source

The source actor from which to sample.

Public variable UProperty Transient

UStaticMeshComp...

 

SourceComponent

The source component from which to sample.

Constructors

Name Description

Public function

UNiagaraDataInterfaceStaticMesh

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

void

 

GetLocalToWorld

(
    FVectorVMContext& Context
)

Public function

void

 

GetLocalToWorldInverseTransposed

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordColor

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordNormal

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordPosition

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordPositionAndVelocity

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordTangents

(
    FVectorVMContext& Context
)

Public function

void

 

GetTriCoordUV

(
    FVectorVMContext& Context
)

Public function

void

 

GetVertexPosition

(
    FVectorVMContext& Context
)

Public function

void

 

GetWorldVelocity

(
    FVectorVMContext& Context
)

Public function

void

 

IsValid

(
    FVectorVMContext& Context
)

Public function

int32

 

RandomSection

(
    FRandomStream& RandStream,
    const FStaticMeshLODResources& Res,
    FNDIStaticMesh_InstanceData* I...
)

Public function

int32

 

RandomSection

(
    FRandomStream& RandStream,
    const FStaticMeshLODResources& Res,
    FNDIStaticMesh_InstanceData* I...
)

Public function

int32

 

RandomSection

(
    FRandomStream& RandStream,
    const FStaticMeshLODResources& Res,
    FNDIStaticMesh_InstanceData* I...
)

Public function

int32

 

RandomSection

(
    FRandomStream& RandStream,
    const FStaticMeshLODResources& Res,
    FNDIStaticMesh_InstanceData* I...
)

Public function

void

 

RandomSection

(
    FVectorVMContext& Context
)

Public function

void

 

RandomSection

(
    FVectorVMContext& Context
)

Public function

void

 

RandomTriCoord

(
    FVectorVMContext& Context
)

Public function

void

 

RandomTriCoord

(
    FVectorVMContext& Context
)

Public function

void

 

RandomTriCoordOnSection

(
    FVectorVMContext& Context
)

Public function

void

 

RandomTriCoordOnSection

(
    FVectorVMContext& Context
)

Public function

void

 

RandomTriCoordVertexColorFiltered

(
    FVectorVMContext& Context
)

Public function

void

 

SetDefaultMeshFromBlueprints

(
    UStaticMesh* MeshToUse
)

Public function

void

 

SetSourceComponentFromBlueprints

(
    UStaticMeshComponent* Componen...
)

Public function Const

bool

 

UsesSectionFilter()

Overridden from UNiagaraDataInterface

Name Description

Public function Virtual Const

bool

 

CanExecuteOnTarget

(
    ENiagaraSimTarget Target
)

Protected function Virtual Const

bool

 

CopyToInternal

(
    UNiagaraDataInterface* Destina...
)

TODO: Vertex color filtering requires a bit more work.

Public function Virtual

void

 

DestroyPerInstanceData

(
    void* PerInstanceData,
    FNiagaraSystemInstance* System...
)

Destroys the per instance data for this interface.

Public function Virtual Const

bool

 

Equals

(
    const UNiagaraDataInterface* O...
)

Determines if this DataInterface is the same as another.

Public function Virtual

TArray< FNia...

 

GetErrors()

Refreshes and returns the errors detected with the corresponding data, if any.

Public function Virtual

bool

 

GetFunctionHLSL

(
    const FNiagaraDataInterfaceGPUParam...,
    const FNiagaraDataInterfaceGenerate...,
    int FunctionInstanceIndex,
    FString& OutHLSL
)

Public function Virtual

void

 

GetFunctions

Gets all the available functions for this data interface.

Public function Virtual

void

 

GetParameterDefinitionHLSL

(
    const FNiagaraDataInterfaceGPUParam...,
    FString& OutHLSL
)

Public function Virtual

void

 

GetVMExternalFunction

(
    const FVMExternalFunctionBindingInf...,
    void* InstanceData,
    FVMExternalFunction& OutFunc
)

Returns the delegate for the passed function signature.

Public function Virtual

bool

 

InitPerInstanceData

(
    void* PerInstanceData,
    FNiagaraSystemInstance* System...
)

Initializes the per instance data for this interface.

Public function Virtual Const

int32

 

PerInstanceDataSize()

Returns the size of the per instance data for this interface.

Public function Virtual

bool

 

PerInstanceTick

(
    void* PerInstanceData,
    FNiagaraSystemInstance* System...,
    float DeltaSeconds
)

Ticks the per instance data for this interface, if it has any.

Public function Virtual

void

 

ProvidePerInstanceDataForRenderThread

(
    void* DataForRenderThread,
    void* PerInstanceData,
    const FNiagaraSystemInstanceID& Sy...
)

Subclasses that wish to work with GPU systems/emitters must implement this.

Overridden from UNiagaraDataInterfaceBase

Name Description

Public function Virtual

void

 

BindParameters

(
    FNiagaraDataInterfaceParametersCS&...,
    const FNiagaraDataInterfaceGPUParam...,
    const FShaderParameterMap& Paramet...
)

Methods that operate on an instance of type FNiagaraDataInterfaceParametersCS*, created by the above CreateComputeParameters() method

Public function Virtual Const

FNiagaraData...

 

CreateComputeParameters()

Constructs the correct CS parameter type for this DI (if any).

Public function Virtual Const

const FTypeL...

 

GetComputeParametersTypeDesc()

Public function Virtual Const

void

 

SetParameters

(
    const FNiagaraDataInterfaceParamete...,
    FRHICommandList& RHICmdList,
    const FNiagaraDataInterfaceSetArgs ...
)

Public function Virtual Const

void

 

UnsetParameters

(
    const FNiagaraDataInterfaceParamete...,
    FRHICommandList& RHICmdList,
    const FNiagaraDataInterfaceSetArgs ...
)

Overridden from UObject

Name Description

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

void

 

PostInitProperties()

Called after the C++ constructor and after the properties have been initialized, including those loaded from config.

Enums

Name

Description

Public enum

ESampleMode

Constants

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