news about forums links tools tutorials contact

Unreal Particle Effects - author: Ben Clayton, Fishface@Alien-Legion.com
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.