made the plane move forward , back and rotate it using the arrows keys
Follow Player: public class FollowPlayerX : MonoBehaviour { public GameObject plane; private Vector3 offset = new Vector3(30f , 0f, 10f); // Update is called once per frame void LateUpdate() { transform.position = plane.transform.position + offset; } } Player Control: public class PlayerControllerX : MonoBehaviour { public float speed = 20; public float rotationSpeed =100 ; private float verticalInput; private float horizontalInput; // Update is called once per frame void FixedUpdate() { // get the user's vertical && horizontal input verticalInput = Input.GetAxis("Vertical"); horizontalInput = Input.GetAxis("Horizontal"); // move the plane forward using the arrow transform.Translate(Vector3.forward * speed * Time.deltaTime * horizontalInput); // tilt the plane up/down based on up/down arrow keys transform.Rotate(Vector3.left , rotationSpeed * Time.deltaTime * verticalInput); } } Spin Propeller: public class spinPropeller : MonoBehaviour { private float spinSpeed = 600f; // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { // make the propeller spin transform.Rotate(Vector3.forward, spinSpeed * Time.deltaTime); } }