Butterfly Particles

Published August 30th, 2013
Category Development, Portfolio


I decided to see if I could recreate a particle effect I’ve seen in a lot of games; butterflies fluttering around with a pretty erratic and “random” (as much as possible) movement. I also wanted to restrict myself to be as sparing as possible when it comes to resources (space, draw calls) the effect uses when rendered on screen. I created the effect using Cascade (particle system) in UDK, mesh with Autodesk 3DS Max and texture map in Adobe Photoshop CS5.

I’m pretty satisfied, the only thing I might change in another emitter is creating a pattern that the butterfly follows and a rotation in the z-axis that aligns the head of the butterfly with the direction it’s going. Right now the butterfly is rotating in all axises in an orbit with some velocity and a pretty large offset, but the mesh is not following the orbit, as in it does not rotate with the direction it’s going.

The effect of the butterfly flapping its wings is done by resizing the scale of the z-axis using the size scale modifier with distribution type set to vector uniform and in the graph I set the z max value to 1 (keeping the original size) and the min value to -1 (keeping the original size but reversing it so it points down). The mesh is built up with two planes each angled at 45 degrees from the 0 point in all axises.

Here’s the effect itself, a short loop showing the concept

Unreal Engine – Cascade

Here’s an image pulled from the particle system with the modifiers I’ve used to create the effect. Included the setup of the size scale modifier.

cascade_setup

Unreal Static Mesh Editor

And here’s the mesh itself, very simple setup (two planes), low vertices count to make as little impact as possible in a scene at run-time.

geometry

Diffuse texture map created with Adobe Photoshop. Grayscale so it’s tintable by the “color” modifier inside Cascade, which enables it to be colored in any RGB scale.

diffusemap

texture_butterfly

So that’s that. Feel free to ask questions about the setup in the comments.