description: Builds the DDC string for the derived data cache using the supplied CompiledId and ScriptPath

code: static [FString](API\Runtime\Core\Containers\FString) BuildNiagaraDDCKeyString ( const [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & CompileId, const [FString](API\Runtime\Core\Containers\FString) & ScriptPath )


description: Infrastructure for GPU compute Shaders.

module: Niagara

code: void CacheResourceShadersForCooking ( EShaderPlatform ShaderPlatform, [TArray](API\Runtime\Core\Containers\TArray)< [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FNiagaraShaderScript](API\Plugins\NiagaraShader\FNiagaraShaderScript) >> & InOutCachedResources, const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


code: void CacheResourceShadersForRendering ( bool bRegenerateId, bool bForceRecompile )


code: void CacheShadersForResources ( [FNiagaraShaderScript](API\Plugins\NiagaraShader\FNiagaraShaderScript) * ResourceToCache, bool bApplyCompletedShaderMapForRendering, bool bForceRecompile, bool bCooking, const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


description: Makes sure that the default version data is available and fixes old script assets.

code: void CheckVersionDataAvailable()


code: void ComputeVMCompilationId ( [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & Id, const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid ) const


code: static bool ContainsEquivilentUsage ( const [TArray](API\Runtime\Core\Containers\TArray)< [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) > & Usages, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage )


code: static bool ConvertUsageToGroup ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage, [ENiagaraScriptGroup](API\Plugins\Niagara\ENiagaraScriptGroup) & OutGroup )


code: bool ContainsUsage ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage ) const


description: Creates a shallow transient copy of this script for compilation purposes.


code: bool DidScriptCompilationSucceed ( bool bGPUScript ) const


description: Deletes the version data for an existing version. The exposed version cannot be deleted and will result in an error. Does nothing if the guid does not exist in the script's version data.

code: virtual void DeleteVersion ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


description: Disables versioning and keeps only the data from the given version guid. Note that this breaks ALL references from existing assets and should only be used when creating a copy of a script, as the effect is very destructive.

code: virtual void DisableVersioning ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuidToUse )


description: Enables versioning for this script asset.

code: virtual void EnableVersioning()


description: Reverse of theBinaryToExecData()function

code: static bool ExecToBinaryData ( const [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * Script, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & OutBinaryData, [FNiagaraVMExecutableData](API\Plugins\Niagara\FNiagaraVMExecutableData) & InExecData )


description: Changes the exposed version. Does nothing if the guid does not exist in the script's version data.

code: virtual void ExposeVersion ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > FindShaderFormatsForCooking ( const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform ) const


description: Returns the version data for the given guid, if it exists. Otherwise returns nullptr.

code: virtual [FNiagaraAssetVersion](API\Plugins\Niagara\FNiagaraAssetVersion) const * FindVersionData ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid ) const


className: FOnPropertyChanged

code: typedef TMulticastDelegate_OneParam< void, [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & > FOnPropertyChanged


className: FOnScriptCompiled

code: typedef TMulticastDelegate_TwoParams< void, [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) *, const [FGuid](API\Runtime\Core\Misc\FGuid) & > FOnScriptCompiled


description: Returns all available versions for this script.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraAssetVersion](API\Plugins\Niagara\FNiagaraAssetVersion) > GetAllAvailableVersions() const


description: Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects

code: virtual void GetAssetRegistryTags ( [TArray](API\Runtime\Core\Containers\TArray)< [FAssetRegistryTag](API\Runtime\CoreUObject\UObject\UObject\FAssetRegistryTag) > & OutTags ) const


code: [FGuid](API\Runtime\Core\Misc\FGuid) GetBaseChangeID ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid ) const


code: TConstArrayView< [FNiagaraScriptDataInterfaceInfo](API\Plugins\Niagara\FNiagaraScriptDataInterfaceInfo) > GetCachedDefaultDataInterfaces() const


code: TConstArrayView< [FNiagaraScriptUObjectCompileInfo](API\Plugins\Niagara\FNiagaraScriptUObjectCompileInfo) > GetCachedDefaultUObjects() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UNiagaraParameterCollection](API\Plugins\Niagara\UNiagaraParameterCollection) > > & GetCachedParameterCollectionReferences()


code: template<typename T> [TOptional](API\Runtime\Core\IO\TOptional)< T > GetCompilerTag ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVar, const [FNiagaraParameterStore](API\Plugins\Niagara\FNiagaraParameterStore) * FallbackParameterStore ) const


code: [TOptional](API\Runtime\Core\IO\TOptional)< FVector3d > GetCompilerTag ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVar, const [FNiagaraParameterStore](API\Plugins\Niagara\FNiagaraParameterStore) * FallbackParameterStore ) const


code: const [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & GetComputedVMCompilationId() const


code: TConstArrayView< [FNiagaraDataInterfaceGPUParamInfo](API\Plugins\NiagaraShader\FNiagaraDataInterfaceGPUParamInf-) > GetDataInterfaceGPUParamInfos() const


code: [FText](API\Runtime\Core\Internationalization\FText) GetDescription ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: const [FNiagaraScriptExecutionParameterStore](API\Plugins\Niagara\FNiagaraScriptExecutionParameter-) * GetExecutionReadyParameterStore ( [ENiagaraSimTarget](API\Plugins\Niagara\ENiagaraSimTarget) SimTarget )


description: Returns the version of the exposed version data (i.e. the version used when adding a module to the stack)

code: virtual [FNiagaraAssetVersion](API\Plugins\Niagara\FNiagaraAssetVersion) GetExposedVersion() const


description: Returns the script data for latest exposed version.


code: const [FVersionedNiagaraScriptData](API\Plugins\Niagara\FVersionedNiagaraScriptData) * GetLatestScriptData() const


code: const [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * GetLatestSource() const


description: Creates a string key for the derived data cache

code: [FString](API\Runtime\Core\Containers\FString) GetNiagaraDDCKeyString ( const [FGuid](API\Runtime\Core\Misc\FGuid) & ScriptVersion, const [FString](API\Runtime\Core\Containers\FString) & ScriptPath )


description: Workaround for emitter versioning because we used a lot of Script->GetOuter()previously.


code: const [FNiagaraShaderScript](API\Plugins\NiagaraShader\FNiagaraShaderScript) * GetRenderThreadScript() const


code: TConstArrayView< [FNiagaraScriptResolvedDataInterfaceInfo](API\Plugins\Niagara\FNiagaraScriptResolvedDataInterf-) > GetResolvedDataInterfaces() const


code: TConstArrayView< [FNiagaraResolvedUObjectInfo](API\Plugins\Niagara\FNiagaraResolvedUObjectInfo) > GetResolvedUObjects() const


description: Returns the script data for a specific version or nullptr if no such version is found. For the null-Guid it returns the exposed version.

code: [FVersionedNiagaraScriptData](API\Plugins\Niagara\FVersionedNiagaraScriptData) * GetScriptData ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: const [FVersionedNiagaraScriptData](API\Plugins\Niagara\FVersionedNiagaraScriptData) * GetScriptData ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid ) const


code: [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * GetSource ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: virtual TConstArrayView< [FSimulationStageMetaData](API\Plugins\NiagaraShader\FSimulationStageMetaData) > GetSimulationStageMetaData() const


code: const [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * GetSource ( const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid ) const


code: template<typename T> [TOptional](API\Runtime\Core\IO\TOptional)< T > GetStaticVariableValue ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVar ) const


code: static [TArray](API\Runtime\Core\Containers\TArray)< [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) > GetSupportedUsageContextsForBitmask ( int32 InModuleUsageBitmask, bool bIncludeHiddenUsages )


code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraVersionDataAccessor](API\Plugins\Niagara\FNiagaraVersionDataAccessor) > GetVersionDataAccessor ( const [FGuid](API\Runtime\Core\Misc\FGuid) & Version )


code: const [FNiagaraVMExecutableData](API\Plugins\Niagara\FNiagaraVMExecutableData) & GetVMExecutableData() const


code: const [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & GetVMExecutableDataCompilationId() const


description: Kicks off an async job to convert the ByteCode into an optimized version for the platform we are running on.

code: FGraphEventRef HandleByteCodeOptimization ( bool bShouldForceNow )


code: bool HandleVariableRenames ( const [TMap](API\Runtime\Core\Containers\TMap)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable), [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & OldToNewVars, const [FString](API\Runtime\Core\Containers\FString) & UniqueEmitterName )


code: void InvalidateCompileResults ( const [FString](API\Runtime\Core\Containers\FString) & Reason )


description: Have we finished loading all the cooked platform data for the target platforms requested in BeginCacheForCookedPlatformData

code: virtual bool IsCachedCookedPlatformDataLoaded ( const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


code: static bool IsCompilable ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsDynamicInputScript() const


code: static bool IsDynamicInputScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


description:
Called during saving to determine if the object is forced to be editor only or not
true if this object should never be loaded outside the editor

code: virtual bool IsEditorOnly() const


code: bool IsEmitterSpawnScript() const


code: static bool IsEmitterScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsEmitterSpawnScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsEmitterUpdateScript() const


code: static bool IsEmitterUpdateScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsEquivalentUsage ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage ) const


code: static bool IsEquivalentUsage ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsageA, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsageB )


code: static bool IsFunctionScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsGPUScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsInterpolatedParticleSpawnScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsModuleScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsNonParticleScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsParticleEventScript() const


code: static bool IsParticleEventScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsParticleScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsParticleSpawnScript() const


code: static bool IsParticleSpawnScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsParticleStageScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsParticleUpdateScript() const


code: static bool IsParticleUpdateScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


description:
Called to check if the object is ready for FinishDestroy. This is called after BeginDestroy to check the completion of the potentially asynchronous object cleanup.
True if the object's asynchronous cleanup has completed and it is ready for FinishDestroy to be called.

code: virtual bool IsReadyForFinishDestroy()


code: bool IsReadyToRun ( [ENiagaraSimTarget](API\Plugins\Niagara\ENiagaraSimTarget) SimTarget ) const


code: bool IsScriptCompilationPending ( bool bGPUScript ) const


code: static bool IsSpawnScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsStandaloneScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsSupportedUsageContextForBitmask ( int32 InModuleUsageBitmask, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsageContext, bool bIncludeHiddenUsages )


code: static bool IsSystemScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: static bool IsSystemSpawnScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


code: bool IsSystemUpdateScript() const


code: static bool IsSystemUpdateScript ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage )


