Emitters

Created October 2004

What are Emitters?

Emitters do exactly what it says on the tin, they emit things. Usually a 2d texture (although you can use a 3d model if you want). It basically shoots out this texture in a color, direction, speed, rotation and lots of other things of your choosing. This tutorial will explain what each of these options does, it will however only cover sprite emitters.

How do I place Emitters?

Open your actor browser goodies_emitters_01 and find [+]Emitter. highlight it as shown below.

Now right click roughly were you want you're emitter to appear, of course you can move it once it's been placed. Before you do anything more click on the Real Time Preview button (the joystick) in the top left of you're perspective view port. Now you can actually see how you're emitter will behave in game. You're view port should now show both the emitter icon and the joystick highlighted.

How do I modify Emitters?

Now that you have the emitter in you're map its time to start changing how it behaves. First go to your emitter's properties window by double clicking it. Find [+]Emitter and expand it. Click on the Add button and you will see a screen like this:

Select Sprite from the drop down menu and then click the New button. The reason you need to do this is because it allows you to have several emitters all in the one actor and location, which can be very useful when creating more advanced emitters. You'll be confronted with a lot of options for your emitter, so for I'll just go through the main ones. First go to [+]Texture in the sub-section that appears, find the texture field and press the ... button adjacent to it - this will bring up the texture\browser, so here you can choose the texture of the particle you want to emit. You can make your own, but there are several good ones in the R6SFX_T.utx package, so highlight a single particle on a black background, then back in the properties window click use. Somewhat higher you will find DrawStyle set this to PTDS_Transluctent. The draw style alters how the texture is portrayed in the game, fiddle with it and take a look at some of the effects. Also check out [+]Size -> [+]SizeScale to edit the minimum and maximum sizes for your particles.

Now that you have the texture all set up you'll want it to move a bit, so maximize [+]Velocity. There's a lot of options, but all you're really interested in is [+]StartVelocityRange which determines the speed of your particles as they leave the center of the emitter. X and y determine the horizontal speeds and Z the vertical, you ENTER a maximum and minimum for each direction, and the particles will spawn randomly anywhere within those speeds. So if you ENTER 5 and 1 it will send particles out at a rate anywhere between those two. One crucial thing to remember is that you can ENTER negative values, so if you would like your particles to go both up and down enter 5 and -5 into the Z field.

So you're particles are shooting out nicely, but you can't direct them yet can you? Go back into the main properties and then to [+]Advanced and set bDirectional to true. Now you're actor will have an arrow, but you're particles won't react to it yet. Go back into you're emitter's settings and expand [+]Rotation, set UseRotationFrom to PTRS_Actor - you now have control over the direction of you're particles, and your velocity will stay relative to this arrow.

Chance are you're not happy with a bunch of things, so lets start with the rate of particles being expelled. The two options that concern you are in [+]General - MaxParticles which controls how many particles can be around at one time. The other is in [+]Spawning -> ParticlesPerSecond which regulates how many particles are expelled per second. So if you set both these values to fifty the particles will only exist for 1 second, because they have to return to the emitter to be expelled again. The best way to find the ideal partnership for you emitter is as always experimentation. Another vital part of your emitter is in [+]Time ->[+]Lifetime Range where you can set how long the particles exist for, using your trusty minimum and maximum values.

Some of the cooler options are [+]Acceleration in which you can adjust how the particles move once they've left the center of the emitter, so if you set Z to -50 they'll start moving down faster the further out they get, thereby not defying gravity. Also you might want to entertain the idea of using [+]Rotation - SpinsPerSecondRange, where again you can set the minimum and maximum for how much you're particles will spin to stop them from all looking the same as they travel through the air. If you have a grayscale picture (black background, grey+white particle) you can colour it using [+]Color -> [+]Color Scale, after adding a new color select the actual color and setting relative time to 0 all that is left is turning UseColorScale to True. If you add more colors you can use the relative time to fade from on to the other as the particles move out. On a similar note, you can use [+]Fading to fade the particles in and out of transparency as they move in and out of existence.

The last thing left to cover is [+]Location, which allows you to set where the particles spawn, as opposed to all coming from one central point you can spread the effect out over a larger area. In [+]StartLocationRange you can specify where the particles spawn, remember you can use negative numbers.

Examples of Emitters

Here is an example map showing the following emitters and ideas from above:

Sparks - Color, Velocity, Direction, Acceleration, Fading - The 'Scatter' Effect

Rain - Location, Velocity - The 'Precipitation' Effect

Fountain - Several Emitters in One, Location, Fading, Size Range, Velocity, Acceleration

Light Beam - The Rail Effect

Smoke - The Falling Effect

Written by Concept.

If you feel something is not explained properly or is missing, contact me .

[Home]