Lerping part stutter

I am simply lerping a part to the cameras cframe, but when doing so you can notice stuttering.
This has been issue I have not resolved for quite some time now.

I have tried many things as well such as changing the render priority but nothing seems to have worked.

if someone could give me a proper insight into what might be happening or possibly a way to fix this much would be appreciated.

2 Likes

You could try using a body position and keep its position property. Play around with the other values til you find something that suits you.

Are you using Stepped, RenderStepped or what?

Maybe hook up a Changed event on the Camera

4 Likes

It might have to do with the networkowner. The part physics calculations change from the player to the server. While it’s changing the part ‘lags’ behind. You can disable this by disabling SetNetworkOwnershipAuto.

If that doesn’t help, I suggest putting binding the function you use to position the part in onto a renderstep. (Client only)

local rService = game:GetService("RunService")

function your_function_with_part()

end

rService:BindToRenderStep("part rendering", 200, your_function_with_part)

This happens when you are lerping a constant amount each frame, when you should be moving the part based on elapsed time (look into PID controllers and damped harmonic oscillators, they’re very nice for doing smooth motion based on an elapsed time). The movement jitters because your client drops or skips frames, which causes your lerp to be ran inconsistently, which causes jitters.

8 Likes