Navigation
API > API/Plugins > API/Plugins/Niagara
References
| Module | Niagara |
| Header | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraEmitter.h |
| Include | #include "NiagaraEmitter.h" |
Syntax
USTRUCT (BlueprintInternalUseOnly)
struct FVersionedNiagaraEmitterData
Remarks
Struct containing all of the data that can be different between different emitter versions.
Variables
| Type | Name | Description | |
|---|---|---|---|
| ENiagaraEmitterDefaultSummaryState | AddEmitterDefaultViewState | This determines how emitters will be added to a system by default. | |
| EParticleAllocationMode | AllocationMode | The emitter needs to allocate memory for the particles each tick. | |
| TArray< FString > | AttributesToPreserve | An allow list of Particle attributes (e.g. "Particle.Position" or "Particle.Age") that will not be removed from the DataSet even if they aren't read by the VM. | |
| bool | bDeprecated | If this emitter version is no longer meant to be used, this option should be set. | |
| bool | bDeterminism | Toggles whether to globally make the random number generator be deterministic or non-deterministic. | |
| uint32: 1 | bGpuAlwaysRunParticleUpdateScript | GPU scripts were incorrectly running both particle spawn & update, CPU only runs spawn when interpolated spawning is disabled. | |
| uint32: 1 | bInterpolatedSpawning | When enabled, this will spawn using interpolated parameter values and perform a partial update at spawn time. | |
| bool | bLocalSpace | Toggles whether or not the particles within this emitter are relative to the emitter origin or in global space. | |
| uint32: 1 | bRequiresPersistentIDs | Creates a stable Identifier (Particles.ID) which does not vary from frame to frame. | |
| ENiagaraEmitterCalculateBoundMode | CalculateBoundsMode | How should we calculate bounds for the emitter. | |
| FText | DeprecationMessage | Message to display when the script is deprecated. | |
| TArray< FNiagaraDataInterfaceEmitterBinding > | EmitterDependencies | List of emitter dependencies to use when calculating the execution order for emitter particle scripts. | |
| FNiagaraEmitterScriptProperties | EmitterSpawnScriptProps | ||
| FNiagaraEmitterScriptProperties | EmitterUpdateScriptProps | ||
| TArray< FNiagaraEventScriptProperties > | EventHandlerScriptProps | ||
| FBox | FixedBounds | The fixed bounding box value. | |
| TObjectPtr< UNiagaraScriptSourceBase > | GraphSource | 'Source' data/graphs for the scripts used by this emitter. | |
| int32 | MaxGPUParticlesSpawnPerFrame | An override on the max number of GPU particles we expect to spawn in a single frame. | |
| TObjectPtr< UNiagaraScratchPadContainer > | ParentScratchPads | ||
| FNiagaraPlatformSet | Platforms | ||
| int32 | PreAllocationCount | The emitter will allocate at least this many particles on it's first tick. | |
| FString | PythonUpdateScript | Python script to run when updating to this script version. | |
| int32 | RandomSeed | An emitter-based seed for the deterministic random number generator. | |
| FNiagaraParameterStore | RendererBindings | ||
| TArray< FNiagaraExternalUObjectInfo > | RendererBindingsExternalObjects | ||
| TMap< FNiagaraVariableBase, FNiagaraVariableBase > | ResolvedDIBindings | ||
| FNiagaraEmitterScalabilityOverrides | ScalabilityOverrides | ||
| TObjectPtr< UNiagaraScratchPadContainer > | ScratchPads | ||
| FFilePath | ScriptAsset | Asset reference to a python script to run when updating to this script version. | |
| ENiagaraSimTarget | SimTarget | ||
| FNiagaraEmitterScriptProperties | SpawnScriptProps | ||
| ENiagaraPythonUpdateScriptReference | UpdateScriptExecution | Reference to a python script that is executed when the user updates from a previous version to this version. | |
| FNiagaraEmitterScriptProperties | UpdateScriptProps | ||
| FNiagaraAssetVersion | Version | ||
| FText | VersionChangeDescription | What changed in this version compared to the last? Displayed to the user when upgrading to a new script version. | |
| FVersionedNiagaraEmitter | VersionedParent | ||
| FVersionedNiagaraEmitter | VersionedParentAtLastMerge |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| int32 | AddRuntimeAllocation
(
uint64 ReporterHandle, |
This is used by the emitter instances to report runtime allocations to reduce reallocation in future simulation runs. | |
| bool | |||
| bool | BuildParameterStoreRendererBindings
(
FNiagaraParameterStore& ParameterStore |
||
| void | CacheFromCompiledData
(
const FNiagaraDataSetCompiledData* CompiledData, |
||
| void | |||
| void | ClearRuntimeAllocationEstimate
(
uint64 ReportHandle |
||
| void | CopyFrom
(
const FVersionedNiagaraEmitterData& Source |
||
| bool | |||
| void | ForEachEnabledRenderer
(
TAction Func |
||
| void | ForEachPlatformSet
(
TAction Func |
||
| void | ForEachRenderer
(
TAction Func |
||
| void | ForEachScript
(
TAction Func |
||
| void | GatherCompiledParticleAttributes
(
TArray< FNiagaraVariableBase >& OutVariables |
||
| void | GatherStaticVariables
(
TArray< FNiagaraVariable >& OutVars |
||
| TConstArrayView< TSharedPtr< FNiagaraBoundsCalculator > > | |||
| const FNiagaraEmitterScalabilityOverride & | |||
| const TCHAR * | |||
| FBox | |||
| UNiagaraEditorDataBase * | |||
| UNiagaraEditorParametersAdapterBase * | |||
| FNiagaraEventScriptProperties * | GetEventHandlerByIdUnsafe
(
FGuid ScriptUsageId |
Gets a pointer to an event handler by script usage id. | |
| const TArray< FNiagaraEventScriptProperties > & | |||
| UNiagaraScript * | |||
| const UNiagaraScript * | |||
| uint32 | |||
| uint32 | |||
| int32 | Returns the number of max expected particles for memory allocations. | ||
| FVersionedNiagaraEmitter | GetParent () |
||
| FVersionedNiagaraEmitter | |||
| const TArray< UNiagaraRendererProperties * > & | GetRenderers () |
||
| const FNiagaraEmitterScalabilitySettings & | |||
| UNiagaraScript * | GetScript
(
ENiagaraScriptUsage Usage, |
||
| void | GetScripts
(
TArray< UNiagaraScript* >& OutScripts, |
||
| FNiagaraSimStageExecutionDataPtr | |||
| UNiagaraSimulationStageBase * | GetSimulationStageById
(
FGuid ScriptUsageId |
||
| const TArray< UNiagaraSimulationStageBase * > & | |||
| void | |||
| bool | Returns true if this emitter's platform filter allows it on this platform and quality level. | ||
| bool | |||
| bool | IsEventGeneratorShared
(
FName EventGeneratorId |
Gets whether or not the supplied event generator id matches an event generator which is shared between the particle spawn and update scrips. | |
| bool | IsReadyToRun () |
||
| bool | |||
| bool | IsValid () |
||
| bool | |||
| void | PostInitProperties
(
UNiagaraEmitter* Outer |
||
| void | PostLoad
(
UNiagaraEmitter& Emitter, |
||
| FGraphEventArray | PrecacheComputePSOs
(
const UNiagaraEmitter& NiagaraEmitter |
||
| void | RebuildRendererBindings
(
const UNiagaraEmitter& Emitter |
||
| void | RemoveParent () |
||
| void | Reparent
(
const FVersionedNiagaraEmitter& InParent |
||
| bool | |||
| bool | |||
| void | SyncEmitterAlias
(
const FString& InOldName, |
||
| void | UpdateDebugName
(
const UNiagaraEmitter& Emitter, |
||
| bool | UsesCollection
(
const UNiagaraParameterCollection* Collection |
||
| bool | UsesEmitter
(
const UNiagaraEmitter& InEmitter |
||
| bool | UsesScript
(
const UNiagaraScript* Script |