34
\$\begingroup\$

I'm not much of an artist, but I'm trying to make decent particle effects in a 2.5D game. I'm making a replica of Wii Play's "Tanks" and I can't quite get the explosions to look good. I'm not going for the exact style as they had, probably something more realistic, less childish.

My particle engine just draws a 2d texture on the screen, and supports, per particle: starting position, velocity, gravity (or any acceleration), air resistance (drag), color including alpha, starting size, size expansion rate, lifetime, and fade out rate.

In my tank explosions, I'm drawing around 100 particles, and I've been tweaking parameters for days trying to get things looking good. So I'm wondering, what are some tips for getting good results? What's most important, specifically for explosions?

  • Having good quality textures?
  • Having a variety of textures?
  • The right colors?
  • Realistic movement of the particles?
  • Having lots and lots of particles, many more than 100?

Check out this image. I tried to replicate it by making particles that shoot out and create more particles in their wake. But mine still isn't anything like that.

\$\endgroup\$
5
\$\begingroup\$

For explosions in particular it's very important to get the blending right. One very important element is the use of pre-multiplied alpha. Quoted from the link:

What if you want a single particle system that has additive flame particles turning into sooty lerping particles as they age? You can't change renderstate in the middle of a particle system, that's silly. Who can help us now? Why - it's Premultiplied Alpha Man - thank god you're here!

So you can have particles change from additive to lerp as they get older - all you do is change the alpha value from 0 and the texture colour from a firey red/yellow colour towards an alpha of 1 and a dark sooty colour.

\$\endgroup\$
4
\$\begingroup\$

If you have a good looking particle system then you can consider to use some kind of spherical billboard implementation to remove the annoying cutting and popping artifacts.

You can found an example at http://www.iit.bme.hu/~szirmay/firesmoke.pdf.

\$\endgroup\$
2
\$\begingroup\$

A huge volume of particles isn't necessary. What will help you the most is having each particle blend between a series of textures over time. So, have it start as a small bright ball, expand to a bigger orange flare, then to a light gray smoky patch, which then transitions to a smaller darker fading spot of smoke.

Even blending between a couple of textures will make a huge difference in how your particles look.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.