I’ve been trying to look for a way to make the CFrame.lookAt() function smoother, since it’s too rigid, but I haven’t found a reliable solution so far. I’ve tried using Lerp() however I haven’t been able to get it working with server scripts. All help is appreciated!
while task.wait() do
script.Parent.Base.CFrame = CFrame.lookAt(script.Parent.Base.Position, script.Parent.Target.Value.Position, Vector3.new(0, 1, 0))
end
Mover Constraints | Roblox Creator Documentation I use these in for example my FPS character controllers to turn smoothly towards where you look… but for your usecase you can make it make a part face another part in a smooth way.
Way more performance friendly and achieves basically the same as tweening with customizability plus it’s faster… got nothing to lose with using them. I couldn’t imagine creating tweens every frame (trust me I know how bad that runs on the server), you’d have to delay those and risk precision loss.
True but again, constraints are physics-based. So it depends on what the OP is trying to achieve (yes, there are collision groups but then again they get complicated if you have too many things).