烬蜂 发表于 2023-8-25 20:31

关于2D横板动作游戏场景切换后角色运动状态保持的问题

我个人在制作一款2d横板动作游戏,最近在测试时发现如下问题:
假设控制左右的按键是“A”和“D”,控制跳跃的按键是“K”,通过input.getkey()方法监听
如果在场景切换前只按住控制左右的按键,在场景切换前后角色运动状态会维持不变,对按键的监听也正常。
但是如果在按住控制移动的按键后再按下其他同样被监听的按键,如按住“A”后按下“K”跳跃,这之后再切换场景。此时即使还在按着控制移动的按键,角色也会静止不动。我用debug.log调试的结果是这个时候被按下的按键已经没有被监听了。
所以我想找到一个办法解决这个问题,多谢大佬们帮忙。

烬蜂 发表于 2023-8-26 08:10

问题已经解决,回来报个喜。
回去翻了很多资料,什么HooK监听键盘,场景加载时方法调用之类的,结果最后发现Unity的新版Input系统是可以跨场景监听的,所以我直接在旧Input系统的基础上在代码里利用新Input系统的Keyboard类对键盘进行监听,最终达到了想要的结果。

lixiaobai 发表于 2023-9-1 14:58

good 学到了
页: [1]
查看完整版本: 关于2D横板动作游戏场景切换后角色运动状态保持的问题