Once I get that upgrade to 36-hour days, I will tackle that. – Mychaeel

UE3:ParticleSystemComponent (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT3 Object >> Component >> ActorComponent >> PrimitiveComponent >> ParticleSystemComponent

Contents

Package: 
Engine
Direct subclasses:
CascadeParticleSystemComponent, UTParticleSystemComponent
This class in other games:
UDK

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.

Properties

Property group 'LOD'

bOverrideLODMethod

Type: bool

indicates that the component's LODMethod overrides the Template's

LODMethod

Type: ParticleSystem.ParticleSystemLODMethod

The method of LOD level determination to utilize for this particle system

Property group 'ParticleSystemComponent'

bAutoActivate

Type: bool

If true, activate on creation.

Default value: True

bResetOnDetach

Type: bool


InstanceParameters

Type: array<ParticleSysParam>

Modifiers: editinline

Array holding name instance parameters for this ParticleSystemComponent. Parameters can be used in Cascade using DistributionFloat/VectorParticleParameters.

SecondsBeforeInactive

Type: float

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

Template

Type: ParticleSystem

Modifiers: const


Internal variables

AccumTickTime

Type: float

Modifiers: transient

Used to accumulate total tick time to determine whether system can be skipped ticking if not visible.

bDeferredBeamUpdate

Type: bool

Set this to TRUE to have beam emitters defer their update until the data is being passed to the render thread.

bForcedInActive

Type: bool

Modifiers: transient

This is set when any of our "don't tick me" timeout values have fired

bIsActive

Type: bool

Modifiers: transient

INTERNAL Set to TRUE when InitParticles has been called. Set to FALSE when ResetParticles has been called. Used to quick-out of Tick and Render calls (when caching PSysComps and emitter instances).

bIsCachedInPool

Type: bool

bCanBeCachedInPool

If this is true, when the PSC completes it will do the following:

  bHidden = TRUE

This is used for Particles which are cached in a pool where you need to make certain to NOT kill off the EmitterInstances so we do not re allocate.

See: ActivateSystem() where it rewinds the indiv emitters if they need it

bIsViewRelevanceDirty

Type: bool

Modifiers: transient

If TRUE, the ViewRelevanceFlags are dirty and should be recached

bIsWarmingUp

Type: bool

Modifiers: transient

This is set when the particle system component is warming up

bJustAttached

Type: bool

Indicates that the component has not been ticked since being attached.

bSkipUpdateDynamicDataDuringTick

Type: bool

Flag indicating that dynamic updating of render data should NOT occur during Tick. This is used primarily to allow for warming up and simulated effects to a certain state.

bSuppressSpawning

Type: bool

Modifiers: const


bUpdateComponentInTick

Type: bool

Set this to TRUE to have the PSysComponent update during the tick if 'dirty'.

bUpdateOnDedicatedServer

Type: bool

whether to update the particle system on dedicated servers

bWarmingUp

Type: bool


bWasCompleted

Type: bool

Modifiers: const


bWasDeactivated

Type: bool

Modifiers: const


CachedViewRelevanceFlags

Type: array<PrimitiveComponent.MaterialViewRelevance>

Modifiers: transient, const

The view relevance flags for each LODLevel.

EditorLODLevel

Type: int

INTERNAL. Used by the editor to set the LODLevel

EmitterInstances

Type: array<pointer{struct FParticleEmitterInstance}>

Modifiers: native, transient, const


LODLevel

Type: int


OldPosition

Type: Object.Vector


PartSysVelocity

Type: Object.Vector


SMComponents

Type: array<StaticMeshComponent>

Modifiers: private, transient, duplicatetransient, const

The static mesh components for a mesh emitter. This is to prevent the SMCs from being garbage collected.

SMMaterialInterfaces

Type: array<MaterialInterface>

Modifiers: private, transient, duplicatetransient, const


WarmupTime

Type: float


Default values

Property Value
bTickInEditor True

Enums

EParticleSysParamType

Enum for specifying type of a name instance parameter.

PSPT_None 
PSPT_Scalar 
PSPT_Vector 
PSPT_Color 
PSPT_Actor 
PSPT_Material 

Structs

ParticleEmitterInstance

(No member variables.)

ParticleSysParam

Modifiers: native

Struct used for a particular named instance parameter for this ParticleSystemComponent.

name Name 
No UObject reference
EParticleSysParamType ParamType 
float Scalar 
Object.Vector Vector 
Object.Color Color 
Actor Actor 
MaterialInterface Material 

Delegates

OnSystemFinished

delegate OnSystemFinished (ParticleSystemComponent PSystem)


Native functions

ActivateSystem

native final function ActivateSystem ()


ClearParameter

native final function ClearParameter (name ParameterName, optional EParticleSysParamType ParameterType)

clears the specified parameter, returning it to the default value set in the template

Parameters:

  • ParameterName - name of parameter to remove
  • ParameterType - type of parameter to remove; if omitted or PSPT_None is specified, all parameters with the given name are removed

DeactivateSystem

native final function DeactivateSystem ()


GetEditorLODLevel

native final function int GetEditorLODLevel ()


GetLODLevel

native final function int GetLODLevel ()

GetLODLevel - gets the LOD level currently set.

GetSkipUpdateDynamicDataDuringTick

native final function bool GetSkipUpdateDynamicDataDuringTick ()

Function for retrieving the bSkipUpdateDynamicDataDuringTick flag.

KillParticlesForced

native final function KillParticlesForced ()


ResetToDefaults

native final function ResetToDefaults ()

stops the emitter, detaches the component, and resets the component's properties to the values of its template

RewindEmitterInstance

native function RewindEmitterInstance (int EmitterIndex)

Rewind emitter instances.

RewindEmitterInstances

native function RewindEmitterInstances ()


SetActive

native final function SetActive (bool bNowActive)

calls ActivateSystem() or DeactivateSystem() only if the component is not already activated/deactivated necessary because ActivateSystem() resets already active emitters so it shouldn't be called multiple times on looping effects

Parameters:

  • bNowActive - whether the system should be active

SetActorParameter

native final function SetActorParameter (name ParameterName, Actor Param)


SetBeamDistance

native function SetBeamDistance (int EmitterIndex, float Distance)

Set the beam distance

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • Distance - The value to set it to

SetBeamEndPoint

native function SetBeamEndPoint (int EmitterIndex, Object.Vector NewEndPoint)

Set the beam end point

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewEndPoint - The value to set it to

SetBeamSourcePoint

native function SetBeamSourcePoint (int EmitterIndex, Object.Vector NewSourcePoint, int SourceIndex)

Set the beam source point

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewSourcePoint - The value to set it to
  • SourceIndex - Which beam within the emitter to set it on

SetBeamSourceStrength

native function SetBeamSourceStrength (int EmitterIndex, float NewSourceStrength, int SourceIndex)

Set the beam source strength

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewSourceStrength - The value to set it to
  • SourceIndex - Which beam within the emitter to set it on

SetBeamSourceTangent

native function SetBeamSourceTangent (int EmitterIndex, Object.Vector NewTangentPoint, int SourceIndex)

Set the beam source tangent

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewTangentPoint - The value to set it to
  • SourceIndex - Which beam within the emitter to set it on

SetBeamTargetPoint

native function SetBeamTargetPoint (int EmitterIndex, Object.Vector NewTargetPoint, int TargetIndex)

Set the beam target point

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewTargetPoint - The value to set it to
  • TargetIndex - Which beam within the emitter to set it on

SetBeamTargetStrength

native function SetBeamTargetStrength (int EmitterIndex, float NewTargetStrength, int TargetIndex)

Set the beam target strength

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewTargetStrength - The value to set it to
  • TargetIndex - Which beam within the emitter to set it on

SetBeamTargetTangent

native function SetBeamTargetTangent (int EmitterIndex, Object.Vector NewTangentPoint, int TargetIndex)

Set the beam target tangent

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewTangentPoint - The value to set it to
  • TargetIndex - Which beam within the emitter to set it on

SetBeamTessellationFactor

native function SetBeamTessellationFactor (int EmitterIndex, float NewFactor)

Set the beam tessellation factor

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewFactor - The value to set it to

SetBeamType

native function SetBeamType (int EmitterIndex, int NewMethod)

Set the beam type

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • NewMethod - The new method/type of beam to generate

SetColorParameter

native final function SetColorParameter (name ParameterName, Object.Color Param)


SetEditorLODLevel

native final function SetEditorLODLevel (int InLODLevel)


SetFloatParameter

native final function SetFloatParameter (name ParameterName, float Param)


SetKillOnCompleted

native function SetKillOnCompleted (int EmitterIndex, bool bKill)

SetKillOnDeactivate is used to set the KillOnCompleted( flag. If true, when the particle system is completed, it will immediately kill the emitter instance.

Set this to true for cached ParticleSystems

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • bKill - The value to set it to

SetKillOnDeactivate

native function SetKillOnDeactivate (int EmitterIndex, bool bKill)

SetKillOnDeactivate is used to set the KillOnDeactivate flag. If true, when the particle system is deactivated, it will immediately kill the emitter instance. If false, the emitter instance live particles will complete their lifetime.

Set this to true for cached ParticleSystems

Parameters:

  • EmitterIndex - The index of the emitter to set it on
  • bKill - value to set KillOnDeactivate to

SetLODLevel

native final function SetLODLevel (int InLODLevel)

SetLODLevel - sets the LOD level to use for this instance.

SetMaterialParameter

native final function SetMaterialParameter (name ParameterName, MaterialInterface Param)


SetSkipUpdateDynamicDataDuringTick

native final function SetSkipUpdateDynamicDataDuringTick (bool bInSkipUpdateDynamicDataDuringTick)

Function for setting the bSkipUpdateDynamicDataDuringTick flag.

SetTemplate

native final function SetTemplate (ParticleSystem NewTemplate)


SetVectorParameter

native final function SetVectorParameter (name ParameterName, Object.Vector Param)