Rotate a part/model on a Vehicle

Recently i have been working on a tank game, and i used HingeConstraints to Rotate the turret (The user sits in the Gunner seat and with the WASD keys moves the Barrel and Turret)

However in-game this HingeConstraint method has shown to be laggy and made aiming complicated.
I then decided to set the tanks :NetWorkOwner() to the Player in the gunner seat. The performance improved but still, turret movement was inconsistent and delayed

Is there any way i can rotate the turret using a different method ?

Note: Vehicle physics are a key part of the game so i dont think CFrames is an option, unless ?

Are you changing the rotation of the model with hinge constraints “TargetAngle” or just changing the CFrame rotation? Because I doubt hingeconstraints would appear laggy. If the turret movement was inconsistent and delayed then change the turnspeed too