Navigation
API > API/Plugins > API/Plugins/Niagara
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UNiagaraMergeable
- UNiagaraDataInterfaceBase
- UNiagaraDataInterface
- UNiagaraDataInterfaceRWBase
- UNiagaraDataInterfaceArray
- UNiagaraDataInterfaceArrayBool
- UNiagaraDataInterfaceArrayColor
- UNiagaraDataInterfaceArrayFloat
- UNiagaraDataInterfaceArrayFloat2
- UNiagaraDataInterfaceArrayFloat3
- UNiagaraDataInterfaceArrayFloat4
- UNiagaraDataInterfaceArrayInt32
- UNiagaraDataInterfaceArrayMatrix
- UNiagaraDataInterfaceArrayNiagaraID
- UNiagaraDataInterfaceArrayPosition
- UNiagaraDataInterfaceArrayQuat
- UNiagaraDataInterfaceArrayUInt8
References
| Module | Niagara |
| Header | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceArray.h |
| Include | #include "NiagaraDataInterfaceArray.h" |
Syntax
UCLASS&40;Abstract, EditInlineNew, MinimalAPI&41;
class UNiagaraDataInterfaceArray : public UNiagaraDataInterfaceRWBase
Variables
| Type | Name | Description | |
|---|---|---|---|
| FRWLock | ArrayRWGuard | ReadWrite lock to ensure safe access to the underlying array. | |
| ENiagaraGpuSyncMode | GpuSyncMode | How to do we want to synchronize modifications to the array data. | |
| int32 | MaxElements | When greater than 0 sets the maximum number of elements the array can hold, only relevant when using operations that modify the array size. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UNiagaraDataInterfaceArray
(
const FObjectInitializer& ObjectInitializer |
Overridden from UNiagaraDataInterface
| Type | Name | Description | |
|---|---|---|---|
| bool | AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
Allows the generic class defaults version of this class to specify any dependencies/version/etc that might invalidate the compile. | |
| bool | CanExecuteOnTarget
(
ENiagaraSimTarget Target |
||
| bool | CopyToInternal
(
UNiagaraDataInterface* Destination |
||
| void | DestroyPerInstanceData
(
void* PerInstanceData, |
Destroys the per instance data for this interface. | |
| void | DrawDebugHud
(
FNDIDrawDebugHudContext& DebugHudContext |
Override this function to provide additional context to the debug HUD. | |
| bool | Equals
(
const UNiagaraDataInterface* Other |
Determines if this DataInterface is the same as another. | |
| bool | GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | GetFunctions
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
Gets all the available functions for this data 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. | ||
| 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. | |
| bool | UpgradeFunctionCall
(
FNiagaraFunctionSignature& FunctionSignature |
Allows data interfaces the opportunity to rename / change the function signature and perform an upgrade. |
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 | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally | |
| void | Called after the C++ constructor and after the properties have been initialized, including those loaded from config. | ||
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. |