So I'm making a small unrealistic plane, but whenever I tell the script to orientate the plane, it's really laggy, this is what I mean:
https://youtu.be/BaL5R86oCqk
Also, this is the code I use to orientate it:
frame.CFrame = CFrame.new(frame.Position,script.Parent.MouseVectorP.Value)
Loops cause a lot of lag if you don't add a wait(). The thing is, wait() can cause lag standalone if you don't add a number, like wait(.1). You can add a wait() but you can also do an event.
script.Parent.MouseVectorP:GetPropertyChangedSignal("Value"):Connect(function() frame.CFrame = CFrame.new(frame.Position, script.Parent.MouseVectorP.Value) wait(.01) end)
Above we have an event that fires every time the value of MouseVectorP changes, and once it fires we orientate the frame accordingly.