Editing particle systems to not disappear when not in view?


I dont know any other say this... is there any way to Edit a particle system to not disappear when not in view?


Edit: Bump

Do you mean when it is outside the camera's field of view? Then no, I don't believe so, however you could temporarily switch to another camera with a larger field of view, maybe?

If you mean behind an object then, no I don't believe Unity has an option for that, sorry.

Instead of a particle system you could use a 2D-animated-texture projected on a plane (or cyinder or sphere) in front of your camera. (Maybe a GUITexture could also work.)

The texture could look like this:

  • in the upper part falling rain drops seen from bootom up

  • the lower part with bubbles and/or ripples

  • in the middle standard raindrops

(Not shure how to “paint” that. :wink:

Show only a part of the texture and when the player looks around modify the u coordinates and v for up and down.

Particles would be cheaper than animating large textures I think. At least to sell the effect of rain effectively. There are many styles to rain though and depending on if your making a racing game or a shooter, would be a different technique. Using a plane emitter allows you to racast to the sky for logical indoor / outdoor checks

Ideally, you would just write a shader for this tho. From standard unity I would attach a particle system to your character and if occulsion is an issue: make a 2nd camera that only renders a weather layer. Rain is discussed here: http://forum.unity3d.com/threads/9965

If you want rain that looks like a cobblestone city, the magic is really in the puddle effects and not in the rain drops :) For some internet digging im sure you can find someone that has this in a prefab already tho. Dig around: http://danim.tv/blog/archives/unity3d-experimental-fx-exemple/

One thing you can do that is specific to your situation is to check the player's rotation angle to see if he is looking down. If he is at a point where the particles don't show, have a separate, smaller particle for this and emit that instead. This particle can just drop around the player as he is looking down and won't be able to see far anyways.

Your particle system disappears when looked at sidewise because the ellipsoid is flat. So now and then you'll manage to look in a direction where there is nothing.

You can have similar effect to what you're trying to achieve using a ball-shaped emitter parented to the camera / character and set to use world space. I made a quick video using your scene as a starting point.

(will edit this when video is online).

Update 1

Well, while vimeo is delaying my video in its encoding queue, here is my suggestions in text:

  • parent the particle system to the camera, so that wherever character looks it sees particles
  • make the particle system use world space. this way rain drops / textures will not "stick to the screen", instead character will be able to move through the rain
  • use the same size for ellipsoid in all direction
  • use wide range of energies (e.g. 0.1-1.0). this way particle system will regenerate quickly while still have enough particles with longer life span to look like rain. as character moves the particle system will regenerate at its new position
  • set the world speed to the direction of the raindrops falling, add small random (x, z) speed for more natural feel.

play with the parameters as you actually moving the character, to find what works best.

Update 2

Video: http://www.vimeo.com/18499332

Could just animate a model to be a particle system. I'm sure that you can find a generator or something of the sorts.

So, what I'm saying is, if you want a fire particle effect, make it a model, and just instantiate the model, and it'll be there... Kind of like how they do it in 3D modeling applications...

Just an option you could do, if it's fire, then you can just have 2D textures spawn on each other, pretty much re-wrte the current particle system but make it how you'd like it and simplified...

If this doesn't make sense, than say so, I can explain more.

Good luck!