/// <summary>
    /// calculates current rotational input and updates ship orientation aswell as cockpit UI elements accordingly
    /// </summary>
    private void HandleRotation()
    {
        // movement can be disabled to relax hand and give the user the option of letting the controller go w/o affecting flight
        if (_movementEnabled)
        {
            var rotation = GetRotationQuaternion();

            var yawFactor   = MovementCalculationHelper.CalculateYawFactor(rotation, _deadzoneHandler);
            var pitchFactor = MovementCalculationHelper.CalculatePitchFactor(rotation, _deadzoneHandler);
            var rollFactor  = MovementCalculationHelper.CalculateRollFactor(rotation, _deadzoneHandler);

            // do rotate, based on specified rotation speeds
            transform.Rotate(yawFactor * YawRotationSpeed, pitchFactor * PitchRotationSpeed, rollFactor * RollRotationSpeed);

            // update UI elements inside cockpit
            UpdateRotationSliders(yawFactor, pitchFactor, rollFactor);
            UpdateMiniShipHologram(yawFactor, pitchFactor, rollFactor);

            // check if user requested movement disabling
            if (OVRInput.GetUp(OVRInput.Button.PrimaryTouchpad))
            {
                DisableMovement();
            }
        }
        else
        {
            // check if user requested movement enabling
            if (OVRInput.GetUp(OVRInput.Button.PrimaryTouchpad))
            {
                EnableMovement();
            }
        }
    }