description: Is usage A dependent on Usage B?

code: static bool IsUsageDependentOn ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsageA, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsageB )


description: If true then this script asset uses active version control to track changes.

code: virtual bool IsVersioningEnabled() const


className: LogCompileStaticVars

code: static int32 LogCompileStaticVars =0;


description: Ensure that the Script and its source graph are marked out of sync.

code: void MarkScriptAndSourceDesynchronized ( [FString](API\Runtime\Core\Containers\FString) Reason, const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: virtual void ModifyCompilationEnvironment ( EShaderPlatform Platform, struct [FShaderCompilerEnvironment](API\Runtime\RenderCore\FShaderCompilerEnvironment) & OutEnvironment ) const


className: NiagaraCustomVersionTagName

code: static const [FName](API\Runtime\Core\UObject\FName) NiagaraCustomVersionTagName;


description: Callback issued whenever a GPU script compilation successfully happened (even if the results are a script that cannot be executed due to errors)


description: Callback issues whenever post edit changed is called on this script.


description: Callback issued whenever a VM script compilation successfully happened (even if the results are a script that cannot be executed due to errors)


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: virtual void PostEditChangeVersionedProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent, const [FGuid](API\Runtime\Core\Misc\FGuid) & Version )


description: Called after applying a transaction to the object. Default implementation simply calls PostEditChange.

code: virtual void PostEditUndo()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Deprecated* Use version that takesFObjectPreSaveContextinstead.

code: virtual PRAGMA_DISABLE_DEPRECATION_WARNINGSvoid PreSave ( const class [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


description: Objects created from within PreSave will NOT have PreSave called on them!!!

code: virtual void PreSave ( [FObjectPreSaveContext](API\Runtime\CoreUObject\UObject\FObjectPreSaveContext) SaveContext )


description: Request a synchronous compile for the script, possibly forcing it to compile.

code: void RequestCompile ( const [FGuid](API\Runtime\Core\Misc\FGuid) & ScriptVersion, bool bForceCompile )


description: Request an asynchronous compile for the script, possibly forcing it to compile. The output values are the compilation id of the data as well as the async handle to gather up the results with. The function returns whether or not any compiles were actually issued.

code: bool RequestExternallyManagedAsyncCompile ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraCompileRequestDataBase](API\Plugins\Niagara\FNiagaraCompileRequestDataBase), ESPMode::ThreadSafe > & RequestData, const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraCompileRequestDuplicateDataBase](API\Plugins\Niagara\FNiagaraCompileRequestDuplicateD-), ESPMode::ThreadSafe > & RequestDuplicateData, [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & OutCompileId, uint32 & OutAsyncHandle )


code: void SaveShaderStableKeys ( const class [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TP )


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: void SetLatestSource ( class [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * InSource )


code: static void SetPreviewFeatureLevel ( [ERHIFeatureLevel::Type](API\Runtime\RHI\ERHIFeatureLevel__Type) PreviewFeatureLevel )


code: void SetResolvedDataInterfaces ( const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraScriptResolvedDataInterfaceInfo](API\Plugins\Niagara\FNiagaraScriptResolvedDataInterf-) > & InResolvedDataInterfaces )


code: void SetResolvedUObjects ( TConstArrayView< [FNiagaraResolvedUObjectInfo](API\Plugins\Niagara\FNiagaraResolvedUObjectInfo) > InResolvedUObjectInfos )


code: void SetResolvedUserDataInterfaceBindings ( const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraResolvedUserDataInterfaceBinding](API\Plugins\Niagara\FNiagaraResolvedUserDataInterfac-) > & InResolvedUserDataInterfaceBindings )


code: void SetUsage ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage )


code: void SetUsageId ( const [FGuid](API\Runtime\Core\Misc\FGuid) & InUsageId )


description: External call used to identify the values for a successful VM script compilation. OnVMScriptCompiled will be issued in this case.

code: void SetVMCompilationResults ( const [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & InCompileId, [FNiagaraVMExecutableData](API\Plugins\Niagara\FNiagaraVMExecutableData) & InScriptVM, const [FString](API\Runtime\Core\Containers\FString) & EmitterUniqueName, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), [UNiagaraDataInterface](API\Plugins\Niagara\UNiagaraDataInterface) * > & ObjectNameMap, bool ApplyRapidIterationParameters )


code: virtual bool ShouldCompile ( EShaderPlatform Platform ) const


code: void SetSource ( class [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * InSource, const [FGuid](API\Runtime\Core\Misc\FGuid) & VersionGuid )


code: void SyncAliases ( const [FNiagaraAliasContext](API\Plugins\Niagara\FNiagaraAliasContext) & ResolveAliasesContext )


description: In the event where we "merge" we duplicate the changes of the source script onto the newly cloned copy. This function will synchronize the compiled script results assuming that the scripts themselves are bound to the same key. This saves looking things up in the DDC. It returns true if successfully synchronized and false if not.

code: bool SynchronizeExecutablesWithCompilation ( const [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * Script, const [TMap](API\Runtime\Core\Containers\TMap)< [FString](API\Runtime\Core\Containers\FString), [FString](API\Runtime\Core\Containers\FString) > & RenameMap )


code: bool UsesCollection ( const class [UNiagaraParameterCollection](API\Plugins\Niagara\UNiagaraParameterCollection) * Collection ) const


code: UNiagaraScript ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UNiagaraScript

description: Runtime script for a Niagara system

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(MinimalAPI) class UNiagaraScript : public [UNiagaraScriptBase](API\Plugins\NiagaraShader\UNiagaraScriptBase), public [FNiagaraVersionedObject](API\Plugins\Niagara\FNiagaraVersionedObject)

RapidIterationParameters

type: FNiagaraParamet...

description: Contains all of the top-level values that are iterated on in the UI.

Usage

type: ENiagaraScriptU...

description: How this script is to be used. cannot be private due to use of GET_MEMBER_NAME_CHECKED

ValidationRules

type: TArray<TObject...

description: A set of rules to apply when this script is used in the stack.

VersionToOpenInEditor

type: FGuid

description: This is used as a transient value to open a specific version in the graph editor


description: Adds a module if it isn't already in the graph. If the module isn't found bOutFoundModule will be false. If it is found and it did need to be added, the function returns true. If it already exists, it returns false.

code: virtual bool AddModuleIfMissing ( [FString](API\Runtime\Core\Containers\FString) ModulePath, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage, bool & bOutFoundModule )


code: virtual void ChangedLinkedInputTypes ( const [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) & ParametersToCheck, const [FNiagaraTypeDefinition](API\Plugins\Niagara\FNiagaraTypeDefinition) & NewType )


code: virtual void CleanUpOldAndInitializeNewRapidIterationParameters ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & Emitter, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) ScriptUsage, [FGuid](API\Runtime\Core\Misc\FGuid) ScriptUsageId, [FNiagaraParameterStore](API\Plugins\Niagara\FNiagaraParameterStore) & RapidIterationParameters ) const


code: virtual void CollectDataInterfaces ( [TArray](API\Runtime\Core\Containers\TArray)< const [UNiagaraDataInterfaceBase](API\Plugins\NiagaraCore\UNiagaraDataInterfaceBase) * > & DataInterfaces ) const


code: virtual [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), [UNiagaraDataInterface](API\Plugins\Niagara\UNiagaraDataInterface) * > ComputeObjectNameMap ( [UNiagaraSystem](API\Plugins\Niagara\UNiagaraSystem) & System, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) Usage, [FGuid](API\Runtime\Core\Misc\FGuid) UsageId, [FString](API\Runtime\Core\Containers\FString) EmitterUniqueName ) const


code: virtual void ComputeVMCompilationId ( struct [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & Id, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage, const [FGuid](API\Runtime\Core\Misc\FGuid) & InUsageId ) const


className: FOnChanged

code: typedef TMulticastDelegate_NoParams< void > FOnChanged


code: virtual [FGuid](API\Runtime\Core\Misc\FGuid) GetCompileBaseId ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage, const [FGuid](API\Runtime\Core\Misc\FGuid) & InUsageId ) const


