Niagara: sphere location / sample texture / displacement offset

I have a Niagara emitter / system, which -nearly- works, but not quite.

The idea is to spawn mesh particles one time and then just displace them using a texture map from then onwards.

  1. Spawn a large number of particles - once, forever.

  2. Use a ‘sphere location’ node to position the particles, in uniform mode, so they are evenly spaced

  3. During update, sample a texture and displace the particles on the edge of the sphere, so I get a kind of 3D noise sphere.

To get this far, I had to hack the ‘sphere location’ module, because it needs to know the texture before hand, and return the UV postion and red channel value of the texture for each particle.

It was all working fine, until I upgraded to 4.27. Now everything is flickering, and I think it’s because 4.26 was accidentally keeping the particles in the same order whereas 4.27 is changing the order every frame.

So I’m wondering things like:

  1. Is there an easy way to do this?

  2. I though the update part of the stack ran for each particle on each frame. But as far as I can see, I have to deal with all the particles in one stack module?

  3. Any other ideas?

Thanks :slight_smile: