The Unreal Particle Effects
Engine
Unreal has a very simple, yet effective particle
system in the engine, which is used in few effects in Unreal and Unreal
Tournament. These effects can be seen in the ASMD 'projectile' in Unreal,
and the spawning effect in Unreal Tournament. You can create your own
particle effects quite easily, with a modelling program such as 3ds Max
and some basic knowledge of Scripting in Unreal/Unreal Tournament.
Creating the particle animations and 'cloud'
shapes:
Take a simple sphere in 3dsMax, and delete all the faces
apart from one face. This face is important, because there's some strange
need for at least one face for the importing of a 3ds model. Move the
vertices around into a shape you like. This will be your first frame. Name
the object Frame01.
To make further frames, clone the object and then move the
vertices one by one by a small amount. This is kind of tedious, but the
more time you spend on it, the more fluid the motion.
Repeat this
process until your animation is finished.
There are a few things
you should make sure of:
a) Have the same amount of vertices in each
frame (object)
b) You cannot change the mesh scale of the particles in
game, so try taking a guess at the size of the model in game, and don't
make the model too small or big.
Save and Export your model as Particles.3ds
Create your particle textures:
As usual make
the sizes powers of 2, i.e. 256x256, 64x8 etc, and have the textures
palleted to 256 colours. If you want the particles to be transparent there
are three ways of doing it:
a) Masking:
Make the last colour in
the pallet the colour you want as transparent.
b) Transparency
1:
The darker the colour the more transparent the part of the texture
is, and vice versa.
c) Transparency 2:
If you would like some
dark parts of the texture to show, but don't need greys to be opaque then
use this method. The nearer the colour is to RGB: 128,128,128 the more
transparent it is. This method can create strong looking colours.
Save the file as PCX.
Use the 3ds2unr.exe to convert the model to Unreal /
Unreal Tournament.
Modify the uc file before the compile. Perform these
changes:
Remove:
#exec TEXTURE IMPORT NAME=xxx FILE=MODELS\xxx.PCX
GROUP=Skins FLAGS=2 // Material #1
Remove:
#exec MESHMAP SETTEXTURE
MESHMAP=Particles NUM=1 TEXTURE=xxx
For each of your particle textures
add this line, changing the ? to the texture number:
#exec TEXTURE
IMPORT NAME=Particle? FILE=.PCX
GROUP=Particles
Find the section containing the
lines:
defaultproperties
{
DrawType=DT_Mesh
Mesh=Particles
}
Add
before the:
"DrawType=DT_Mesh":
bParticles=true
Texture=Texture'..'
If
you have more than one particle texture you want to use then
Add:
bRandomFrame=true
Then for each Particle Texture add the
following: (n starts at 0)
MultiSkins[] =
Texture'..'
Compile the package.
Add your code to play the animation(s) just like a normal
model.
If you want to change the size of the particles use the
DrawScale for the sprite images.