Navigation
API > API/Plugins > API/Plugins/Niagara
Represents all the information needed to dispatch a single tick of a FNiagaraSystemInstance. This object will be created on the game thread and passed to the renderthread.
It contains the PerInstance data buffer for every DataInterface referenced by the system as well as the Data required to dispatch updates for each Emitter in the system.
DataInterface data is packed tightly. It includes a TMap that associates the data interface with the offset into the packed buffer. At that offset is the Per-Instance data for this System.
InstanceData_ParamData_Packed packs FNiagaraComputeInstanceData and ParamData into one buffer. There is padding after the array of FNiagaraComputeInstanceData so we can upload ParamData directly into a UniformBuffer (it is 16 byte aligned).
| Name | FNiagaraGPUSystemTick |
| Type | class |
| Header File | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraGPUSystemTick.h |
| Include Path | #include "NiagaraGPUSystemTick.h" |
Syntax
class FNiagaraGPUSystemTick
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bHasInterpolatedParameters | bool | NiagaraGPUSystemTick.h | ||
| bIsFinalTick | bool | NiagaraGPUSystemTick.h | ||
| DIInstanceData | FNiagaraComputeDataInterfaceInstanceData * | NiagaraGPUSystemTick.h | ||
| ExternalUnformBuffers_RT | TArray< FUniformBufferRHIRef > | Transient data used by the RT. | NiagaraGPUSystemTick.h | |
| GlobalParamData | uint8 * | NiagaraGPUSystemTick.h | ||
| InstanceCount | uint32 | NiagaraGPUSystemTick.h | ||
| InstanceData_ParamData_Packed | uint8 * | NiagaraGPUSystemTick.h | ||
| InstanceDataDebuggingOnly | TConstArrayView< FNiagaraComputeInstanceData > | Debugging only. | NiagaraGPUSystemTick.h | |
| OwnerParamData | uint8 * | NiagaraGPUSystemTick.h | ||
| SystemGpuComputeProxy | FNiagaraSystemGpuComputeProxy * | NiagaraGPUSystemTick.h | ||
| SystemInstanceID | FNiagaraSystemInstanceID | Data assigned by GT | NiagaraGPUSystemTick.h | |
| SystemParamData | uint8 * | NiagaraGPUSystemTick.h | ||
| TotalDispatches | uint32 | NiagaraGPUSystemTick.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BuildUniformBuffers() |
NiagaraGPUSystemTick.h | ||
void Destroy() |
NiagaraGPUSystemTick.h | ||
void GetEmitterParameters
(
const FNiagaraComputeInstanceData& InstanceData, |
NiagaraGPUSystemTick.h | ||
FRHIUniformBuffer * GetExternalUniformBuffer
(
const FNiagaraComputeInstanceData& InstanceData, |
NiagaraGPUSystemTick.h | ||
void GetGlobalParameters
(
const FNiagaraComputeInstanceData& InstanceData, |
NiagaraGPUSystemTick.h | ||
TArrayView< FNiagaraComputeInstanceData > GetInstances() |
NiagaraGPUSystemTick.h | ||
void GetOwnerParameters
(
const FNiagaraComputeInstanceData& InstanceData, |
NiagaraGPUSystemTick.h | ||
void GetSystemParameters
(
const FNiagaraComputeInstanceData& InstanceData, |
NiagaraGPUSystemTick.h | ||
void Init
(
FNiagaraSystemInstance* InSystemInstance |
NiagaraGPUSystemTick.h |