Search the Community
Showing results for tags 'particles'.
Found 4 results
Particle emitter pivot is invisible. It's very hard to select an emitter object unless you do it through the scene panel. However the pivot becomes visible once you delete the emitter and undo. Emitter will re-appear along with the pivot "cube".
I've been playing round with particles for some longer session in the editor recently and I am seeing them bunch up after a while of letting them run. I am using a number of emitters together, up to about 5 (as you need to if you want something a bit more convincing or interesting) but with fairly low quantities (e.g. about 10-20 each). The waterfall I was doing ended up with all the water bunching up so it looked like someone was throwing it from a bucket. If I changed the duration (even by 1) then it seems to restart the emitter, 'reseeding' it so the particles a are spread out again. I don't think it's related to multiple emitters or low particles but its more obvious in that situation. I don't think I'm doing anything special. I've seen this before but at the time I think maybe it was just an editor thing but I see it in game as well There could be a reasonable explanation for this relating to the low amount of particles but it seems you should be able to have low numbers and have a way to avoid bunching as well. Bug or known way round this?
Particle engines are commonly used for fire and smoke effects adding a lot of eye-candy for little effort. Every frame an emitter creates a number of billboard sprites along a vector. Normally this is not an issue when movement along this vector between frames is quite small. But what if you're talking about something that moves really fast between frames? Such as a rocket launcher or space-ship? Fellow Brit and indy developer Cliff Harris of Gratuitous Space Battles fame ran into the same problem. Here's a screenshot from his blog of a rocket. The rocket moves too far between frames to space out the particles in a pleasing manner. By adding a line of particles between each frame update a more pleasing effect is achieved. In Combat-Helo the hero-ship is typically loaded with several 70mm rockets that accelerate to 700 meters per second in approx 1.5 seconds. Even maintaining a short smoke trail of 10 meters can't be maintained as the rocket distance between two frames might be 50 meters or more. A linked list of billboards (TMesh CreatePlane()) is being trialled. UsingMacklebees billboard shader tweak and changing... ... gl_Vertex.x,gl_Vertex.y to ... gl_Vertex.x,gl_Vertex.z ...to work for Planes a 2D billboard function was implemented which handled colour and timing properties with a deviation (waver) offsets. This creates a ribbon of 50-150 quads (TPlanes) aligned to the camera using the billboard shader. Scale of each quad is roughly double the space between them to ensure some overlap and consistency. The smoke texture has baked lighting with a normal map however a normal map is redundant since the quad is camera aligned and rendered in the transparency layer. The spacing produces a good fill between two positions each frame. In the example image below the length of the trail is 75 meters, each particle doesn't require much updating since this was written for a specific purpose. As the shader takes care of orientation only timer tests, waver and alpha-colour needs updating although some extra instruction for management could be implemented (see footnote). Don't attempt to use ScaleMesh() as that slows the whole pipeline down. If you need to change the size of a particle you'll either have to do it in the shader or delete the particle and replace it with a larger one. Same again showing the AABB of each TMesh/Plane. That's about as fast I can can come up with using LE commands. The next stage is to replace the TPlane billboards with a single entity built using a TMesh and adding triangles as needed. Other optimisations might include changing the number of particles depending on the 2D length between the head and tail. We need more 'filler' if seen from the side than head on. Worst case would be a full salvo from 4 pods (each pod carries 9 rockets), in this event the particle manager could limit them. With the Leadwerks emitter function, once created you can't change the number of particles so having this level of control is handy for all manner of effects that need adjustment over time. This is of course slower than the LE particle system.