关于unity3d鼠标箭头Cursor.lockState 不隐藏的问题?
首先先来了解一下 Cursor.lockState 的三种状态
1.CursorLockMode.None 无状态
2.CursorLockMode.Locked 锁定状态
3.CursorLockMode.Confined 限制状态(也就是鼠标只能在游戏界面内移动)
补充:
Cursor.visible 是否显示光标
在使用按键 KeyCode.Escape去触发鼠标的 显\隐 的时候,会出现这个问题,这可能是一个Unity的BUG。(Unity 5.4.6f3 (64-bit))
不过当我,使用了任意一个按键去检测的时候,那个BUG就不见了。例如: KeyCode.P
代码片
.
if (Input.GetKeyDown(KeyCode.P))
{
isLock = !isLock;
if (isLock)
{
Time.timeScale = 0;
Cursor.lockState = CursorLockMode.None;
Cursor.visible = true;
}
else
{
Time.timeScale = 1;
Cursor.lockState = CursorLockMode.Locked;
Cursor.visible = false;
}
}