code: virtual [FNiagaraCompileHash](API\Plugins\NiagaraCore\FNiagaraCompileHash) GetCompileHash ( [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage, const [FGuid](API\Runtime\Core\Misc\FGuid) & InUsageId ) const


description: Checks if any of the provided variables are linked to function inputs of position type data

code: virtual void GetLinkedPositionTypeInputs ( const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & ParametersToCheck, [TSet](API\Runtime\Core\Containers\TSet)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & OutLinkedParameters )


description:
Called during saving to determine if the object is forced to be editor only or not
true if this object should never be loaded outside the editor

code: virtual bool IsEditorOnly() const


description: Determines if the input change id is equal to the current source graph's change id.

code: virtual bool IsSynchronized ( const [FGuid](API\Runtime\Core\Misc\FGuid) & InChangeId )


description: Enforce that the source graph is now out of sync with the script.

code: virtual void MarkNotSynchronized ( [FString](API\Runtime\Core\Containers\FString) Reason )


description: Allows the derived editor only script source to handle a post load requested by an owning emitter.

code: virtual void PostLoadFromEmitter ( [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) OwningEmitter )


description: Cause the source to build up any internal variables that will be useful in the compilation process.

code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraCompileRequestDataBase](API\Plugins\Niagara\FNiagaraCompileRequestDataBase), ESPMode::ThreadSafe > PreCompile ( [UNiagaraEmitter](API\Plugins\Niagara\UNiagaraEmitter) * Emitter, const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & EncounterableVariables, [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraCompileRequestDataBase](API\Plugins\Niagara\FNiagaraCompileRequestDataBase), ESPMode::ThreadSafe >> & ReferencedCompileRequests, bool bClearErrors )


description: Will conditionally refresh the graph's CompileId.

code: virtual void RefreshGraphCompileId()


code: virtual void RegisterVMCompilationIdDependencies ( struct [FNiagaraVMExecutableDataId](API\Plugins\Niagara\FNiagaraVMExecutableDataId) & Id, [ENiagaraScriptUsage](API\Plugins\Niagara\ENiagaraScriptUsage) InUsage, const [FGuid](API\Runtime\Core\Misc\FGuid) & InUsageId ) const


description: Rename all graph assignment and map set node pins. Used when synchronizing definitions with source scripts of systems and emitters.

code: virtual void RenameGraphAssignmentAndSetNodePins ( const [FName](API\Runtime\Core\UObject\FName) OldName, const [FName](API\Runtime\Core\UObject\FName) NewName )


code: virtual void ReplaceScriptReferences ( [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * OldScript, [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * NewScript )


description: Synchronize all source script variables that have been changed or removed from the parameter definitions to all eligible destination script variables owned by the graph.

code: virtual void SynchronizeGraphParametersWithParameterDefinitions ( const [TArray](API\Runtime\Core\Containers\TArray)< [UNiagaraParameterDefinitionsBase](API\Plugins\Niagara\UNiagaraParameterDefinitionsBase) * > TargetDefinitions, const [TArray](API\Runtime\Core\Containers\TArray)< [UNiagaraParameterDefinitionsBase](API\Plugins\Niagara\UNiagaraParameterDefinitionsBase) * > AllDefinitions, const [TSet](API\Runtime\Core\Containers\TSet)< [FGuid](API\Runtime\Core\Misc\FGuid) > & AllDefinitionsParameterIds, [INiagaraParameterDefinitionsSubscriber](API\Plugins\Niagara\INiagaraParameterDefinitionsSubs-) * Subscriber, [FSynchronizeWithParameterDefinitionsArgs](API\Plugins\Niagara\FSynchronizeWithParameterDefinit-) Args )


code: UNiagaraScriptSourceBase ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UNiagaraScriptSourceBase

description: Runtime data for a Niagara system

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(MinimalAPI) class UNiagaraScriptSourceBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

ExposedVectorConstants

type: TArray<TShared...

OnChangedDelegate

type: FOnChanged


code: void AddEnumParameterType ( [UEnum](API\Runtime\CoreUObject\UObject\UEnum) * Enum )


description: Gets the category for the settings, some high level grouping like, Editor, Engine, Game...etc.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetCategoryName() const


className: FOnNiagaraSettingsChanged

code: typedef TMulticastDelegate_TwoParams< void, const [FName](API\Runtime\Core\UObject\FName) &, const [UNiagaraSettings](API\Plugins\Niagara\UNiagaraSettings) * > FOnNiagaraSettingsChanged


code: [UNiagaraEffectType](API\Plugins\Niagara\UNiagaraEffectType) * GetDefaultEffectType() const


code: [UNiagaraEffectType](API\Plugins\Niagara\UNiagaraEffectType) * GetRequiredEffectType() const


description: Gets the section text, uses the classes DisplayName by default.

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetSectionText() const


description: Gets a multicast delegate which is called whenever one of the parameters in this settings object changes.

code: static [FOnNiagaraSettingsChanged](API\Plugins\Niagara\UNiagaraSettings\FOnNiagaraSettingsChanged) & OnSettingsChanged()


description: UObjectinterface

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: UNiagaraSettings ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UNiagaraSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Niagara, defaultconfig, Meta=(DisplayName="Niagara"), MinimalAPI) class UNiagaraSettings : public [UDeveloperSettings](API\Runtime\DeveloperSettings\Engine\UDeveloperSettings)

AdditionalParameterEnums

type: TArray<FSoftOb...

bEnforceStrictStackTypes

type: bool

description: If set to true, types like positions and vectors cannot be assigned to each other without an explicit conversion step.

bExperimentalVMEnabled

description: True indicates that we will generate byte code for the new experimental VM.

bLimitDeltaTime

description: Whether to limit the max tick delta time or not.

bShowConvertibleInputsInStack

description: If true then the "link input" menu will also show variables of different types, as long as there is a conversion script for them.

bSystemsSupportLargeWorldCoordinates

description: If true then active effects rebase the simulation positions to not lose precision.

bSystemViewportInOrbitMode

description: Sets the default navigation behavior for the system preview viewport.

ComponentRendererWarningsPerClass

type: TMap<FString, ...

description: Info texts that the component renderer shows the user depending on the selected component class.

DefaultEffectType

type: FSoftObjectPath

description: Default effect type to use for effects that don't define their own. Can be null.

DefaultGpuTranslucentLatency

type: ENiagaraDefault...

description: The default setting for Gpu simulation translucent draw latency.

DefaultGridFormat

type: ENiagaraGpuBuff...

description: The default buffer format used by all Niagara Grid Data Interfaces unless overridden.

DefaultLightInverseExposureBlend

type: float

description: The default InverseExposureBlend used for the light renderer.

DefaultPixelCoverageMode

description: The default setting for pixel coverage mode when automatic is set on the Niagara Renderer.

DefaultRendererMotionVectorSetting

description: The default setting for motion vectors in Niagara renderers

DefaultRenderTargetFormat

type: TEnumAsByte< ET...

description: The default render target format used by all Niagara Render Target Data Interfaces unless overridden.

DefaultSortPrecision

description: The default setting for sorting precision when automatic is set on the Niagara Renderer.

MaxDeltaTimePerTick

description: Limits the delta time per tick for emitters to prevent simulation spikes due to frame lags.

type: TArray<TEnumAs...

description: Defines how traces tagged as 'Project Default' will be interpreted when using the AsyncGpuTrace data interface.

type: TEnumAsByte<EN...

description: When enabled the static mesh data interface is allowed to sample from the distance field data (if present) on the GPU.

PlatformSetRedirects

type: TArray<FNiagar...

PositionPinTypeColor

type: FLinearColor

description: Position pin type color. The other pin colors are defined in the general editor settings.

QualityLevels

type: TArray<FText>

description: The quality levels Niagara uses.

QuickSimCacheCaptureFrameCount

description: The number of frames to capture when capturing a Sim Cache from the Niagara Component Details Panel.

RequiredEffectType

description: Specifies a required effect type which must be used for effects in the project.

SimCacheAuxiliaryFileBasePath

type: FString

description: Base path for auxiliary files written out during the generation of a Niagara Sim Cache (ie: volume files).

SimCacheMaxCPUMemoryVolumetrics

description: Max memory in megabytes for total CPU memory for cached volumetric data


code: virtual void CalculateSignificance ( TConstArrayView< [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * > Components, [TArrayView](API\Runtime\Core\Containers\TArrayView)< [FNiagaraScalabilityState](API\Plugins\Niagara\FNiagaraScalabilityState) > OutState, TConstArrayView< [FNiagaraScalabilitySystemData](API\Plugins\Niagara\FNiagaraScalabilitySystemData) > SystemData, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutIndices )


className: UNiagaraSignificanceHandler

description: Base class for significance handlers. These allow Niagara's scalability system to determine the relative significance of different FX in the scene. Some basic ones are provided but projects are free to implement their own more complex determinations of significance. For example, FX attached to the player character could be given higher priority.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, EditInlineNew, MinimalAPI) class UNiagaraSignificanceHandler : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


className: UNiagaraSignificanceHandlerAge

description: Significance is determined by the system's age. Newer systems are more significant.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Meta=(DisplayName="Age"), MinimalAPI) class UNiagaraSignificanceHandlerAge : public [UNiagaraSignificanceHandler](API\Plugins\Niagara\UNiagaraSignificanceHandler)


className: UNiagaraSignificanceHandlerDistance

description: Significance is determined by the system's distance to the nearest camera. Closer systems are more significant.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Meta=(DisplayName="Distance"), MinimalAPI) class UNiagaraSignificanceHandlerDistance : public [UNiagaraSignificanceHandler](API\Plugins\Niagara\UNiagaraSignificanceHandler)


code: bool BeginAppend ( [FNiagaraSimCacheCreateParameters](API\Plugins\Niagara\FNiagaraSimCacheCreateParameters) InCreateParameters, [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent )


code: bool BeginAppend ( [FNiagaraSimCacheCreateParameters](API\Plugins\Niagara\FNiagaraSimCacheCreateParameters) InCreateParameters, [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent, [FNiagaraSimCacheFeedbackContext](API\Plugins\Niagara\FNiagaraSimCacheFeedbackContext) & FeedbackContext )


code: bool BeginWrite ( [FNiagaraSimCacheCreateParameters](API\Plugins\Niagara\FNiagaraSimCacheCreateParameters) InCreateParameters, [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent )


code: bool BeginWrite ( [FNiagaraSimCacheCreateParameters](API\Plugins\Niagara\FNiagaraSimCacheCreateParameters) InCreateParameters, [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent, [FNiagaraSimCacheFeedbackContext](API\Plugins\Niagara\FNiagaraSimCacheFeedbackContext) & FeedbackContext )


className: CacheAgeResolution

description: Used to reduce rounding issues with age.

code: static constexpr float CacheAgeResolution = 10000.0f;


code: bool CanRead ( [UNiagaraSystem](API\Plugins\Niagara\UNiagaraSystem) * NiagaraSystem )


className: FOnCacheBeginWrite

code: typedef TMulticastDelegate_OneParam< void, [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) * > FOnCacheBeginWrite


className: FOnCacheEndWrite

code: typedef TMulticastDelegate_OneParam< void, [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) * > FOnCacheEndWrite


description: Runs a function for each attribute for the provided emitter index. An EmitterIndex or INDEX_NONE will return information about the system instance. Return true to continue iterating or false to stop

code: void ForEachEmitterAttribute ( int32 EmitterIndex, [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< bool(const [FNiagaraSimCacheVariable](API\Plugins\Niagara\FNiagaraSimCacheVariable) &)> Function ) const


description: How were the attributes captured for this sim cache.


description: Get the caches assigned GUID, this can be set from a user or will be auto created on first write of the cache.

code: const [FGuid](API\Runtime\Core\Misc\FGuid) & GetCacheGuid()


description: Get the duration the cache was recorded over.

code: float GetDurationSeconds() const


description: Get the emitter index from a name

code: int GetEmitterIndex ( [FName](API\Runtime\Core\UObject\FName) EmitterName ) const


description: Get the emitter name at the provided index.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) [FName](API\Runtime\Core\UObject\FName) GetEmitterName ( int32 EmitterIndex ) const


description: Returns a list of emitters we have captured in the SimCache.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetEmitterNames() const


description: Get number of active instances for the emitter at the given frame. An EmitterIndex or INDEX_NONE will return information about the system instance.

code: int GetEmitterNumInstances ( int32 EmitterIndex, int32 FrameIndex ) const


description: Get number of emitters stored inside the cache.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) int GetNumEmitters() const


description: Get number of frames stored in the cache.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) int GetNumFrames() const


description: Get the time the simulation was at when recorded.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) float GetStartSeconds() const


description: A valid cache is one that contains at least 1 frames worth of data.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache, Meta=(DisplayName="IsValid")) bool IsCacheValid() const


description: Get the system this cache is based on

code: [UNiagaraSystem](API\Plugins\Niagara\UNiagaraSystem) * GetSystem ( bool bLoadSynchronous )


description: Deprecated* For test purposes only, don't use in production code.

code: bool IsDataEqual ( const [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) & OtherCache, float ErrorTolerance, [FString](API\Runtime\Core\Containers\FString) & OutDifference ) const


description: An empty cache contains no frame data and can not be used

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) bool IsEmpty() const


description:
Called to check if the object is ready for FinishDestroy. This is called after BeginDestroy to check the completion of the potentially asynchronous object cleanup.
True if the object's asynchronous cleanup has completed and it is ready for FinishDestroy to be called.

code: virtual bool IsReadyForFinishDestroy()


code: bool Read ( float TimeSeconds, [FNiagaraSystemInstance](API\Plugins\Niagara\FNiagaraSystemInstance) * SystemInstance ) const


description: Reads Niagara attributes by name from the cache frame and appends them into the relevant arrays. When reading using this method the attributes for a FVector would come out as AoS rather than SoA so each component is wrote one by one EmitterName - If left blank will return the system simulation attributes.

code: void ReadAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< float > & OutFloats, [TArray](API\Runtime\Core\Containers\TArray)< [FFloat16](API\Runtime\Core\Math\FFloat16) > & OutHalfs, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutInts, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Color attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadColorAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara float attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadFloatAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< float > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


code: bool ReadFrame ( int32 FrameIndex, float FrameFraction, [FNiagaraSystemInstance](API\Plugins\Niagara\FNiagaraSystemInstance) * SystemInstance ) const


description: Reads Niagara ID attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadIDAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraID](API\Plugins\Niagara\FNiagaraID) > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara int attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadIntAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Position attributes by name from the cache frame and appends them into the OutValues array. Local space emitters provide data at local locations unless bLocalSpaceToWorld is true. EmitterName - If left blank will return the system simulation attributes. LocalSpaceToWorld - Caches are always stored in the emitters space, i.e. local or world space. You can set this to false if you want the local position rather than the world position.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache, Meta=(AdvancedDisplay="bLocalSpaceToWorld")) void ReadPositionAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< FVector > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, bool bLocalSpaceToWorld, int FrameIndex ) const


