G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
UParticleSystem Class Reference

A ParticleSystem is a complete particle effect that contains any number of ParticleEmitters. By allowing multiple emitters in a system, the designer can create elaborate particle effects that are held in a single system. Once created using Cascade, a ParticleSystem can then be inserted into a level or created in script. More...

Public Member Functions

Particle System
bool ContainsEmitterType (UClass TypeData)
 Returns true if this system contains an emitter of the pasesd type. @ param TypeData - The emitter type to check for. Must be a child class of UParticleModuleTypeDataBase.
Functions
void SetbUseFixedRelativeBoundingBox (bool Value)
 Whether to use the fixed relative bounding box or calculate it every frame.
void SetbUseRealtimeThumbnail (bool Value)
 Inidicates the old 'real-time' thumbnail rendering should be used.
void SetbUseDelayRange (bool Value)
 If true, select the emitter delay from the range [DelayLow..Delay].
void SetbAllowManagedTicking (bool Value)
 Whether or not to allow instances of this system to have their ticks managed.
void SetbAutoDeactivate (bool Value)
 Auto-deactivate system if all emitters are determined to not spawn particles again, regardless of lifetime.
void SetbOrientZAxisTowardCamera (bool Value)
 If true, the system's Z axis will be oriented toward the camera.
Public Member Functions inherited from UObject
bool MarkPackageDirty () const
void RemoveFromRoot ()
bool GetIsRooted () const
bool IsTransient () const
bool Modify (bool bAlwaysMarkDirty=true)
void SetTransactional (bool bTransactional)
bool IsSupportedForNetworking () const
UClass GetClass () const
UObject GetOuter () const
UObject GetTypedOuter (TSubclassOf< UObject > Target) const
 Traverses the outer chain searching for the next object of a certain type.
UPackage GetOutermost () const
UPackage GetPackage () const
void AddToRoot ()
UWorld GetWorld () const
FName GetName () const
FString GetFullName (const UObject StopOuter=nullptr) const
FString GetPathName (const UObject StopOuter=nullptr) const
bool IsA (const UClass Class) const
 Returns true if this object is of the specified type, or a child of that type.
void SaveConfig ()
void LoadConfig ()
void ReloadConfig ()
void CopyScriptPropertiesFrom (const UObject OtherObject)
void opCast (?&Address) const
FString ToString () const

Static Public Member Functions

Static Functions
static UClass StaticClass ()
Static Public Member Functions inherited from UFXSystemAsset
static UClass StaticClass ()
Static Public Member Functions inherited from UObject
static UClass StaticClass ()

Public Attributes

Bounds
FBox FixedRelativeBoundingBox
 Fixed relative bounding box for particle system.
Delay
float32 DelayLow
 The low end of the emitter delay if using a range.
float32 Delay
 How long this Particle system should delay when ActivateSystem is called on it.
LOD
float32 LODDistanceCheckTime
 How often (in seconds) the system should perform the LOD distance check.
TArray< float32 > LODDistances
 The array of distances for each LOD level in the system. Used when LODMethod is set to PARTICLESYSTEMLODMETHOD_Automatic.
ParticleSystemLODMethod LODMethod
 The method of LOD level determination to utilize for this particle system PARTICLESYSTEMLODMETHOD_Automatic - Automatically set the LOD level, checking every LODDistanceCheckTime seconds. PARTICLESYSTEMLODMETHOD_DirectSet - LOD level is directly set by the game code. PARTICLESYSTEMLODMETHOD_ActivateAutomatic - LOD level is determined at Activation time, then left alone unless directly set by game code.
MacroUV
float32 MacroUVRadius
 World space radius that UVs generated with the ParticleMacroUV material node will tile based on.
FVector MacroUVPosition
 Local space position that UVs generated with the ParticleMacroUV material node will be centered on.
Materials
TArray< FNamedEmitterMaterial > NamedMaterialSlots
 Array of named material slots for use by emitters of this system. Emitters can use these instead of their own materials by providing the name to the NamedMaterialOverrides property of their required module. These materials can be overridden using CreateNamedDynamicMaterialInstance() on a ParticleSystemComponent.
