我正在使用 SpriteKit 和 GameplayKit 在 Swift 3 中为 Mac OS 编写游戏。 我已经创建了一种方法来捕获键盘按下事件并可以控制 map 上的角色。 Sprite 使用 MovementComponent 进行移动,如果记录了键盘事件,则该组件会在每次更新时应用移动 Action 。 然而,在第一次按下按键后,角色的移动会出现延迟。 当我按住箭头键时,我的角色会在标准移动 Action 的持续时间内移动,但在继续移动之前会有一段延迟,因为在第一次按键后键盘开始重复循环之前有大约 0.5 的延迟。 我的问题是:在游戏运行时如何更改键盘重复率或消除此延迟,或者是否有更好的方法在 Mac 游戏中通过键盘实现连续移动控制?
提前谢谢大家。
最佳答案
这也许是用伪代码来最好的思考。
While key is pressed, do such-and-such
通过这种方式,您可以独立于系统对按住的按键的轮询和报告。
关于swift - 如何更改游戏中的键盘重复率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40181497/