I search for solutions in this order: Past Code, Unreal Source, Wiki, BUF, groups.yahoo, google, screaming at monitor. – RegularX

UE3:ParticleSystem (UDK)

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 06:42, 17 January 2010 by Wormbo (Talk | contribs) (1 revision: class descriptions for UDK January update (part 3))

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
UDK Object >> ParticleSystem
Package: 
Engine
This class in other games:
UT3


Properties[edit]

Property group 'Bounds'[edit]

bUseFixedRelativeBoundingBox[edit]

Type: bool

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

FixedRelativeBoundingBox[edit]

Type: Object.Box

Fixed relative bounding box for particle system.

Default value:

Member Value
IsValid 0
Max
Member Value
X 1.0
Y 1.0
Z 1.0
Min
Member Value
X -1.0
Y -1.0
Z -1.0

Property group 'Delay'[edit]

bUseDelayRange[edit]

Type: bool

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

Delay[edit]

Type: float

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

DelayLow[edit]

Type: float

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

Property group 'LOD'[edit]

LODDistanceCheckTime[edit]

Type: float

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

Default value: 0.25

LODDistances[edit]

Type: array<float>

Modifiers: editfixedsize

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[edit]

Type: ParticleSystemLODMethod

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

LODSettings[edit]

Type: array<ParticleSystemLOD>


Property group 'MacroUV'[edit]

MacroUVPosition[edit]

Type: Object.Vector

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

MacroUVRadius[edit]

Type: float

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

Default value: 200.0

Property group 'Occlusion'[edit]

CustomOcclusionBounds[edit]

Type: Object.Box

The occlusion bounds to use if OcclusionBoundsMethod is set to EPSOBM_CustomBounds

OcclusionBoundsMethod[edit]

Type: EParticleSystemOcclusionBoundsMethod

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.

Property group 'ParticleSystem'[edit]

bOrientZAxisTowardCamera[edit]

Type: bool

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

bSkipSpawnCountCheck[edit]

Type: bool

When TRUE, do NOT perform the spawning limiter check. Intended for effects used in pre-rendered cinematics.

SecondsBeforeInactive[edit]

Type: float

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

SystemUpdateMode[edit]

Type: EParticleSystemUpdateMode


UpdateTime_FPS[edit]

Type: float

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

Default value: 60.0

WarmupTime[edit]

Type: float

WarmupTime - the time to warm-up the particle system when first rendered

Property group 'Thumbnail'[edit]

bUseRealtimeThumbnail[edit]

Type: bool

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

ThumbnailWarmup[edit]

Type: float

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

Default value: 1.0

Internal variables[edit]

bHasPhysics[edit]

Type: bool

Modifiers: transient

Set during load time to indicate that physics is used...

bLit[edit]

Type: bool

Modifiers: deprecated, const

Deprecated, ParticleSystemLOD::bLit is used instead.

Default value: True

bRegenerateLODDuplicate[edit]

Type: bool

Internal value that tracks the regenerate LOD levels preference. If TRUE, when autoregenerating LOD levels in code, the low level will be a duplicate of the high.

bShouldResetPeakCounts[edit]

Type: bool

EDITOR ONLY: Indicates that Cascade would like to have the PeakActiveParticles count reset

CurveEdSetup[edit]

Type: InterpCurveEdSetup

Modifiers: export

Used for curve editor to remember curve-editing setup.

EditorLODSetting[edit]

Type: int

LOD setting for intepolation (set by Cascade) Range [0..100]

Emitters[edit]

Type: array<ParticleEmitter>

Modifiers: editinline, export

Emitters - internal - the array of emitters in the system

FloorMesh[edit]

Type: string


Default value: "EditorMeshes.AnimTreeEd_PreviewFloor"

FloorPosition[edit]

Type: Object.Vector


FloorRotation[edit]

Type: Object.Rotator


FloorScale[edit]

Type: float


Default value: 1.0

FloorScale3D[edit]

Type: Object.Vector


Default value:

Member Value
X 1.0
Y 1.0
Z 1.0

PreviewComponent[edit]

Type: ParticleSystemComponent

Modifiers: transient

The component used to preview the particle system in Cascade

SoloTracking[edit]

Type: array<LODSoloTrack>

Modifiers: transient


ThumbnailAngle[edit]

Type: Object.Rotator

The angle to use when rendering the thumbnail image

ThumbnailDistance[edit]

Type: float

The distance to place the system when rendering the thumbnail image

Default value: 200.0

ThumbnailImage[edit]

Type: Texture2D

Modifiers: editoronly

Internal: The PSys thumbnail image

ThumbnailImageOutOfDate[edit]

Type: bool

Internal: Indicates the PSys thumbnail image is out of date

Default value: True

UpdateTime_Delta[edit]

Type: float

UpdateTime_Delta - internal

Default value: 1.0

Enums[edit]

EParticleSystemOcclusionBoundsMethod[edit]

Occlusion method enumeration

EPSOBM_None 
Don't determine occlusion on this particle system
EPSOBM_ParticleBounds 
Use the bounds of the particle system component when determining occlusion
EPSOBM_CustomBounds 
Use the custom occlusion bounds when determining occlusion

EParticleSystemUpdateMode[edit]

ParticleSystemUpdateMode Enumeration indicating the method by which the system should be updated

EPSUM_RealTime 
RealTime - update via the delta time passed in
EPSUM_FixedTime 
FixedTime - update via a fixed time step

ParticleSystemLODMethod[edit]

ParticleSystemLODMethod Enumeration indicating the method by which the system should perform LOD determination

 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.
PARTICLESYSTEMLODMETHOD_Automatic 
Automatically set the LOD level
PARTICLESYSTEMLODMETHOD_DirectSet 
LOD level is directly set by the game
PARTICLESYSTEMLODMETHOD_ActivateAutomatic 
LOD level is determined at Activation time, and then left alone unless directly set

Structs[edit]

LODSoloTrack[edit]

Modifiers: native

Temporary array for tracking 'solo' emitter mode. Entry will be true if emitter was enabled

array<byte> SoloEnableSetting 

ParticleSystemLOD[edit]

Modifiers: native

Structure containing per-LOD settings that pertain to the entire UParticleSystem.

bool bLit 
Boolean to indicate whether the particle system accepts lights or not.

This must not be changed in-game, it can only be changed safely in the editor through Cascade.

Native functions[edit]

GetCurrentLODMethod[edit]

native function ParticleSystemLODMethod GetCurrentLODMethod ()

Return the currently set LOD method

GetLODDistance[edit]

native function float GetLODDistance (int LODLevelIndex)

Return the distance for the given LOD level

GetLODLevelCount[edit]

native function int GetLODLevelCount ()

Return the number of LOD levels for this particle system

SetCurrentLODMethod[edit]

native function SetCurrentLODMethod (ParticleSystemLODMethod InMethod)

Set the LOD method

SetLODDistance[edit]

native function bool SetLODDistance (int LODLevelIndex, float InDistance)

Set the distance for the given LOD index