Occlusion
FBox CustomOcclusionBounds
 The occlusion bounds to use if OcclusionBoundsMethod is set to EPSOBM_CustomBounds.
EParticleSystemOcclusionBoundsMethod OcclusionBoundsMethod
 Which occlusion bounds method to use for this particle system. EPSOBM_None - Don't determine occlusion for this system. EPSOBM_ParticleBounds - Use the bounds of the component when determining occlusion.
ParticleSystem
float32 WarmupTickRate
 WarmupTickRate - the time step for each tick during warm up. Increasing this improves performance. Decreasing, improves accuracy. Set to 0 to use the default tick time.
float32 UpdateTime_FPS
 UpdateTime_FPS - the frame per second to update at in FixedTime mode.
float32 WarmupTime
 WarmupTime - the time to warm-up the particle system when first rendered Warning: WarmupTime is implemented by simulating the particle system for the time requested upon activation. This is extremely prone to cause hitches, especially with large particle counts - use with caution.
float32 SecondsBeforeInactive
 Number of seconds of emitter not being rendered that need to pass before it no longer gets ticked/ becomes inactive.
EParticleSystemUpdateMode SystemUpdateMode
Performance
float32 InsignificanceDelay
 Time delay between all emitters becoming insignificant and the systems insignificant reaction.
EParticleSignificanceLevel MaxSignificanceLevel
 The maximum level of significance for emitters in this system. Any emitters with a higher significance will be capped at this significance level.
EParticleSystemInsignificanceReaction InsignificantReaction
 The reaction this system takes when all emitters are insignificant.
uint MinTimeBetweenTicks
 Minimum duration between ticks; 33=tick at max. 30FPS, 16=60FPS, 8=120FPS.
Thumbnail
float32 ThumbnailWarmup
 The time to warm-up the system for the thumbnail image.
Public Attributes inherited from UFXSystemAsset
uint PoolPrimeSize
 How many instances we should use to initially prime the pool. This can amortize runtime activation cost by moving it to load time. Use with care as this could cause large hitches for systems loaded/unloaded during play rather than at level load.
uint MaxPoolSize
 Max number of components of this system to keep resident in the world component pool.
Public Attributes inherited from UObject
const UClass Class
const UObject Outer
const UPackage Outermost
const UPackage Package
const UWorld World
const FName Name
const bool IsRooted

Detailed Description

A ParticleSystem is a complete particle effect that contains any number of ParticleEmitters. By allowing multiple emitters in a system, the designer can create elaborate particle effects that are held in a single system. Once created using Cascade, a ParticleSystem can then be inserted into a level or created in script.

Member Function Documentation

◆ ContainsEmitterType()

bool ContainsEmitterType ( UClass TypeData)

Returns true if this system contains an emitter of the pasesd type. @ param TypeData - The emitter type to check for. Must be a child class of UParticleModuleTypeDataBase.

◆ SetbAllowManagedTicking()

void SetbAllowManagedTicking ( bool Value)

Whether or not to allow instances of this system to have their ticks managed.

◆ SetbAutoDeactivate()

void SetbAutoDeactivate ( bool Value)

Auto-deactivate system if all emitters are determined to not spawn particles again, regardless of lifetime.

◆ SetbOrientZAxisTowardCamera()

void SetbOrientZAxisTowardCamera ( bool Value)

If true, the system's Z axis will be oriented toward the camera.

◆ SetbUseDelayRange()

void SetbUseDelayRange ( bool Value)

If true, select the emitter delay from the range [DelayLow..Delay].

◆ SetbUseFixedRelativeBoundingBox()

void SetbUseFixedRelativeBoundingBox ( bool Value)

Whether to use the fixed relative bounding box or calculate it every frame.

◆ SetbUseRealtimeThumbnail()

void SetbUseRealtimeThumbnail ( bool Value)

Inidicates the old 'real-time' thumbnail rendering should be used.

◆ StaticClass()

UClass StaticClass ( )
static

Member Data Documentation

◆ CustomOcclusionBounds

