FNiagaraComputeExecutionContext

Windows
MacOS
Linux

References

Module

Niagara

Header

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

Include

#include "NiagaraComputeExecutionContext.h"

Syntax

struct FNiagaraComputeExecutionContext

Variables

Name Description

Public variable

bool

 

bHasTickedThisFrame_RT

Used to track if we have processed any ticks for this context this frame.

Public variable

bool

 

bResetPending_GT

Do we have a reset pending, controlled by the game thread and passed to instance data.

Public variable

uint32

 

BufferSwapsThisFrame_RT

Public variable

FNiagaraScriptI...

 

CombinedParamStore

Dynamic state updated either from GT via RT commands or from the RT side sim code itself.

Public variable

uint32

 

CountOffset_RT

Public variable

uint32

 

CPUCount

The CPU instance count at the time the GPU count readback was issued. Always bigger or equal to the GPU count.

Public variable

uint32

 

CurrentMaxAllocateInstances_RT

The current maximum instances we should allocate on the RT.

Public variable

uint32

 

CurrentMaxInstances_RT

The current maximum of instances on the RT.

Public variable

uint32

 

CurrentNumInstances_RT

The current number of instances on the RT Before ticks are processed on the RT this will be CurrentData's NumInstances As ticks are processed (or we generated the tick batches) this will change and won't be accurate until dispatches are executed

Public variable

uint32

 

DataBufferIndex_RT

Public variable

FNiagaraDataBuf...

 

DataBuffers_RT

Public variable

TArray< FNiagar...

 

DataInterfaceProxies

Public variable

FNiagaraDataBuf...

 

DataToRender

Most current buffer that can be used for rendering.

Public variable

FString

 

DebugSimName

Public variable

uint32

 

DefaultSimulationStageIndex

Public variable

TArray< FString...

 

DIClassNames

Public variable

FNiagaraCompute...

 

EmitterInstanceReadback

Public variable

TRefCountPtr< F...

 

ExternalCBufferLayout

Persistent layouts used to create the constant buffers for the compute sim shader

Public variable

uint32

 

GPUCountOffset

The offset at which the GPU instance count (see FNiagaraGPUInstanceCountManager()).

Public variable

UNiagaraScript ...

 

GPUScript

Public variable

FNiagaraShaderS...

 

GPUScript_RT

Public variable

FNiagaraGpuSpaw...

 

GpuSpawnInfo_GT

Game thread spawn info will be sent to the render thread inside FNiagaraComputeInstanceData.

Public variable

bool

 

HasInterpolationParameters

Public variable

FNiagaraDataSet...

 

MainDataSet

Public variable

uint32

 

MaxUpdateIterations

Public variable

uint32

 

ParticleCountReadFence

Particle count read fence, used to allow us to snoop the count written by the render thread but also avoid racing on a reset value.

Public variable

uint32

 

ParticleCountWriteFence

Public variable

TArray< FSimula...

 

SimStageInfo

Public variable

TSet< uint32 >

 

SpawnStages

Public variable

FNiagaraDataBuf...

 

TranslucentDataToRender

Optional buffer which can be used to render translucent data with no latency (i.e. this frames data)

Constructors

Destructors

Functions

Name Description

Public function

void

 

AdvanceDataBuffer()

Public function

void

 

DirtyDataInterfaces()

Public function Const

FNiagaraData...

 

FindIterationInterface

(
    const TArray< FNiagaraDataInterface...,
    uint32 SimulationStageIndex
)

Public function

FNiagaraData...

 

GetCurrDataBuffer()

Render thread data.

Public function Const

const TArray...

 

GetDataInterfaces()

Public function Const

FNiagaraData...

 

GetDataToRender

(
    bool bIsLowLatencyTranslucent
)

Public function Const

const TCHAR ...

 

GetDebugSimName()

Public function

FNiagaraData...

 

GetNextDataBuffer()

Public function Const

const FSimul...

 

GetSimStageMetaData

(
    uint32 SimulationStageIndex
)

Public function

void

 

InitParams

(
    UNiagaraScript* InGPUComputeSc...,
    ENiagaraSimTarget InSimTarget,
    const uint32 InDefaultSimulationSta...,
    int32 InMaxUpdateIterations,
    const TSet< uint32 > InSpawnStages
)

Public function Const

bool

 

IsIterationStage

(
    FNiagaraDataInterfaceProxy* DI...,
    uint32 CurrentStage
)

Public function Const

bool

 

IsOutputStage

(
    FNiagaraDataInterfaceProxy* DI...,
    uint32 CurrentStage
)

Public function

bool

 

OptionalContexInit

(
    FNiagaraSystemInstance* Parent...
)

Public function

void

 

PostTick()

Public function

void

 

ReleaseReadbackCounter

Public function

void

 

Reset

Public function

void

 

ResetInternal

Public function

void

 

SetDataToRender

(
    FNiagaraDataBuffer* InDataToRe...
)

Public function

void

 

SetDebugSimName

(
    const TCHAR* InDebugSimName
)

Public function

void

 

SetTranslucentDataToRender

(
    FNiagaraDataBuffer* InTransluc...
)

Public function

bool

 

Tick

(
    FNiagaraSystemInstance* Parent...
)

Constants

Name

Description

TickCounter

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