Navigation
API > API/Plugins > API/Plugins/Niagara
Struct containing all of the data that can be different between different emitter versions.
| Name | FVersionedNiagaraEmitterData |
| Type | struct |
| Header File | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraEmitter.h |
| Include Path | #include "NiagaraEmitter.h" |
Syntax
USTRUCT (BlueprintInternalUseOnly)
struct FVersionedNiagaraEmitterData
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FVersionedNiagaraEmitterData() |
NiagaraEmitter.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AddEmitterDefaultViewState | ENiagaraEmitterDefaultSummaryState | This determines how emitters will be added to a system by default. | NiagaraEmitter.h |
|
| AllocationMode | EParticleAllocationMode | The emitter needs to allocate memory for the particles each tick. | NiagaraEmitter.h |
|
| AttributesToPreserve | TArray< FString > | 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. | NiagaraEmitter.h |
|
| bDeprecated | bool | If this emitter version is no longer meant to be used, this option should be set. | NiagaraEmitter.h | |
| bDeterminism | bool | Toggles whether to globally make the random number generator be deterministic or non-deterministic. | NiagaraEmitter.h |
|
| bGpuAlwaysRunParticleUpdateScript | uint32 | GPU scripts were incorrectly running both particle spawn & update, CPU only runs spawn when interpolated spawning is disabled. | NiagaraEmitter.h | |
| bLocalSpace | bool | Toggles whether or not the particles within this emitter are relative to the emitter origin or in global space. | NiagaraEmitter.h |
|
| bRequiresPersistentIDs | uint32 | Creates a stable Identifier (Particles.ID) which does not vary from frame to frame. | NiagaraEmitter.h |
|
| CalculateBoundsMode | ENiagaraEmitterCalculateBoundMode | How should we calculate bounds for the emitter. | NiagaraEmitter.h |
|
| DeprecationMessage | FText | Message to display when the script is deprecated. | NiagaraEmitter.h | |
| EmitterDependencies | TArray< FNiagaraDataInterfaceEmitterBinding > | List of emitter dependencies to use when calculating the execution order for emitter particle scripts. | NiagaraEmitter.h |
|
| EmitterSpawnScriptProps | FNiagaraEmitterScriptProperties | NiagaraEmitter.h | ||
| EmitterUpdateScriptProps | FNiagaraEmitterScriptProperties | NiagaraEmitter.h | ||
| EventHandlerScriptProps | TArray< FNiagaraEventScriptProperties > | NiagaraEmitter.h |
|
|
| FixedBounds | FBox | The fixed bounding box value. | NiagaraEmitter.h |
|
| GraphSource | TObjectPtr< UNiagaraScriptSourceBase > | 'Source' data/graphs for the scripts used by this emitter. | NiagaraEmitter.h | |
| InterpolatedSpawnMode | ENiagaraInterpolatedSpawnMode | This defines if newly spawned particles run only the spawn script on the first frame or both spawn and update with optional parameter interpolation. | NiagaraEmitter.h |
|
| MaxGPUParticlesSpawnPerFrame | int32 | An override on the max number of GPU particles we expect to spawn in a single frame. | NiagaraEmitter.h |
|
| ParentScratchPads | TObjectPtr< UNiagaraScratchPadContainer > | NiagaraEmitter.h | ||
| Platforms | FNiagaraPlatformSet | NiagaraEmitter.h |
|
|
| PreAllocationCount | int32 | The emitter will allocate at least this many particles on it's first tick. | NiagaraEmitter.h |
|
| PythonUpdateScript | FString | Python script to run when updating to this script version. | NiagaraEmitter.h | |
| RandomSeed | int32 | An emitter-based seed for the deterministic random number generator. | NiagaraEmitter.h |
|
| RendererBindings | FNiagaraParameterStore | NiagaraEmitter.h | ||
| RendererBindingsExternalObjects | TArray< FNiagaraExternalUObjectInfo > | NiagaraEmitter.h | ||
| ResolvedDIBindings | TMap< FNiagaraVariableBase, FNiagaraVariableBase > | NiagaraEmitter.h | ||
| ScalabilityOverrides | FNiagaraEmitterScalabilityOverrides | NiagaraEmitter.h |
|
|
| ScratchPads | TObjectPtr< UNiagaraScratchPadContainer > | NiagaraEmitter.h | ||
| ScriptAsset | FFilePath | Asset reference to a python script to run when updating to this script version. | NiagaraEmitter.h | |
| SimTarget | ENiagaraSimTarget | NiagaraEmitter.h |
|
|
| SpawnScriptProps | FNiagaraEmitterScriptProperties | NiagaraEmitter.h | ||
| UpdateScriptExecution | ENiagaraPythonUpdateScriptReference | Reference to a python script that is executed when the user updates from a previous version to this version. | NiagaraEmitter.h | |
| UpdateScriptProps | FNiagaraEmitterScriptProperties | NiagaraEmitter.h | ||
| Version | FNiagaraAssetVersion | NiagaraEmitter.h | ||
| VersionChangeDescription | FText | What changed in this version compared to the last? Displayed to the user when upgrading to a new script version. | NiagaraEmitter.h | |
| VersionedParent | FVersionedNiagaraEmitter | NiagaraEmitter.h | ||
| VersionedParentAtLastMerge | FVersionedNiagaraEmitter | NiagaraEmitter.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsAllowedToExecute | uint32 | Can this emitter run with the current scalability settings, etc | NiagaraEmitter.h | |
| bNeedsPartialDepthTexture | uint32 | Indicates we use the partial depth textures. | NiagaraEmitter.h | |
| BoundsCalculators | TArray< TSharedPtr< FNiagaraBoundsCalculator >, TInlineAllocator< 1 > > | Optional list of bounds calculators. | NiagaraEmitter.h | |
| bRequiresViewUniformBuffer | uint32 | Indicates that the GPU script requires the view uniform buffer. | NiagaraEmitter.h | |
| CachedTraversalData | TSharedPtr< FNiagaraGraphCachedDataBase, ESPMode::ThreadSafe > | NiagaraEmitter.h | ||
| CurrentScalabilitySettings | FNiagaraEmitterScalabilitySettings | NiagaraEmitter.h |
|
|
| DebugSimName | FString | NiagaraEmitter.h | ||
| EditorData | TObjectPtr< UNiagaraEditorDataBase > | Data used by the editor to maintain UI state etc.. | NiagaraEmitter.h | |
| EditorParameters | TObjectPtr< UNiagaraEditorParametersAdapterBase > | Wrapper for editor only parameters. | NiagaraEmitter.h | |
| GPUComputeScript | TObjectPtr< UNiagaraScript > | NiagaraEmitter.h | ||
| MaxAllocationCount | uint32 | Maximum instance allocations size for the emitter, can be larger than MaxInstanceCount | NiagaraEmitter.h | |
| MaxInstanceCount | uint32 | Maximum number of instances we can create for this emitter. | NiagaraEmitter.h | |
| PSOPrecacheResult | EPSOPrecacheResult | NiagaraEmitter.h | ||
| RendererProperties | TArray< TObjectPtr< UNiagaraRendererProperties > > | NiagaraEmitter.h | ||
| RuntimeEstimation | FMemoryRuntimeEstimation | NiagaraEmitter.h | ||
| SharedEventGeneratorIds | TArray< FName > | NiagaraEmitter.h | ||
| SimStageExecutionData | FNiagaraSimStageExecutionDataPtr | NiagaraEmitter.h | ||
| SimStageExecutionLoopEditorData | TArray< FNiagaraSimStageExecutionLoopEditorData > | NiagaraEmitter.h |
|
|
| SimStageExecutionLoops | TArray< FNiagaraSimStageExecutionLoopData > | NiagaraEmitter.h | ||
| SimulationStages | TArray< TObjectPtr< UNiagaraSimulationStageBase > > | NiagaraEmitter.h |
|
|
| UNiagaraEmitter | friend | NiagaraEmitter.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
int32 AddRuntimeAllocation
(
uint64 ReporterHandle, |
This is used by the emitter instances to report runtime allocations to reduce reallocation in future simulation runs. | NiagaraEmitter.h | |
bool AreAllScriptAndSourcesSynchronized() |
NiagaraEmitter.h | ||
bool BuildParameterStoreRendererBindings
(
FNiagaraParameterStore& ParameterStore |
NiagaraEmitter.h | ||
void CacheFromCompiledData
(
const FNiagaraDataSetCompiledData* CompiledData, |
NiagaraEmitter.h | ||
void CacheFromShaderCompiled() |
NiagaraEmitter.h | ||
void ClearRuntimeAllocationEstimate
(
uint64 ReportHandle |
NiagaraEmitter.h | ||
void CopyFrom
(
const FVersionedNiagaraEmitterData& Source |
NiagaraEmitter.h | ||
bool DidPSOPrecacheFail() |
NiagaraEmitter.h | ||
void ForEachEnabledRenderer
(
TAction Func |
NiagaraEmitter.h | ||
void ForEachEnabledRendererWithIndex
(
TAction Func |
NiagaraEmitter.h | ||
void ForEachPlatformSet
(
TAction Func |
NiagaraEmitter.h | ||
void ForEachRenderer
(
TAction Func |
NiagaraEmitter.h | ||
void ForEachScript
(
TAction Func |
NiagaraEmitter.h | ||
void GatherCompiledParticleAttributes
(
TArray< FNiagaraVariableBase >& OutVariables |
NiagaraEmitter.h | ||
void GatherStaticVariables
(
TArray< FNiagaraVariable >& OutVars |
NiagaraEmitter.h | ||
TConstArrayView< TSharedPtr< FNiagaraBoundsCalculator > > GetBoundsCalculators() |
NiagaraEmitter.h | ||
const FNiagaraEmitterScalabilityOverride & GetCurrentOverrideSettings() |
NiagaraEmitter.h | ||
const TCHAR * GetDebugSimName() |
NiagaraEmitter.h | ||
UNiagaraEditorDataBase * GetEditorData() |
NiagaraEmitter.h | ||
UNiagaraEditorParametersAdapterBase * GetEditorParameters() |
NiagaraEmitter.h | ||
FNiagaraEventScriptProperties * GetEventHandlerByIdUnsafe
(
FGuid ScriptUsageId |
Gets a pointer to an event handler by script usage id. | NiagaraEmitter.h | |
const TArray< FNiagaraEventScriptProperties > & GetEventHandlers() |
NiagaraEmitter.h | ||
| NiagaraEmitter.h | |||
const UNiagaraScript * GetGPUComputeScript () |
NiagaraEmitter.h | ||
uint32 GetMaxAllocationCount() |
NiagaraEmitter.h | ||
uint32 GetMaxInstanceCount() |
NiagaraEmitter.h | ||
int32 GetMaxParticleCountEstimate() |
Returns the number of max expected particles for memory allocations. | NiagaraEmitter.h | |
FVersionedNiagaraEmitter GetParent() |
NiagaraEmitter.h | ||
FVersionedNiagaraEmitter GetParentAtLastMerge() |
NiagaraEmitter.h | ||
const TArray< UNiagaraRendererProperties * > & GetRenderers() |
NiagaraEmitter.h | ||
const FNiagaraEmitterScalabilitySettings & GetScalabilitySettings() |
NiagaraEmitter.h | ||
UNiagaraScript * GetScript
(
ENiagaraScriptUsage Usage, |
NiagaraEmitter.h | ||
void GetScripts
(
TArray< UNiagaraScript* >& OutScripts, |
NiagaraEmitter.h | ||
FNiagaraSimStageExecutionDataPtr GetSimStageExcecutionData() |
NiagaraEmitter.h | ||
UNiagaraSimulationStageBase * GetSimulationStageById
(
FGuid ScriptUsageId |
NiagaraEmitter.h | ||
const TArray< UNiagaraSimulationStageBase * > & GetSimulationStages() |
NiagaraEmitter.h | ||
void InvalidateCompileResults() |
NiagaraEmitter.h | ||
bool IsAllowedByScalability() |
Returns true if this emitter's platform filter allows it on this platform and quality level. | NiagaraEmitter.h | |
bool IsAllowedToExecute() |
NiagaraEmitter.h | ||
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. | NiagaraEmitter.h | |
bool IsReadyToRun() |
NiagaraEmitter.h | ||
bool IsSynchronizedWithParent() |
NiagaraEmitter.h | ||
bool IsValid() |
NiagaraEmitter.h | ||
bool NeedsPartialDepthTexture() |
NiagaraEmitter.h | ||
void PostInitProperties
(
UNiagaraEmitter* Outer |
NiagaraEmitter.h | ||
void PostLoad
(
UNiagaraEmitter& Emitter, |
NiagaraEmitter.h | ||
FGraphEventArray PrecacheComputePSOs
(
const UNiagaraEmitter& NiagaraEmitter |
NiagaraEmitter.h | ||
void RebuildRendererBindings
(
const UNiagaraEmitter& Emitter |
NiagaraEmitter.h | ||
void RemoveParent() |
NiagaraEmitter.h | ||
void Reparent
(
const FVersionedNiagaraEmitter& InParent |
NiagaraEmitter.h | ||
bool RequiresPersistentIDs() |
NiagaraEmitter.h | ||
bool RequiresViewUniformBuffer() |
NiagaraEmitter.h | ||
void SyncEmitterAlias
(
const FString& InOldName, |
NiagaraEmitter.h | ||
void UpdateDebugName
(
const UNiagaraEmitter& Emitter, |
NiagaraEmitter.h | ||
bool UsesCollection
(
const UNiagaraParameterCollection* Collection |
NiagaraEmitter.h | ||
bool UsesEmitter
(
const UNiagaraEmitter& InEmitter |
NiagaraEmitter.h | ||
bool UsesInterpolatedSpawning() |
NiagaraEmitter.h | ||
bool UsesScript
(
const UNiagaraScript* Script |
NiagaraEmitter.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FBox GetDefaultFixedBounds() |
NiagaraEmitter.h |
Deprecated Variables
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInterpolatedSpawning_DEPRECATED | uint32 | NiagaraEmitter.h |
|