FBox CustomOcclusionBounds

The occlusion bounds to use if OcclusionBoundsMethod is set to EPSOBM_CustomBounds.

◆ Delay

float32 Delay

How long this Particle system should delay when ActivateSystem is called on it.

◆ DelayLow

float32 DelayLow

The low end of the emitter delay if using a range.

◆ FixedRelativeBoundingBox

FBox FixedRelativeBoundingBox

Fixed relative bounding box for particle system.

◆ InsignificanceDelay

float32 InsignificanceDelay

Time delay between all emitters becoming insignificant and the systems insignificant reaction.

◆ InsignificantReaction

The reaction this system takes when all emitters are insignificant.

◆ LODDistanceCheckTime

float32 LODDistanceCheckTime

How often (in seconds) the system should perform the LOD distance check.

◆ LODDistances

TArray<float32> LODDistances

The array of distances for each LOD level in the system. Used when LODMethod is set to PARTICLESYSTEMLODMETHOD_Automatic.

Example: System with 3 LOD levels LODDistances(0) = 0.0 LODDistances(1) = 2500.0 LODDistances(2) = 5000.0

In this case, when the system is [ 0.0 .. 2499.9] from the camera, LOD level 0 will be used. [2500.0 .. 4999.9] from the camera, LOD level 1 will be used. [5000.0 .. INFINITY] from the camera, LOD level 2 will be used.

◆ LODMethod

The method of LOD level determination to utilize for this particle system PARTICLESYSTEMLODMETHOD_Automatic - Automatically set the LOD level, checking every LODDistanceCheckTime seconds. PARTICLESYSTEMLODMETHOD_DirectSet - LOD level is directly set by the game code. PARTICLESYSTEMLODMETHOD_ActivateAutomatic - LOD level is determined at Activation time, then left alone unless directly set by game code.

◆ MacroUVPosition

FVector MacroUVPosition

Local space position that UVs generated with the ParticleMacroUV material node will be centered on.

◆ MacroUVRadius

float32 MacroUVRadius

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

◆ MaxSignificanceLevel

EParticleSignificanceLevel MaxSignificanceLevel

The maximum level of significance for emitters in this system. Any emitters with a higher significance will be capped at this significance level.

◆ MinTimeBetweenTicks

uint MinTimeBetweenTicks

Minimum duration between ticks; 33=tick at max. 30FPS, 16=60FPS, 8=120FPS.

◆ NamedMaterialSlots

TArray<FNamedEmitterMaterial> NamedMaterialSlots

Array of named material slots for use by emitters of this system. Emitters can use these instead of their own materials by providing the name to the NamedMaterialOverrides property of their required module. These materials can be overridden using CreateNamedDynamicMaterialInstance() on a ParticleSystemComponent.

◆ OcclusionBoundsMethod

EParticleSystemOcclusionBoundsMethod OcclusionBoundsMethod

Which occlusion bounds method to use for this particle system. EPSOBM_None - Don't determine occlusion for this system. EPSOBM_ParticleBounds - Use the bounds of the component when determining occlusion.

◆ SecondsBeforeInactive

float32 SecondsBeforeInactive

Number of seconds of emitter not being rendered that need to pass before it no longer gets ticked/ becomes inactive.

◆ SystemUpdateMode

EParticleSystemUpdateMode SystemUpdateMode

◆ ThumbnailWarmup

float32 ThumbnailWarmup

The time to warm-up the system for the thumbnail image.

◆ UpdateTime_FPS

float32 UpdateTime_FPS

UpdateTime_FPS - the frame per second to update at in FixedTime mode.

◆ WarmupTickRate

float32 WarmupTickRate

WarmupTickRate - the time step for each tick during warm up. Increasing this improves performance. Decreasing, improves accuracy. Set to 0 to use the default tick time.

◆ WarmupTime

float32 WarmupTime

WarmupTime - the time to warm-up the particle system when first rendered Warning: WarmupTime is implemented by simulating the particle system for the time requested upon activation. This is extremely prone to cause hitches, especially with large particle counts - use with caution.