需要使用引用UnityEngine.EventSystems
void Update () {
if (Input.GetMouseButton(0))
{
if (EventSystem.current.IsPointerOverGameObject()) //检查是否点击到UI
// if (EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId)) //如果要用于手机上,则使用这条
{
return;
}
x += Input.GetAxis("Mouse X") * 5;
y += Input.GetAxis("Mouse Y") * 5;
y = Mathf.Clamp(y, -90, 90);
transform.localEulerAngles = new Vector3(-y, x, transform.localEulerAngles.z);
}
}
}
上述代码点击到UI后,不会再执行旋转功能,除非移动到UI外面