Niagara: Looping beam with infinite lifetime

At the moment I use a custom expression on Particle State Lifetime:

System.CurrentLoopDuration + Engine.DeltaTime

This adds 1 tick to Kill time and therefor it will overlap just 1 frame. With translucent objects this almost unnoticable in-game (at least in my case). At least it does not blink.

I’m still looking for a better solution though. I find it kind of frustrating the Niagara system is simply not suited for this type of behaviour. It begs the question, is it actually better to have (simple example) a health pickup rotating at Niagara level, or is it better to do this at blueprint level with a ‘rotating movement’ component or with nodes (set actor/component rotation). I kind of prefer the Niagara way but I have no actual data about performance cost. I just think the Niagara GPU Compute Sim would be better but that’s just an assumption. Can anyone shine some light on this? Because if there is no actual performance difference I’d rather revert back to the classic node based solution.

1 Like