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

2018-08-15  本文已影响0人  上帝与我同幻想

问题描述

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

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

解决方法

将按键检测放在Update中即可

原因分析

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

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

上一篇下一篇

猜你喜欢

热点阅读