Curl noise force not working as expected - please help


#1

Niagara_Particles_01

Hi guys,
When i try to apply curl noise force through a graph, the force is being applied just once in the beginning and then it doesn’t work, even though it should apply it four times… (See the graph on the right side). Can you guys figure out what im doing wrong ? Thanks so much for the help :slight_smile:


#2

Without digging into your niagara stack it’s tough to say, but I would guess your lerp between the meshes is overriding your curl force. Try removing the modules responsible for the lerp and make sure your noise pulses are working on their own. I suspect after you blend from the first noise pulse to the target location on the mesh, you never blend your noise back in.


#3

Ahh, makes sense. Thanks so much ! Im kind of new to Niagara and actually even Unreal Engine, any chance you could explain this a bit ? - “I suspect after you blend from the first noise pulse to the target location on the mesh, you never blend your noise back in.”
I’ve added a curl noise force in my particle update, how do i make it work with the lerp ?


#4

Yeah I agree with Jaybles here: make sure you can run the curl noise impulse functionality all by itself. So make a new emitter, just a cloud of particles. Apply your curl noise idea with the impulses on that. Make that work. Then move on over to making it lerp in and out with the mesh.

From what I can see, I would guess that after applying the curlnoise once, the particles have been spread out, so when you try to re-apply it, you are just applying it on particles that are already scattered by a curl noise.

Again, we don’t have access to your stack, but if you are lerping between positions: you’re not actually moving the particles per se. You’re just moving them from one attachment to another (ie namespaces containing vectors). This is why on your second lerp in the vid, the particles stretch out. The standard curl noise module will just move the Particle.Velocity and Particles.Position namespaces.

To do what you’re trying to do, you’ll have to move Particles.Position itself when you move particles back to the model. The lerp module won’t do this for you.

Without digging through the stack it’s hard for us to give you an exact answer.