description: Reads Niagara Position attributes by name from the cache frame and appends them into the OutValues array. All attributes read with this method will be re-based from the captured space into the provided transform space, this will occur even if the cache was not captured with re-basing enabled. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadPositionAttributeWithRebase ( [TArray](API\Runtime\Core\Containers\TArray)< FVector > & OutValues, FTransform Transform, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Quaternion attributes by name from the cache frame and appends them into the OutValues array. Local space emitters provide data at local rotation unless bLocalSpaceToWorld is true. EmitterName - If left blank will return the system simulation attributes. LocalSpaceToWorld - Caches are always stored in the emitters space, i.e. local or world space. You can set this to false if you want the local Quat rather than the world Quat.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache, Meta=(AdvancedDisplay="bLocalSpaceToWorld")) void ReadQuatAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< FQuat > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, bool bLocalSpaceToWorld, int FrameIndex ) const


description: Reads Niagara Quaternion attributes by name from the cache frame and appends them into the OutValues array. Only attributes that in the rebase list will be transform into the provided Quat space. Therefore the cache must be captured with rebasing enabled to have any impact. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadQuatAttributeWithRebase ( [TArray](API\Runtime\Core\Containers\TArray)< FQuat > & OutValues, FQuat Quat, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Vec2 attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadVector2Attribute ( [TArray](API\Runtime\Core\Containers\TArray)< FVector2D > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Vec4 attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadVector4Attribute ( [TArray](API\Runtime\Core\Containers\TArray)< FVector4 > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Reads Niagara Vec3 attributes by name from the cache frame and appends them into the OutValues array. EmitterName - If left blank will return the system simulation attributes.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache) void ReadVectorAttribute ( [TArray](API\Runtime\Core\Containers\TArray)< FVector > & OutValues, [FName](API\Runtime\Core\UObject\FName) AttributeName, [FName](API\Runtime\Core\UObject\FName) EmitterName, int FrameIndex ) const


description: Set the caches GUID to use.

code: void SetCacheGuid ( const [FGuid](API\Runtime\Core\Misc\FGuid) & InGuid )


code: bool WriteFrame ( [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent )


code: bool WriteFrame ( [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent, [FNiagaraSimCacheFeedbackContext](API\Plugins\Niagara\FNiagaraSimCacheFeedbackContext) & FeedbackContext )


code: UNiagaraSimCache ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UNiagaraSimCache

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Experimental, BlueprintType, MinimalAPI) class UNiagaraSimCache : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


className: UNiagaraSimCacheCustomStorageInterface

description: Interface for UObjects to implement renderable mesh.

code: class UNiagaraSimCacheCustomStorageInterface : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


description: Captures the simulations current frame data into the SimCache. This happens immediately so you may need to be careful with tick order of the component you are capturing from. The return can be invalid if the component can not be captured for some reason (i.e. not active). When AdvanceSimulation is true we will manually advance the simulation one frame using the provided AdvanceDeltaTime before capturing.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache, Meta=(ReturnDisplayName="Success")) static bool CaptureNiagaraSimCacheImmediate ( [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) * SimCache, [FNiagaraSimCacheCreateParameters](API\Plugins\Niagara\FNiagaraSimCacheCreateParameters) CreateParameters, [UNiagaraComponent](API\Plugins\Niagara\UNiagaraComponent) * NiagaraComponent, [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) *& OutSimCache, bool bAdvanceSimulation, float AdvanceDeltaTime )


code: virtual bool AppendCompileHash ( [FNiagaraCompileHashVisitor](API\Plugins\Niagara\FNiagaraCompileHashVisitor) * InVisitor ) const


description: Captures the simulation cache object that can be captured into using the various API calls.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=NiagaraSimCache, Meta=(WorldContext="WorldContextObject", ReturnDisplayName="SimCache")) static [UNiagaraSimCache](API\Plugins\Niagara\UNiagaraSimCache) * CreateNiagaraSimCache ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * WorldContextObject )


code: UNiagaraSimCacheFunctionLibrary ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: virtual bool FillCompilationData ( [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraSimulationStageCompilationData](API\Plugins\Niagara\FNiagaraSimulationStageCompilati-) > & CompilationSimStageData ) const


code: [FVersionedNiagaraEmitterData](API\Plugins\Niagara\FVersionedNiagaraEmitterData) * GetEmitterData() const


description: Return theFNameto use in place of the default for the location in the stack context. If this would be the default, return NAME_None.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetStackContextReplacementName() const


className: ParticleSpawnUpdateName

code: static const [FName](API\Runtime\Core\UObject\FName) ParticleSpawnUpdateName;


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: void SetEnabled ( bool bEnabled )


className: UNiagaraSimulationStageBase

description: A base class for niagara simulation stages. This class should be derived to add stage specific information.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, MinimalAPI) class UNiagaraSimulationStageBase : public [UNiagaraMergeable](API\Plugins\NiagaraCore\UNiagaraMergeable)

bEnabled

type: uint32:  1

OuterEmitterVersion

type: FGuid

Script

type: TObjectPtr<UNi...

SimulationStageName

type: FName


description: Called after the C++ constructor and after the properties have been initialized, including those loaded from config. This is called before any serialization or other setup has happened.

code: virtual void PostInitProperties()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


code: virtual void RemoveVariable ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & OldVariable, const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


code: virtual void RenameEmitter ( const [FName](API\Runtime\Core\UObject\FName) & InOldName, const [UNiagaraEmitter](API\Plugins\Niagara\UNiagaraEmitter) * InRenamedEmitter )


code: virtual void RenameVariable ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & OldVariable, const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & NewVariable, const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


className: UNiagaraSimulationStageGeneric

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Meta=(DisplayName="Generic Simulation Stage"), MinimalAPI) class UNiagaraSimulationStageGeneric : public [UNiagaraSimulationStageBase](API\Plugins\Niagara\UNiagaraSimulationStageBase)

bDisablePartialParticleUpdate

description: Disables the ability to read / write from the same particle buffer, i.e. only update position and no other attributes.

bGpuDispatchForceLinear

description: When enabled we force the dispatch to be linear (i.e. one dimension is used).

bOverrideGpuDispatchNumThreads

description: When enabled we use a custom number of threads for the dispatch.

bParticleIterationStateEnabled

description: When enabled we iterate over the subset of particles that satisfy the binding & range selected.

DataInterface

type: FNiagaraVariabl...

description: Source data interface to use for the simulation stage.

DirectDispatchElementType

type: ENiagaraDirectD...

description: Customizes what the element count means for a direct dispatch.

DirectDispatchType

type: ENiagaraGpuDisp...

description: Dimensions to use for dispatch.

ElementCountX

type: FNiagaraParamet...

description: Integer binding to override the number of elements the stage will execute along X.

ElementCountY

description: Integer binding to override the number of elements the stage will execute along Y.

ElementCountZ

description: Integer binding to override the number of elements the stage will execute along Z.

EnabledBinding

description: Optional bool binding allowing scripts to control if the simulation stage is enabled or not.

ExecuteBehavior

type: ENiagaraSimStag...

description: Controls when the simulation stage should execute, only valid for data interface iteration stages

IterationSource

type: ENiagaraIterati...

description: Select what we should be iterating over, particles or data interfaces.

NumIterations

description: Number of times (or iterations) the simulation stage will execute in a row.

OverrideGpuDispatchNumThreadsX

description: Parameter binding / constant value for Num Threads X

OverrideGpuDispatchNumThreadsY

description: Parameter binding / constant value for Num Threads Y

OverrideGpuDispatchNumThreadsZ

description: Parameter binding / constant value for Num Threads Z

ParticleIterationStateBinding

description: Particle state attribute binding, when enabled we will only allow particles who pass the state range check to be processed.

ParticleIterationStateRange

type: FIntPoint

description: The inclusive range used to check particle state binding against when enabled.


code: virtual void CacheFromCompiledData ( const [FNiagaraDataSetCompiledData](API\Plugins\Niagara\FNiagaraDataSetCompiledData) * CompiledData )


code: virtual void CollectPSOPrecacheData ( [FPSOPrecacheParamsList](API\Plugins\Niagara\UNiagaraRendererProperties\FPSOPrecacheParamsList) & OutParams )


code: virtual [FNiagaraBoundsCalculator](API\Plugins\Niagara\FNiagaraBoundsCalculator) * CreateBoundsCalculator()


code: virtual [FNiagaraRenderer](API\Plugins\Niagara\FNiagaraRenderer) * CreateEmitterRenderer ( [ERHIFeatureLevel::Type](API\Runtime\RHI\ERHIFeatureLevel__Type) FeatureLevel, const [FNiagaraEmitterInstance](API\Plugins\Niagara\FNiagaraEmitterInstance) * Emitter, const [FNiagaraSystemInstanceController](API\Plugins\Niagara\FNiagaraSystemInstanceController) & InController )


code: virtual void GetAdditionalVariables ( [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) > & OutArray ) const


description: Returns the variable associated with the supplied binding if it should be bound given the current settings of the RendererProperties.

code: virtual [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) GetBoundAttribute ( const [FNiagaraVariableAttributeBinding](API\Plugins\Niagara\FNiagaraVariableAttributeBinding) * Binding ) const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > GetBoundAttributes() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< FVector2f > & GetCutoutData() const


code: uint32 GetNumIndicesPerInstance() const


code: virtual const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & GetOptionalAttributes()


code: virtual void GetRendererFeedback ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter, [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & OutErrors, [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & OutWarnings, [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & OutInfo ) const


code: virtual void GetRendererFeedback ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter, [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraRendererFeedback](API\Plugins\Niagara\FNiagaraRendererFeedback) > & OutErrors, [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraRendererFeedback](API\Plugins\Niagara\FNiagaraRendererFeedback) > & OutWarnings, [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraRendererFeedback](API\Plugins\Niagara\FNiagaraRendererFeedback) > & OutInfo ) const


code: virtual void GetRendererTooltipWidgets ( const [FNiagaraEmitterInstance](API\Plugins\Niagara\FNiagaraEmitterInstance) * InEmitter, [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [SWidget](API\Runtime\SlateCore\Widgets\SWidget) >> & OutWidgets, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FAssetThumbnailPool](API\Editor\UnrealEd\FAssetThumbnailPool) > InThumbnailPool ) const


code: virtual void GetRendererWidgets ( const [FNiagaraEmitterInstance](API\Plugins\Niagara\FNiagaraEmitterInstance) * InEmitter, [TArray](API\Runtime\Core\Containers\TArray)< [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [SWidget](API\Runtime\SlateCore\Widgets\SWidget) >> & OutWidgets, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FAssetThumbnailPool](API\Editor\UnrealEd\FAssetThumbnailPool) > InThumbnailPool ) const


description: Get the size of the object/resource for use in memory tools or to display to artists/LDs in the Editor This is the extended version which separates up the used memory into different memory regions (the actual definition of which may be platform specific).

code: virtual void GetResourceSizeEx ( [FResourceSizeEx](API\Runtime\Core\ProfilingDebugging\FResourceSizeEx) & CumulativeResourceSize )


code: virtual void GetUsedMaterials ( const [FNiagaraEmitterInstance](API\Plugins\Niagara\FNiagaraEmitterInstance) * InEmitter, [TArray](API\Runtime\Core\Containers\TArray)< [UMaterialInterface](API\Runtime\Engine\Materials\UMaterialInterface) * > & OutMaterials ) const


code: virtual const [FVertexFactoryType](API\Runtime\RenderCore\FVertexFactoryType) * GetVertexFactoryType() const


description: The bindings depend on variables that are created during the NiagaraModule startup. However, the CDO's are build prior to this being initialized, so we defer setting these values until later.


code: virtual bool IsSimTargetSupported ( [ENiagaraSimTarget](API\Plugins\Niagara\ENiagaraSimTarget) InSimTarget ) const


code: virtual bool NeedsMIDsForMaterials() const


description: In the case that we need parameters bound in that aren't Particle variables, these should be set up here so that the data is appropriately populated after the simulation.

code: virtual bool PopulateRequiredBindings ( [FNiagaraParameterStore](API\Plugins\Niagara\FNiagaraParameterStore) & InParameterStore )


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after the C++ constructor and after the properties have been initialized, including those loaded from config. This is called before any serialization or other setup has happened.

code: virtual void PostInitProperties()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


code: virtual void RemoveVariable ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & OldVariable, const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


code: virtual void RenameVariable ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & OldVariable, const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & NewVariable, const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FStructuredArchive::FRecord](API\Runtime\Core\Serialization\FStructuredArchive\FRecord) Record )


code: void SetPreviousBindings ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & SrcEmitter, [ENiagaraRendererSourceDataMode](API\Plugins\Niagara\ENiagaraRendererSourceDataMode) InSourceMode )


className: SpriteRendererPropertiesToDeferredInit


code: virtual void UpdateSourceModeDerivates ( [ENiagaraRendererSourceDataMode](API\Plugins\Niagara\ENiagaraRendererSourceDataMode) InSourceMode, bool bFromPropertyEdit )


code: UNiagaraSpriteRendererProperties()


className: UNiagaraSpriteRendererProperties

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Meta=(DisplayName="Sprite Renderer"), MinimalAPI) class UNiagaraSpriteRendererProperties : public [UNiagaraRendererProperties](API\Plugins\Niagara\UNiagaraRendererProperties)

Alignment

type: ENiagaraSpriteA...

description: Imagine the particle texture having an arrow pointing up, these modes define how the particle aligns that texture to other particle attributes.

AlphaThreshold

type: float

description: Alpha channel values larger than the threshold are considered occupied and will be contained in the bounding geometry.

bEnableCameraDistanceCulling

type: uint8:  1

description: Enables frustum culling of individual sprites

BoundingMode

type: TEnumAsByte< en...

description: More bounding vertices results in reduced overdraw, but adds more triangle overhead.

bRemoveHMDRollInVR

description: If true, removes the HMD view roll (e.g. in VR)

bSortOnlyWhenTranslucent

description: If true, the particles are only sorted when using a translucent material.

bSubImageBlend

description: If true, blends the sub-image UV lookup with its next adjacent member using the fractional part of the SubImageIndex float value as the linear interpolation factor.

bUseMaterialCutoutTexture

type: bool

