Unity 5:游戏视图-运行时-引起空格键问题

时间:2018-09-08 22:57:14

标签: unity3d

Game View- Camera Display

当我单击空格键以使播放器跳跃时,将弹出“显示”下拉菜单,并且播放器不会跳跃。但是,玩家可以在所有按键按下时移动。

这是我所拥有的信息:

1)一切正常运行。

2)我为老板添加了健康栏。

3)我创建了第二个画布(第一个画布用于播放机的HP)。

4)我制作了Boss HP条形渲染模式:World Space。

5)我从小将画布附加到层次结构中的boss控制器。

6)我用于播放器跳转的代码是Input.GetKeyDown(KeyCode.Space)。

7)在测试“空格键跳转”时,鼠标光标位于“游戏视图”中。

8)我正在Unity 2018 5.3 2D模式下进行开发。

正式问题:

1)为什么空格键导致出现相机显示下拉菜单?

2)我该如何解决?

编辑/其他内容:

这是我的跳转脚本

 public float jump1 = 5.0f;
 private bool onGround;
 //private bool dblJump; //Not implemented yet

 public Rigidbody player;

 void Start () {
    player = GetComponent<Rigidbody>();
    onGround = true;


  }

  // Update is called once per frame
  void Update () {


    if (onGround == true) {

        if (Input.GetKeyDown(KeyCode.LeftShift))// KeyCode.Space
        {

                player.velocity = new Vector3(0, jump1, 0);
                onGround = false;
           // Debug.Log("The onGround is False");



        }           


    }     

   }

请记住,我已暂时将跳转更改为LeftShift。但是,我的问题仍然存在于空格键上,即使当我单击鼠标左键时也会出现空格。 SpaceBar似乎可以召唤摄像机显示的下拉菜单。 (我似乎无法通过屏幕截图捕捉到下拉菜单,因为单击后消失了) 另外请注意-我在一个名为PlayerJump的类中:MonoBehavior。

The Boss character, the Boss canvas, the Yellow back ground image, and the blue foreground Filler image

Boss Canvas Render settings(Inspector)

Boss With enlarged HP bar so you can see that it is attached and works

1 个答案:

答案 0 :(得分:0)

在某些版本的Unity 5.3中,这似乎是一个已知问题,我有一些可以尝试的解决方案:

  • 在编辑器中的其他位置拖动游戏窗口
  • 启用“最大化播放”按钮
  • 将此脚本附加到您的下拉元素中:

    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    using UnityEngine.EventSystems;
    
    public class DropdownScript : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler {
    
     void Start()
        {
            dropDown = GetComponent<Dropdown>();
            dropDown.interactable = false;
        }
    
        public void OnPointerEnter(PointerEventData ped)
        {
            dropDown.interactable = true;
        }
    
         public void OnPointerExit(PointerEventData ped)
        {
             dropDown.interactable = false;
        }
     }
    

如果不是最新版本,请更新您的Unity版本吗?我没有遇到这个问题,但是显然还有许多其他用户。