0
\$\begingroup\$

I noticed by reading some tutorial around the web, that when dealing with particle systems, you can both use these approces:

  • Black background on the single particle and additive mode as blending mode for drawing
  • Transparent background on the single particle and alpha blend mode for drawing.

What are the differences between the two approces?

\$\endgroup\$
  • \$\begingroup\$ I think the main difference is that the alpha blend version will require particle sprites to have an alpha channel. So a bit more memory used perhaps? \$\endgroup\$ – glampert May 12 '14 at 18:28
  • \$\begingroup\$ Additive will washout to pure white if you have a high enough level of overdraw (which is very small). Proper alpha blending is not going to have this problem, but it also requires you to sort your particles. \$\endgroup\$ – Andon M. Coleman May 12 '14 at 18:50
2
\$\begingroup\$

Transparent background on the single particle and alpha blend mode for drawing.

This should be the most common method for general particles. The problem of this method is you have to sort the particles and rendering them back-to-front to get the alpha blending works correctly. It would bring a heavy burden on CPU when there is a lot of particles. And if the particles are not simple billboards and may intersect with each other, it may be unsolvable with simple sorting.

Black background on the single particle and additive mode as blending mode for drawing

You don't need to sort the particles, as the order of particles doesn't matter in additive blending. However, this method only works for a smaller set of effects, like fire.

\$\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.