Cursor.lockState

确定硬件指针是否锁定到视图的中心、受限于窗口或者根本不受限制。

锁定时,光标位于视图的中心且无法移动。无论 Cursor.visible 的值如何,光标在此状态下均不可见。

当受限时,光标表现正常,但限制在视图中。例如,在 Confined 模式下,如果应用程序在窗口中运行,鼠标光标将无法离开窗口。仅在 Windows 和 Linux 独立构建中受支持。

using UnityEngine;

public class CursorLockExample : MonoBehaviour
{
    void Update()
    {

        //按空格键对光标不加锁定  
        if (Input.GetKey(KeyCode.Space))
            Cursor.lockState = CursorLockMode.None;
    }

    void OnGUI()
    {
        //按此键锁定光标
        if (GUI.Button(new Rect(0, 0, 100, 50), "Lock Cursor"))
        {
            Cursor.lockState = CursorLockMode.Locked;
        }

        //按此按钮将光标限制在屏幕内
        if (GUI.Button(new Rect(125, 0, 100, 50), "Confine Cursor"))
        {
            Cursor.lockState = CursorLockMode.Confined;
        }
    }
}
 

Logo

更多推荐