Rain, snow or other atmospheric particles

I have searched the documentation and forums but have not seen something ike this so far.
I wonder how to implement something like rain or snow or volcanic ashes or any kind of particles in the air, maybe even like those spores in the movie Avatar that floated arround in the forrest.

I guess the worst would be to spawn a multitude of billboards showing a sprite and let them fall towards the ground, but that would mean a real large ammount in case of snow or rain.
Maybe a postfilter, but calculating the depth would be a lot of work i guess.
Can this be done with some kind of fog filter ?

Maybe somone has done something like this allready ?

I’ve seen several ideas for this.

If you want to use a particle emitter, the idea is to move it along with the camera, so you don’t have to cover a huge area, just the surroundings of the cam.
In JME to do that you can use a camera node and attach the particle emitter to it.

The filter way is more complicated as i will require you to have some shader knowledge. Also To have a convincing effect you’d need at least to have several layers of rain to simulate distant drops from close drops. Maybe you’d have to sample depth too to avoid displaying drops that have hit the ground etc…

Yes, the particle emitter would probably a quick and dirty way to do this to get a decent result, but depending on the magnitude of particles the distance should be blurred in some way too like looking through heavy rain.

I guess a filter would be the best way, altho i am not very familiar with shaders yet.

Are the particles tied to absolute position or will they move with the camera as you move the node?

@zarch said: Are the particles tied to absolute position or will they move with the camera as you move the node?
the 2 modes are supported

Actually to be a bit more precise, you can emit particles in world space so once they are emitted they continue there movement in word space. Or you can emit them in local space meaning that they are moving relative to the particle emitter.

Nice :slight_smile: