Issues with large Niagara Emitter Flickering; Max particles per emitter?

Hello everyone!

Short description/idea:
Currently, my team and I are working with a Niagara system that should simulate a rain squall at distance. The ideal distance is around 4 kilometers, but the issue occurs at any distance >100m.

What we find is that when an emitter at a distance >100m or so has more than 500 particles, the system itself begins to flicker (the material covering the particles). We believe this to be is an issue with how particle systems are rendered at distance. Instead of rendering particles with logarithmic buffering, we think that since the distance is so great that the particles are not rendered in plains, but rather all together, causing the flickering we see.

Can anyone confirm/deny if this is the case? And if so, is there a way that we can replace the rendering pipeline for such? Ideally, we would like to have several emitters above the 500-particle mark that are capable of rendering at such distance.

For now, our workaround has been just more emitters. 5 emitters with 200 particles being spawned doesn’t flicker, but 2 emitters with 500 particles does severely. Does this imply that rendering is done in respect to the emitters, and not the distance from the main camera?

Also, if this is something that is hardcoded into the engine but easily changeable, could someone point where that is, if possible?

Open to any ideas! Thanks!

same problem. Still no solution?

If you’re using multiple emitters , another thing to try is setting the sort priorities. Each emitter can have a different one.

Pls how am I to go about doing this

Having this same issue as well and have found nothing. I have a particle system with 300,000 particles running on a 4090 and it flickers no matter what. Changed the cull distance, tried CPU compute instead of GPU, changed the bounds, I feel like I have tried it all and still no answer.

The solution we found was instead of having 1 emitter with many particles, use many emitters with less than 500 particles per emitter.

So take your desired particles (x), and divide by sought-after number of particles (y), and then create an actor that have (x/y)+1 emitters.

Hope this helps!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.