Unity 摄像机不受控制地旋转

本文关键字:旋转 受控制 摄像机 Unity | 更新日期: 2023-09-27 17:56:47

我试图夹紧相机旋转,但这样做时相机无法控制地旋转。我用Math.fClamp和另一种方式尝试了它,两者似乎都在做完全相同的事情。

这是我使用的代码:

public class CameraController : MonoBehaviour 
{
    float mRotY;
    private void Start () 
    {
        if (rigidbody) rigidbody.freezeRotation = true;
        Screen.lockCursor = !Debug.isDebugBuild;
    }
    private void FixedUpdate () 
    {  
        mRotY = Input.GetAxis ("Mouse Y") * GameManager.sensitivity * Time.deltaTime;
        if (mRotY > 270.0f) mRotY = 270.0f;
        else if (mRotY < 90.0f) mRotY = 90.0f; 
        transform.Rotate(mRotY, 0.0f,0.0f);
    }
}

Unity 摄像机不受控制地旋转

尝试将mRotY设置为较低的值,例如 [-10;+10]旋转方法相对于实际旋转,因此您不希望每次都将相机旋转 90 度以上。