UNiagaraDataInterfacePhysicsAsset

Data Interface for the strand base

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

HairStrandsNiagara

Header

/Engine/Plugins/Experimental/HairStrands/Source/HairStrandsNiagara/Public/NiagaraDataInterfacePhysicsAsset.h

Include

#include "NiagaraDataInterfacePhysicsAsset.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Category="Strands", Meta=(DisplayName="Physics Asset"))
class UNiagaraDataInterfacePhysicsAsset : public UNiagaraDataInterface

Remarks

Data Interface for the strand base

Variables

Name Description

Public variable UProperty Category, EditAnywhere

UPhysicsAsset &...

 

DefaultSource

Skeletal Mesh from which the Physics Asset will be found.

Public variable

TWeakObjectPtr<...

 

PhysicsAsset

The source asset from which to sample

Public variable UProperty Category, EditAnywhere

AActor *

 

SourceActor

The source actor from which to sample

Public variable

TWeakObjectPtr<...

 

SourceComponent

The source component from which to sample

Constructors

Name Description

Public function

UNiagaraDataInterfacePhysicsAsset

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

void

 

ExtractSourceComponent

(
    FNiagaraSystemInstance* System...
)

Extract the source component

Public function

void

 

GetClosestDistance

(
    FVectorVMContext& Context
)

Get the closest distance

Public function

void

 

GetClosestElement

(
    FVectorVMContext& Context
)

Get the closest element

Public function

void

 

GetClosestPoint

(
    FVectorVMContext& Context
)

Get the closest point

Public function

void

 

GetElementDistance

(
    FVectorVMContext& Context
)

Get the element distance

Public function

void

 

GetElementPoint

(
    FVectorVMContext& Context
)

Get the element point

Public function

void

 

GetNumBoxes

(
    FVectorVMContext& Context
)

Get the number of boxes

Public function

void

 

GetNumCapsules

(
    FVectorVMContext& Context
)

Get the number of capsules

Public function

void

 

GetNumSpheres

(
    FVectorVMContext& Context
)

Get the number of spheres

Public function

void

 

GetProjectionPoint

(
    FVectorVMContext& Context
)

Get the projection point

Public function

void

 

GetTexturePoint

(
    FVectorVMContext& Context
)

Get the closest texture point

Overridden from UNiagaraDataInterface

Name Description

Public function Virtual Const

bool

 

CanExecuteOnTarget

(
    ENiagaraSimTarget Target
)

Protected function Virtual Const

bool

 

CopyToInternal

(
    UNiagaraDataInterface* Destina...
)

Copy one niagara DI to this

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

void

 

GetCommonHLSL

(
    FString& OutHLSL
)

Allows data interfaces to provide common functionality that will be shared across interfaces on that type.

Public function Virtual

bool

 

GetFunctionHLSL

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

Public function Virtual

void

 

GetFunctions

UNiagaraDataInterface Interface

Public function Virtual

void

 

GetParameterDefinitionHLSL

(
    const FNiagaraDataInterfaceGPUParam...,
    FString& OutHLSL
)

GPU simulation functionality

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

 

PostInitProperties()

UObject Interface

Constants

Name

Description

BoxExtentName

Init Box extent

BoxOriginName

Init Box Origin

CurrentTransformBufferName

Name of the current transform buffer

ElementExtentBufferName

Name of the element extent buffer

ElementOffsetsName

Name of element offsets

InverseTransformBufferName

Name of the inverse transform buffer

PreviousInverseBufferName

Name of the previous inverse buffer

PreviousTransformBufferName

Name of the previous transform buffer

RestInverseBufferName

Name of the rest inverse transform buffer

RestTransformBufferName

Name of the rest transform buffer

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