【问题标题】:Unity 5: Game view - Run Time - SpaceBar Causing IssueUnity 5:游戏视图 - 运行时间 - 空格键导致问题
【发布时间】:2018-09-08 22:57:13
【问题描述】:

Game View- Camera Display

当我点击空格键让玩家跳跃时,弹出显示下拉菜单并且玩家不跳跃。但是,玩家可以在所有按键按下时移动。

这是我掌握的信息:

1) 一切工作正常。

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

3) 我创建了第二个画布(第一个画布用于我的玩家的生命值)。

4)我制作了Boss血条渲染模式:世界空间。

5) 我小时候将画布附加到层次结构中的老板控制器。

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

7) 在测试 SpaceBar Jump 时,鼠标光标位于游戏视图内。

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。

【问题讨论】:

  • 认为这与 Unity 编辑器热键有关。这是a known issue,但您可以尝试this suggestion 来绕过它(如果这是其中之一)。
  • 嘿,感谢您的洞察力!我实际上可以将此建议用于我的另一个想法。 :)

标签: unity3d


【解决方案1】:

这似乎是某些 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 版本?我没有遇到这个问题,但显然还有很多其他用户。

【讨论】:

  • 是的,我很乐意为您做这些事情。请允许我找出最好的方法。我是这个站点的新手,我正在尝试学习如何遍历它。我试图将代码粘贴到此评论中,但字符太长了。我会尝试编辑我的 OP,看看是否有效。感谢您的时间! (另请注意 - 我暂时让 LeftShift 我跳转,所以如果你看到 KeyCode.LeftShift,我在它旁边评论了 KeyCode.Space。左移有效,但 SpaceBar 问题仍然存在。)
  • 如果我需要添加更多内容供您查看,请告诉我。
  • 我将我的游戏窗口拖到一个未停靠的位置,现在空格键不再下降!我已经用 LeftShift 和 Spacebar 对它进行了测试,问题似乎已经解决了!我非常感谢您的帮助!希望这可以帮助其他人遇到同样的问题!
  • 很高兴知道其中一个选项有效,很高兴有帮助 =)
猜你喜欢
  • 1970-01-01
  • 2023-01-01
  • 1970-01-01
  • 2022-08-19
  • 1970-01-01
  • 2020-01-24
  • 1970-01-01
  • 2019-02-19
  • 1970-01-01
相关资源
最近更新 更多