The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall

Legacy:Emitter

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT2003 :: Actor >> Emitter (Package: Engine)

The Emitter class is Epic's particle emitter system (the other system is the xEmitter). These can be placed in maps for a large variety of effects (waterfall, fog, smoke, sparks); they are also used by scripted elements such as the Redeemer explosion, the swirly lights over weapon bases, and the Ion Cannon explosion and beam.

The Emitter system works by using subobjects, which are all ParticleEmitters (or child classes of this). It's these subobjects than actually generate particles, and one Emitter can hold many of them.

Remember to set bNoDelete=False if you want to create a spawnable subclass.

Properties[edit]

Emitter[edit]

array<ParticleEmitter> Emitters 

The Emitter -> Emitters array holds inline objects: the property dialog expands to show their properties. See Add An Inline Object for how to use this.

It is possible to add an object to this array using unrealscript. Emitters is a regular dynamic array of ParticleEmitters. Whether the new ParticleEmitters will work is untested.

Using the same ParticleEmitter object within another Emitter means you get the same properties – but only half the particles for each Emitter. The maximum number of particles is being shared out between them. The velocity goes weird too.


Main[edit]

bool AutoDestroy 
If this is set to true, the emitter will destroy itself when all the particles of its emitters have died.
bool AutoReset 
If this is set to true, the emitter will reset itself and all its emitters when all the particles of its emitters have died.
bool DisableFogging 
Distance fog will have no effect on particles.
rangevector GlobalOffsetRange 
range TimeTillResetRange 
If AutoReset is true, this is the time delay range for resetting.

Hidden[edit]

bool ActorForcesEnabled 
box BoundingBox 
bool DeleteParticleEmitters 
float EmitterHeight 
float EmitterRadius 
vector GlobalOffset 
int Initialized 
ParticleMaterial ParticleMaterial 
float TimeTillReset 
bool UseParticleProjectors 

Known Subclasses[edit]

Related Topics[edit]

Custom Emitters[edit]

Discussion[edit]

Foxpaw: Apparently if you get too many particles, the game exits without any error messages or anything - just drops back to windows. At first I thought it was my crappy video card overheating or something, but then I found that it was actually a result of a particle system I had made. (actually, a particle system composed of a pile of other particle systems.)

EricBlade: I just discovered that Emitters[0].MaxActiveParticles *= 1.2 will crash. Anything between 0.0 and 1.19 seems to work, 1.2 or higher is a crash. Unfortunatly, this only seems to affect placed in level Emitters, and not dynamically Spawn()ed emitters. And the MaxParticles is a const, so no access to that one from the code. :-S

MythOpus: Using an animated texture with an emitter also crashes UnrealEd.

Vaptor: i found theres 1 exception Firetextures/WetTextures they seem to work no crashes.

However Editor sometimes will corrupt the new texture package when you try to save a firetexture.

how it was corrupted is the worst part the data looks fine but crashes when it tries loading.

Murphy: Animated textures work on emitters in UT2004. I don't know since which engine version, but I used a two-frame animated texture in an emitter without problems (v3369) and it works in Killing Floor, too. Just to let everyone know so no one shies away from using this because they read on unreal wiki that it crashes unrealed. :)