description: Use the cutout texture from the material opacity mask, or if none exist, from the material opacity.

CameraOffsetBinding

description: Which attribute should we use for camera offset when generating sprites?

ColorBinding

description: Which attribute should we use for color when generating sprites?

CustomSortingBinding

description: Which attribute should we use for custom sorting? Defaults to Particles.NormalizedAge.

CutoutTexture

type: TObjectPtr<UTe...

description: Texture to generate bounding geometry from.

description: Which attribute should we use for dynamic material parameters when generating sprites?

FacingMode

type: ENiagaraSpriteF...

description: Determines how the particle billboard orients itself relative to the camera.

GpuTranslucentLatency

type: ENiagaraRendere...

description: Gpu simulations run at different points in the frame depending on what features are used, i.e. depth buffer, distance fields, etc.

MacroUVRadius

description: World space radius that UVs generated with the ParticleMacroUV material node will tile based on.

Material

type: TObjectPtr<UMa...

description: The material used to render the particle.

MaterialParameters

type: FNiagaraRendere...

description: If this array has entries, we will create a MaterialInstanceDynamic per Emitter instance from Material and set the Material parameters using the Niagara simulation variables listed.

MaterialRandomBinding

description: Which attribute should we use for material randoms when generating sprites?

MaterialUserParamBinding

type: FNiagaraUserPar...

description: Use theUMaterialInterfacebound to this user variable if it is set to a valid value.

MaxFacingCameraBlendDistance

description: When FacingMode is FacingCameraDistanceBlend, the distance at which the sprite is fully facing the camera position

MinFacingCameraBlendDistance

description: When FacingMode is FacingCameraDistanceBlend, the distance at which the sprite is fully facing the camera plane.

NormalizedAgeBinding

description: Which attribute should we use for Normalized Age?

PivotInUVSpace

description: Determines the location of the pivot point of this particle.

PivotOffsetBinding

description: Which attribute should we use for pivot offset? (NOTE: Values are expected to be in UV space).

PixelCoverageBlend

description: When pixel coverage is enabled this allows you to control the blend of the pixel coverage color adjustment.

PixelCoverageMode

description: This setting controls what happens when a sprite becomes less than a pixel in size.

PositionBinding

description: Which attribute should we use for position when generating sprites?

RendererVisibility

description: If a render visibility tag is present, particles whose tag matches this value will be visible in this renderer.

RendererVisibilityTagBinding

description: Which attribute should we use for RendererVisibilityTag?

SortMode

type: ENiagaraSortMod...

description: Determines how we sort the particles prior to rendering.

SortPrecision

description: Sort precision to use when sorting is active.

SourceMode

description: Whether or not to draw a single element for the Emitter or to draw the particles.

SpriteAlignmentBinding

description: Which attribute should we use for sprite alignment when generating sprites?

SpriteFacingBinding

description: Which attribute should we use for sprite facing when generating sprites?

SpriteRotationBinding

description: Which attribute should we use for sprite rotation (in degrees) when generating sprites?

SpriteSizeBinding

description: Which attribute should we use for sprite size when generating sprites?

SubImageIndexBinding

description: Which attribute should we use for sprite sub-image indexing when generating sprites?

SubImageSize

description: When using SubImage lookups for particles, this variable contains the number of columns in X and the number of rows in Y.

UVScaleBinding

description: Which attribute should we use for UV scale when generating sprites?

VelocityBinding

description: Which attribute should we use for velocity when generating sprites?


description: Adds a new emitter handle to this System. The new handle exposes an Instance value which is a copy of the original asset.

code: [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) AddEmitterHandle ( [UNiagaraEmitter](API\Plugins\Niagara\UNiagaraEmitter) & SourceEmitter, [FName](API\Runtime\Core\UObject\FName) EmitterName, [FGuid](API\Runtime\Core\Misc\FGuid) EmitterVersion )


description: Adds a new emitter handle to this system without copying the original asset. This should only be used for temporary systems and never for live assets.

code: void AddEmitterHandleDirect ( [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & EmitterHandleToAdd )


code: void AddToInstanceCountStat ( int32 NumInstances, bool bSolo ) const


description: Starts caching of platform specific data for the target platform Called when cooking before serialization so that object can prepare platform specific data Not called during normal loading of objects

code: virtual void BeginCacheForCookedPlatformData ( const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


code: bool CanObtainEmitterAttribute ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVarWithUniqueNameNamespace, [FNiagaraTypeDefinition](API\Plugins\Niagara\FNiagaraTypeDefinition) & OutBoundType ) const


description: Cache data & accessors from the compiled data, allows us to avoid per instance.

code: void CacheFromCompiledData()


description:
Called after load to determine if the object can be a cluster root
true if this object can be a cluster root

code: virtual bool CanBeClusterRoot() const


code: bool CanObtainSystemAttribute ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVar, [FNiagaraTypeDefinition](API\Plugins\Niagara\FNiagaraTypeDefinition) & OutBoundType ) const


code: bool CanObtainUserVariable ( const [FNiagaraVariableBase](API\Plugins\Niagara\FNiagaraVariableBase) & InVar ) const


code: virtual bool ChangeEmitterVersion ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & Emitter, const [FGuid](API\Runtime\Core\Misc\FGuid) & NewVersion )


className: ComputeEmitterExecutionOrderMessageId

code: static const [FGuid](API\Runtime\Core\Misc\FGuid) ComputeEmitterExecutionOrderMessageId;


description: Computes emitter priorities based on the dependency information.

code: bool ComputeEmitterPriority ( int32 EmitterIdx, [TArray](API\Runtime\Core\Containers\TArray)< int32, TInlineAllocator< 32 >> & EmitterPriorities, const [TBitArray](API\Runtime\Core\Containers\TBitArray)< TInlineAllocator< 32 >> & EmitterDependencyGraph )


description: Computes the order in which the emitters in the Emitters array will be ticked and stores the results in EmitterExecutionOrder.

code: void ComputeEmittersExecutionOrder()


description: Computes the order in which renderers will render

code: void ComputeRenderersDrawOrder()


code: static void DeclareConstructClasses ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) > & OutConstructClasses, const [UClass](API\Runtime\CoreUObject\UObject\UClass) * SpecificSubclass )


description: Duplicates an existing emitter handle and adds it to the System. The new handle will reference the same source asset, but will have a copy of the duplicated Instance value.

