Particle system issue when frame rate varies

I’m having an issue with the particle system where particles will not behave properly if they are rendered on a frame with a different frame rate to the previous frames.

when I play games on this specific machine, I always get maybe one frame per second which is rendered at a much slower rate than usual.

Usually, the effect is unnoticeable and everything behaves normally, however for some reason this trips out the particle engine in UE4.5.

The biggest issue is particles being spawned with miscalculated velocities. Here are some screenshots:

21337-untitled.png

21338-untitled2.png

The pulses in the trail in the first screen shot happen exactly when a frame with a lower frame rate is rendered.

Things get worse when I set the particles to inherit the velocity of the spaceship. The velocity ends up grossly miscalculated and you end up with particles shooting forward and backwards from the ship when the particles should just stay at the exhaust bell ( they do on frames rendered at the usual frame rate).

This effect leads me to believe this may actually be a bug in the particle engine itself since they miscalculate their velocity while the spaceship behaves completely normally under these slow frames. I also see nothing like this in any of the other games i have that run under the same frame rate conditions (even other unreal engine games).

Maybe some of you can reproduce this by creating a similar particle system and hitting the print screen button and watching what happens. I captured these two screenshots by forcing the frame dips to happen by doing that.

This is simply a problem arising from the discretization of time in combination with fast moving particles and emitters. In your first picture, what happens is that the emitter (the jet’s engine) have moved a larger distance between two frames in the case of a hitch. You could potentially counteract this problem by using a spawn per unit module, which will try to make sure to spawn a number of particles for a specific movement of the emitter. It should try to spread the spawn positions between the last and current positions of the emitter, to avoid things like the gaps you’re seeing.

sorry but the issue is not resolved. How can I fix the second issue where the velocities are being calculated incorrectly? is this an engine bug?

Hey mbernardi -

Can you let me know exactly how you have your inheritance setup and how the particle system is attached to your rocket?

Thank You

Eric Ketchum