Navigation
API > API/Plugins > API/Plugins/HairStrandsCore > API/Plugins/HairStrandsCore/Niagara
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UNiagaraMergeable
- UNiagaraDataInterfaceBase
- UNiagaraDataInterface
- UNiagaraDataInterfaceRWBase
- UNiagaraDataInterfaceVelocityGrid
- UNiagaraDataInterfacePressureGrid
References
| Module | HairStrandsCore |
| Header | /Engine/Plugins/Runtime/HairStrands/Source/HairStrandsCore/Public/Niagara/NiagaraDataInterfaceVelocityGrid.h |
| Include | #include "Niagara/NiagaraDataInterfaceVelocityGrid.h" |
Syntax
UCLASS&40;EditInlineNew, Category&61;"Grid", Meta&61;&40;DisplayName&61;"Velocity Grid"&41;&41;
class UNiagaraDataInterfaceVelocityGrid : public UNiagaraDataInterfaceRWBase
Remarks
Data Interface for the strand base
Variables
| Type | Name | Description | |
|---|---|---|---|
| FIntVector | GridSize | Grid size along the X axis. | |
| int32 | NumAttributes | Num Attributes |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UNiagaraDataInterfaceVelocityGrid
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | BuildVelocityField
(
FVectorVMExternalFunctionContext& Context |
Build the velocity field | |
| void | ComputeGridSize
(
FVectorVMExternalFunctionContext& Context |
Compute the grid Size (Origin and length) | |
| void | SampleVelocityField
(
FVectorVMExternalFunctionContext& Context |
Sample the grid | |
| void | SetGridDimension
(
FVectorVMExternalFunctionContext& Context |
Set the grid dimension | |
| void | UpdateGridTransform
(
FVectorVMExternalFunctionContext& Context |
Update the grid transform |
Overridden from UNiagaraDataInterface
| Type | Name | Description | |
|---|---|---|---|
| bool | AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
GPU simulation functionality | |
| bool | CanExecuteOnTarget
(
ENiagaraSimTarget Target |
||
| bool | CopyToInternal
(
UNiagaraDataInterface* Destination |
Copy one niagara DI to this | |
| void | DestroyPerInstanceData
(
void* PerInstanceData, |
Destroys the per instance data for this interface. | |
| bool | Equals
(
const UNiagaraDataInterface* Other |
Determines if this DataInterface is the same as another. | |
| void | GetCommonHLSL
(
FString& OutHLSL |
Allows data interfaces to provide common functionality that will be shared across interfaces on that type. | |
| bool | GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | GetFunctions
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
UNiagaraDataInterface Interface | |
| void | GetParameterDefinitionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | GetVMExternalFunction
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
Returns the delegate for the passed function signature. | |
| bool | InitPerInstanceData
(
void* PerInstanceData, |
Initializes the per instance data for this interface. | |
| int32 | Returns the size of the per instance data for this interface. | ||
| bool | PerInstanceTick
(
void* PerInstanceData, |
Ticks the per instance data for this interface, if it has any. | |
| void | ProvidePerInstanceDataForRenderThread
(
void* DataForRenderThread, |
Subclasses that wish to work with GPU systems/emitters must implement this. | |
| void | SetShaderParameters
(
const FNiagaraDataInterfaceSetShaderParametersContext& Context |
Set the shader parameters will only be called if the data interface provided shader parameters. |
Overridden from UNiagaraDataInterfaceBase
| Type | Name | Description | |
|---|---|---|---|
| void | BuildShaderParameters
(
FNiagaraShaderParametersBuilder& ShaderParametersBuilder |
Override this method to provide parameters to the GPU (SRV / UAV / Constants / etc) The most common usage will be to provide a single structure which is nested with other parameters. |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | UObject Interface |