code: [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) DuplicateEmitterHandle ( const [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & EmitterHandleToDuplicate, [FName](API\Runtime\Core\UObject\FName) EmitterName )


description: Queries all the data interfaces in the array for emitter dependencies.

code: void FindDataInterfaceDependencies ( [FVersionedNiagaraEmitterData](API\Plugins\Niagara\FVersionedNiagaraEmitterData) * EmitterData, [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * Script, [TArray](API\Runtime\Core\Containers\TArray)< [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) > & Dependencies )


description: Looks at all the event handlers in the emitter to determine which other emitters it depends on.

code: void FindEventDependencies ( [FVersionedNiagaraEmitterData](API\Plugins\Niagara\FVersionedNiagaraEmitterData) * EmitterData, [TArray](API\Runtime\Core\Containers\TArray)< [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) > & Dependencies )


className: FOnScalabilityChanged

code: typedef TMulticastDelegate_NoParams< void > FOnScalabilityChanged


className: FOnSystemCompiled

code: typedef TMulticastDelegate_OneParam< void, [UNiagaraSystem](API\Plugins\Niagara\UNiagaraSystem) * > FOnSystemCompiled


className: FOnSystemPostEditChange

code: typedef TMulticastDelegate_OneParam< void, [UNiagaraSystem](API\Plugins\Niagara\UNiagaraSystem) * > FOnSystemPostEditChange


code: void ForceGraphToRecompileOnNextCheck()


description: Performs the passed action for all FNiagaraPlatformSets in this system.

code: template<typename TAction> void ForEachPlatformSet ( TAction Func )


description: Performs the passed action for all scripts in this system. Include NiagaraSystemImpl.h to be able to call this function

code: template<typename TAction> void ForEachScript ( TAction Func ) const


code: void operator&40;&41; &40; FNiagaraSystemStaticBuffers &42; Ptr &41; const


className: FStaticBuffersDeletor

code: struct FStaticBuffersDeletor


code: void GatherStaticVariables ( [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & OutVars, [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) > & OutEmitterVars ) const


code: int32 & GetActiveInstancesCount()


description: Get allUNiagaraScriptSourceBaseof this subscriber.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [UNiagaraScriptSourceBase](API\Plugins\Niagara\UNiagaraScriptSourceBase) * > GetAllSourceScripts()


code: const [FGuid](API\Runtime\Core\Misc\FGuid) & GetAssetGuid() const


description: Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects

code: virtual void GetAssetRegistryTags ( [TArray](API\Runtime\Core\Containers\TArray)< [FAssetRegistryTag](API\Runtime\CoreUObject\UObject\UObject\FAssetRegistryTag) > & OutTags ) const


code: const [UNiagaraBakerSettings](API\Plugins\Niagara\UNiagaraBakerSettings) * GetBakerGeneratedSettings() const


description: Get the cached parameter map traversal for this emitter.

code: const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FNiagaraGraphCachedDataBase](API\Plugins\Niagara\FNiagaraGraphCachedDataBase), ESPMode::ThreadSafe > & GetCachedTraversalData() const


code: const [FString](API\Runtime\Core\Containers\FString) & GetCrashReporterTag() const


code: const [FNiagaraSystemScalabilityOverride](API\Plugins\Niagara\FNiagaraSystemScalabilityOverrid-) & GetCurrentOverrideSettings() const


description: Gets editor specific data stored with this system.

code: const [UNiagaraEditorDataBase](API\Plugins\Niagara\UNiagaraEditorDataBase) * GetEditorData() const


description: Get All adapters to editor only script vars owned directly by this subscriber.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [UNiagaraEditorParametersAdapterBase](API\Plugins\Niagara\UNiagaraEditorParametersAdapterB-) * > GetEditorOnlyParametersAdapters()


description: Gets editor specific parameters stored with this system


code: [UNiagaraEffectType](API\Plugins\Niagara\UNiagaraEffectType) * GetEffectType() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< const [FNiagaraEmitterCompiledData](API\Plugins\Niagara\FNiagaraEmitterCompiledData) > > & GetEmitterCompiledData() const


code: TConstArrayView< [FNiagaraEmitterExecutionIndex](API\Plugins\Niagara\FNiagaraEmitterExecutionIndex) > GetEmitterExecutionOrder() const


code: TConstArrayView< [FNiagaraDataSetAccessor](API\Plugins\Niagara\FNiagaraDataSetAccessor)< [ENiagaraExecutionState](API\Plugins\Niagara\ENiagaraExecutionState) > > GetEmitterExecutionStateAccessors() const


code: [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & GetEmitterHandle ( int Idx )


code: const [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & GetEmitterHandle ( int Idx ) const


description: Gets an array of the emitter handles.

code: [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) > & GetEmitterHandles()


description: Gets an array of the emitter handles.

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) > & GetEmitterHandles() const


code: TConstArrayView< [FNiagaraDataSetAccessor](API\Plugins\Niagara\FNiagaraDataSetAccessor)< [FNiagaraSpawnInfo](API\Plugins\Niagara\FNiagaraSpawnInfo) > > GetEmitterSpawnInfoAccessors ( int32 EmitterIndex ) const


description: From the last compile, what are the variables that were exported out of the system for external use?

code: const [FNiagaraUserRedirectionParameterStore](API\Plugins\Niagara\FNiagaraUserRedirectionParameter-) & GetExposedParameters() const


code: float GetFixedTickDeltaTime() const


code: [TOptional](API\Runtime\Core\IO\TOptional)< float > GetMaxDeltaTime() const


description: Get all subscribers that are owned by this subscriber. Note: Implemented for synchronizingUNiagaraSystem.UNiagaraSystemreturns all UNiagaraEmitters it owns to call SynchronizeWithParameterDefinitions for each.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [INiagaraParameterDefinitionsSubscriber](API\Plugins\Niagara\INiagaraParameterDefinitionsSubs-) * > GetOwnedParameterDefinitionsSubscribers()


code: [UNiagaraParameterCollectionInstance](API\Plugins\Niagara\UNiagaraParameterCollectionInsta-) * GetParameterCollectionOverride ( [UNiagaraParameterCollection](API\Plugins\Niagara\UNiagaraParameterCollection) * Collection )


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FParameterDefinitionsSubscription](API\Plugins\Niagara\FParameterDefinitionsSubscriptio-) > & GetParameterDefinitionsSubscriptions()


code: virtual const [TArray](API\Runtime\Core\Containers\TArray)< [FParameterDefinitionsSubscription](API\Plugins\Niagara\FParameterDefinitionsSubscriptio-) > & GetParameterDefinitionsSubscriptions() const


code: TConstArrayView< [FNiagaraRendererExecutionIndex](API\Plugins\Niagara\FNiagaraRendererExecutionIndex) > GetRendererCompletionOrder() const


code: TConstArrayView< int32 > GetRendererDrawOrder() const


code: TConstArrayView< [FNiagaraRendererExecutionIndex](API\Plugins\Niagara\FNiagaraRendererExecutionIndex) > GetRendererPostTickOrder() const


description: Get the size of the object/resource for use in memory tools or to display to artists/LDs in the Editor This is the extended version which separates up the used memory into different memory regions (the actual definition of which may be platform specific).

code: virtual void GetResourceSizeEx ( [FResourceSizeEx](API\Runtime\Core\ProfilingDebugging\FResourceSizeEx) & CumulativeResourceSize )


code: const [FNiagaraSystemScalabilitySettings](API\Plugins\Niagara\FNiagaraSystemScalabilitySetting-) & GetScalabilitySettings() const


description: Get the path to theUObjectof this subscriber.

code: virtual [FString](API\Runtime\Core\Containers\FString) GetSourceObjectPathName() const


code: const [FNiagaraSystemStaticBuffers](API\Plugins\Niagara\FNiagaraSystemStaticBuffers) * GetStaticBuffers() const


code: [TStatId](API\Runtime\Core\Stats\TStatId) GetStatID ( bool bGameThread, bool bConcurrent ) const


code: const [FNiagaraSystemCompiledData](API\Plugins\Niagara\FNiagaraSystemCompiledData) & GetSystemCompiledData() const


code: const [FNiagaraDataSetAccessor](API\Plugins\Niagara\FNiagaraDataSetAccessor)< [ENiagaraExecutionState](API\Plugins\Niagara\ENiagaraExecutionState) > & GetSystemExecutionStateAccessor() const


description: Gets the System script which is used to populate the System parameters and parameter bindings.


code: const [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * GetSystemSpawnScript() const


code: const [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * GetSystemUpdateScript() const


description: Helper method to handle when an internal variable has been removed. Resets any downstream dependencies in the emitters or exposed variables.

code: void HandleVariableRemoved ( const [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) & InOldVariable, bool bUpdateContexts )


description: Helper method to handle when an internal variable has been renamed. Renames any downstream dependencies in the emitters or exposed variables.

code: void HandleVariableRenamed ( const [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) & InOldVariable, const [FNiagaraVariable](API\Plugins\Niagara\FNiagaraVariable) & InNewVariable, bool bUpdateContexts )


code: bool HasDIsWithPostSimulateTick() const


description: Are there any pending compile requests?

code: bool HasOutstandingCompilationRequests ( bool bIncludingGPUShaders ) const


description: Invalidates any active compilation requests which will ignore their results.

code: void InvalidateActiveCompiles()


description: Have we finished loading all the cooked platform data for the target platforms requested in BeginCacheForCookedPlatformData

code: virtual bool IsCachedCookedPlatformDataLoaded ( const [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


description:
Called to check if the object is ready for FinishDestroy. This is called after BeginDestroy to check the completion of the potentially asynchronous object cleanup.
True if the object's asynchronous cleanup has completed and it is ready for FinishDestroy to be called.

code: virtual bool IsReadyForFinishDestroy()


description: Returns true if this system is valid and can be instanced. False otherwise.

code: bool IsValid() const


description: Tries to abort all running shader compilations

code: void KillAllActiveCompilations()


className: kStartNewOverlapGroupBit

description: When an index inside the EmitterExecutionOrder array has this bit set, it means the corresponding emitter cannot execute in parallel with the previous emitters due to a data dependency.

code: static constexpr int32 kStartNewOverlapGroupBit = (1 << 31);


description: Updates any post compile data based upon data interfaces.

code: void OnCompiledDataInterfaceChanged()


description: Updates the system postUObjectchange.

code: void OnCompiledUObjectChanged()


description: Delegate called on effect type or effect type value change


description: Delegate called when the system's dependencies have all been compiled.


description: Delegate called on PostEditChange.


description: If we have a pending compile request, is it done with yet?

code: bool PollForCompilationComplete ( bool bFlushRequestCompile )


description: Called after duplication & serialization and before PostLoad. Used to e.g. make sureUStaticMesh'sUModelgets copied as well. Note: NOT called on components on actor duplication (alt-drag or copy-paste). Use PostEditImport as well to cover that case.

code: virtual void PostDuplicate ( bool bDuplicateForPIE )


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after the C++ constructor and after the properties have been initialized, including those loaded from config. This is called before any serialization or other setup has happened.

code: virtual void PostInitProperties()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: This is called when a property is about to be modified externally

code: virtual void PreEditChange ( [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * PropertyAboutToChange )


description: Updates the rapid iteration parameters for all scripts referenced by the system.


description: Objects created from within PreSave will NOT have PreSave called on them!!!

code: virtual void PreSave ( [FObjectPreSaveContext](API\Runtime\CoreUObject\UObject\FObjectPreSaveContext) SaveContext )


description: Deprecated* Use version that takesFObjectPreSaveContextinstead.

code: virtual PRAGMA_DISABLE_DEPRECATION_WARNINGSvoid PreSave ( const class [ITargetPlatform](API\Developer\TargetPlatform\Interfaces\ITargetPlatform) * TargetPlatform )


code: static void RecomputeExecutionOrderForEmitter ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


description: Determines if this system has the supplied emitter as an editable and simulating emitter instance.

code: bool ReferencesInstanceEmitter ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & Emitter ) const


description: Updates the system's rapid iteration parameters from a specific emitter.

code: void RefreshSystemParametersFromEmitter ( const [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & EmitterHandle )


description: Removes the provided emitter handle.

code: void RemoveEmitterHandle ( const [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & EmitterHandleToDelete )


code: static void RecomputeExecutionOrderForDataInterface ( class [UNiagaraDataInterface](API\Plugins\Niagara\UNiagaraDataInterface) * DataInterface )


description: Removes the emitter handles which have an Id in the supplied set.

code: void RemoveEmitterHandlesById ( const [TSet](API\Runtime\Core\Containers\TSet)< [FGuid](API\Runtime\Core\Misc\FGuid) > & HandlesToRemove )


description: Removes the system's rapid iteration parameters for a specific emitter.

code: void RemoveSystemParametersForEmitter ( const [FNiagaraEmitterHandle](API\Plugins\Niagara\FNiagaraEmitterHandle) & EmitterHandle )


description: Request that any dirty scripts referenced by this system be compiled.

code: bool RequestCompile ( bool bForce, [FNiagaraSystemUpdateContext](API\Plugins\Niagara\FNiagaraSystemUpdateContext) * OptionalUpdateContext )


code: static void RequestCompileForEmitter ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & InEmitter )


description: Resets internal data leaving it in a state which would have minimal cost to exist in headless builds (servers)

code: void ResetToEmptySystem()


className: ResolveDIsMessageId

code: static const [FGuid](API\Runtime\Core\Misc\FGuid) ResolveDIsMessageId;


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: void SetBakeOutRapidIterationOnCook ( bool bBakeOut )


code: void SetBakerGeneratedSettings ( [UNiagaraBakerSettings](API\Plugins\Niagara\UNiagaraBakerSettings) * Settings )


code: void SetEffectType ( [UNiagaraEffectType](API\Plugins\Niagara\UNiagaraEffectType) * EffectType )


code: void SetFixedBounds ( const FBox & Box )


code: void SetIsolateEnabled ( bool bIsolate )


code: void SetOverrideScalabilitySettings ( bool bOverride )


code: void SetWarmupTime ( float InWarmupTime )


code: void SetWarmupTickDelta ( float InWarmupTickDelta )


code: void SetTrimAttributesOnCook ( bool bTrim )


code: bool ShouldAutoDeactivate() const


code: bool ShouldDisableDebugSwitches() const


code: bool ShouldCompressAttributes() const


code: bool ShouldTrimAttributes() const


code: bool UsesCollection ( const [UNiagaraParameterCollection](API\Plugins\Niagara\UNiagaraParameterCollection) * Collection ) const


code: bool UsesEmitter ( [UNiagaraEmitter](API\Plugins\Niagara\UNiagaraEmitter) * Emitter ) const


code: bool UsesEmitter ( const [FVersionedNiagaraEmitter](API\Plugins\Niagara\FVersionedNiagaraEmitter) & VersionedEmitter ) const


code: bool UsesScript ( const [UNiagaraScript](API\Plugins\Niagara\UNiagaraScript) * Script ) const


description: Blocks until all active compile jobs have finished

code: void WaitForCompilationComplete ( bool bIncludingGPUShaders, bool bShowProgress )


code: UNiagaraSystem ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: UNiagaraSystem ( [FVTableHelper](API\Runtime\CoreUObject\UObject\FVTableHelper) & Helper )


code: virtual void CheckValidity ( const [FNiagaraValidationContext](API\Plugins\Niagara\FNiagaraValidationContext) & Context, [TArray](API\Runtime\Core\Containers\TArray)< [FNiagaraValidationResult](API\Plugins\Niagara\FNiagaraValidationResult) > & OutResults ) const


className: UNiagaraSystem

description: A Niagara System contains multiple Niagara Emitters to create various effects. Niagara Systems can be placed in the world, unlike Emitters, and expose User Parameters to configure an effect at runtime.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, Meta=(LoadBehavior="LazyOnDemand"), MinimalAPI) class UNiagaraSystem : public [UFXSystemAsset](API\Runtime\Engine\Particles\UFXSystemAsset), public [INiagaraParameterDefinitionsSubscriber](API\Plugins\Niagara\INiagaraParameterDefinitionsSubs-)

ActiveCompilations

type: TArray<TUnique...

ActiveInstances

description: Total active instances of this system.

AssetGuid

type: FGuid

BakerGeneratedSettings

type: TObjectPtr<UNi...

description: Generated data baker settings, will be null until we have generated at least once.

BakerSettings

description: Settings used inside the baker

bAllDIsPostSimulateCanOverlapFrames

type: uint32:  1

bAllowCullingForLocalPlayersOverride

description: The override value for bAllowCullingForLocalPlayers from the Effect Type.

bBakeOutRapidIteration

description: When enable constant values are baked into the scripts while editing the system, this will increase iteration times but improve performance.

bBakeOutRapidIterationOnCook

description: When enabled constant values are baked into scripts to improve performance.

bCompileForEdit

description: When enabled we compile for the edit path, which can result in slower system performance but faster editor responsiveness.

bCompressAttributes

description: Toggles whether or not emitters within this system will try and compress their particle attributes.

bDeterminism

description: When disabled we will generate a RandomSeed per instance on reset which is not deterministic.

bDisableDebugSwitches

description: When enable debug switches are disabled while editing the system.

bDisableDebugSwitchesOnCook

description: When enabled debug switches are disabled when compiling the system.

bDisableExperimentalVM

description: If true, disables experimental VM, if available

bFixedBounds

description: Whether or not fixed bounds are enabled.

bIgnoreParticleReadsForAttributeTrim

description: If true ParticleReads will not absolutely prevent attribute trimming - User must ensure that the appropriate attributes are preserved on the source emitter!

bNeedsRequestCompile

description: When set the system needs to compile before it can be activated.

bOverrideAllowCullingForLocalPlayers

description: Controls whether we should override the Effect Type value for bAllowCullingForLocalPlayers.

bOverrideCastShadow

description: Various optional overrides for component properties when spawning a system.

bReceivesDecals

description: When enabled this is the default value set on the component. Whether the primitive receives decals.

bRequireCurrentFrameData

description: When enabled, we follow the settings on theUNiagaraComponentfor tick order.

bSupportLargeWorldCoordinates

description: If true then position type values will be rebased on system activation to fit into a float precision vector.

bTrimAttributes

description: When enabled we trim particle attributes while editing the system.

bTrimAttributesOnCook

description: If true Particle attributes will be removed from the DataSet if they are unnecessary (are never read by ParameterMap)

CachedTraversalData

type: TSharedPtr<FNi...

Category

type: FText

description: Category of this system.

CrashReporterTag

type: FString

CurrentScalabilitySettings

type: FNiagaraSystemS...

description: Scalability settings.

CustomDepthStencilWriteMask

type: ERendererStenci...

description: When enabled this is the default value set on the component. Mask used for stencil buffer writes.

EditorData

description: Data used by the editor to maintain UI state etc..

EditorParameters

description: Wrapper for editor only parameters.

EffectType

description: An effect types defines settings shared between systems, for example scalability and validation rules.

EmitterCompiledData

type: TArray<TShared...

EmitterExecutionOrder

type: TArray<FNiagar...

description: Array of emitter indices sorted by execution priority.

EmitterHandles

description: Handles to the emitter this System will simulate.

EmitterSpawnInfoAccessors

type: TArray<TArray<...

ExposedParameters

type: FNiagaraUserRed...

description: Variables exposed to the outside work for tweaking

FixedBounds

type: FBox

description: The fixed bounding box value for the whole system.

FixedTickDeltaTime

description: If activated, the system ticks with a fixed delta time instead of the varying game thread delta time.

LibraryVisibility

type: ENiagaraScriptL...

description: If this system is exposed to the library, or should be explicitly hidden.

MaxDeltaTime

type: TOptional< floa...

MessageStore

type: FNiagaraMessage...

OnScalabilityChangedDelegate

type: FOnScalabilityC...

description: A multicast delegate that is called whenever the effect type or the effect type values are changed

OnSystemCompiledDelegate

type: FOnSystemCompil...

description: A multicast delegate which is called whenever the script has been compiled (successfully or not).

OnSystemPostEditChangeDelegate

type: FOnSystemPostEd...

description: A multicast delegate which is called whenever this system's properties are changed.

ParameterCollectionOverrides

type: TArray<TObject...

ParameterDefinitionsSubscriptions

type: TArray<FParame...

description: Subscriptions to definitions of parameters.

PSOPrecacheCompletionEvent

type: FGraphEventRef

RandomSeed

description: Seed used for system script random number generator.

RendererCompletionOrder

description: Array of renderer indices to notify system Completion, in order of execution

RendererDrawOrder

type: TArray< int32 >

description: Precomputed emitter renderer draw order, since emitters & renderers are not dynamic we can do this.

RendererPostTickOrder

description: Array of renderer indices to notify system PostTick, in order of execution

StaticBuffers

type: TUniquePtr<FNi...

SystemCompiledData

type: FNiagaraSystemC...

SystemExecutionStateAccessor

type: FNiagaraDataSet...

SystemSpawnScript

description: The script which defines the System parameters, and which generates the bindings from System parameter to emitter parameter.

TemplateSpecification

type: ENiagaraScriptT...

description: If this system is a regular system, a template or a behavior example.

ThumbnailImage

type: TObjectPtr< cla...

description: Internal: The thumbnail image.

UpdateContext

type: FNiagaraSystemU...

WaitRenderCommandsFence

type: FRenderCommandF...

WarmupTickCount

description: Number of ticks to process for warmup. You can set by this or by time via WarmupTime.

WarmupTickDelta

description: Delta time to use for warmup ticks.

WarmupTime

description: Warm up time in seconds.


className: UNiagaraValidationRule

description: Base class for system validation logic. These allow Niagara systems to be inspected for content validation either at save time or from a commandlet.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, EditInlineNew, MinimalAPI) class UNiagaraValidationRule : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


className: UNiagaraValidationRuleSet

description: A set of reusable validation rules.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, MinimalAPI) class UNiagaraValidationRuleSet : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: virtual [FNiagaraBoundsCalculator](API\Plugins\Niagara\FNiagaraBoundsCalculator) * CreateBoundsCalculator()


code: virtual void CacheFromCompiledData ( const [FNiagaraDataSetCompiledData](API\Plugins\Niagara\FNiagaraDataSetCompiledData) * CompiledData )