隐藏光标脚本在 Unity 5 中无法正常工作

Hide Cursor script doesn't work correctly in Unity 5

我在 "FirstPersonCharacter" GameObject 中附加了一个简单的隐藏光标脚本,但无法正常工作。

#pragma strict

var blocked = false;

function Start () {
    blockCursor (false);
}

function blockCursor (blocked) {
    this.blocked = blocked;
    Screen.lockCursor = blocked;
    Cursor.visible = !blocked;
}

function Update () {
    if (Input.GetKeyDown("e")) {
        blockCursor(!blocked);
    }
}

此脚本在 Unity 4.6 中完美运行,但现在在 Unity 5 中,当我按下 "E" 时,光标会移动到中心并且不会隐藏。 我做错了什么? :(

要锁定光标然后将其居中,您只需将 blockCursor 函数更改为:

function blockCursor (blocked) {
    this.blocked = blocked;
    Cursor.visible = !blocked;
    Cursor.lockState = blocked ? CursorLockMode.Locked : CursorLockMode.None;
}

这应该可以解决您的问题。

Lock/Hide Cursor Unity 5 的代码

using UnityEngine;
using System.Collections;

public class HideLockCursorA : MonoBehaviour
{
void Start ()
  {
    Cursor.lockState = CursorLockMode.Locked;
    Cursor.visible = false;
  }
                  void Update ()
            {
                    Cursor.lockState = CursorLockMode.Locked;
                    Cursor.visible = false;
            }
}

视频:youtube.com/watch?v=2bWoRTRT_DU