美文网首页
Unity 接收不到键盘按下的事件

Unity 接收不到键盘按下的事件

作者: 上帝与我同幻想 | 来源:发表于2018-08-15 16:15 被阅读0次

    问题描述

    在看视频教程时,看到视频中为实现跳跃功能,将向上按键的检测放在了FixedUpdate中,但是实际操作时,经常会遇到按了没反应。

    void FixedUpdate() {
        if (Input.GetKeyDown(KeyCode.UpArrow)) {
            GetComponent<Rigidbody2D>().AddForce(new Vector2(0, Jumpforce));
        }
    }
    

    解决方法

    将按键检测放在Update中即可

    原因分析

    因为FixedUpdate存在漏帧的情况,它是基于秒的,或者准确的说是基于物理步更新,放在物理步的函数中处理本身就是错误的做法

    参考文章
    [1] 跑酷游戏的一些bug总结(滥用FixedUpdate的坑)

    相关文章

      网友评论

          本文标题:Unity 接收不到键盘按下的事件

          本文链接:https://www.haomeiwen.com/subject/xyuwbftx.html