fx.Niagara.NDIExport.GPUMaxReadbackCount
fx.Niagara.NDIExport.GPUMaxReadbackCount
#Overview
name: fx.Niagara.NDIExport.GPUMaxReadbackCount
This variable is created as a Console Variable (cvar).
- type:
Var
- help:
Maximum buffer instance count for the GPU readback when in PerParticleMode, where <= 0 means ignore.
It is referenced in 2
C++ source files.
#Summary
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Plugins/FX/Niagara/Source/Niagara/Private/NiagaraDataInterfaceExport.cpp:36
Scope (from outer to inner):
file
namespace NDIExportLocal
Source code excerpt:
static int GGPUMaxReadbackCount = 1000;
static FAutoConsoleVariableRef CVarGPUMaxReadbackCount(
TEXT("fx.Niagara.NDIExport.GPUMaxReadbackCount"),
GGPUMaxReadbackCount,
TEXT("Maximum buffer instance count for the GPU readback when in PerParticleMode, where <= 0 means ignore."),
ECVF_Default
);
void EnqueueGameThreadCallback(TWeakObjectPtr<UObject> WeakCallbackHandler, TArray<FBasicParticleData> ParticleData, TWeakObjectPtr<UNiagaraSystem> WeakSystem, FVector3f SystemTileOffset)
#Loc: <Workspace>/Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceExport.h:66
Scope (from outer to inner):
file
class class UNiagaraDataInterfaceExport : public UNiagaraDataInterface
Source code excerpt:
int GPUAllocationFixedSize = 64;
/** Uses the emitter property particle count * this to determine the number of elements we reserve for write per frame. The console variable fx.Niagara.NDIExport.GPUMaxReadbackCount is used to cap the maximum. Once the limit is reached we ignore further writes. */
UPROPERTY(EditAnywhere, Category = "Export GPU", meta = (EditCondition = "GPUAllocationMode == ENDIExport_GPUAllocationMode::PerParticle", UIMin="0.0", ClampMin="0.0"))
float GPUAllocationPerParticleSize = 1.0f;
//UObject Interface
NIAGARA_API virtual void PostInitProperties() override;
//UObject Interface End