【发布时间】:2011-07-23 10:06:11
【问题描述】:
我正在尝试使用(免费)GLUT 制作一个小游戏。我知道它很旧并且有更好的选择,但目前我更喜欢坚持使用它并尽可能多地使用它。我用 C 编程。
我目前正在尝试让 GLUT 正确检测我按下的所有键。 我使用 glutKeyboardFunc、glutKeyboardUpFunc、glutSpecialFunc 和 glutSpecialUpFunc 来检测按下的键,并将它们的状态存储在我创建的一个短数组中(我目前只有 5 个可用键,所以我只是为它们创建了一个特定的数组)。
但是,虽然 2 键或更少键一切正常,但游戏无法正确检测 3 键或更多键。虽然对于某些键,它可以正确检测到组合(实际上只发生在 1 个特定组合中),但对于其他键,功能根本不会检测到我按下的第三个键。
我检查了我的代码几次,这个组合并没有什么特别之处。 我还让 glutKeyboardFunc 和 glutSpecialFunc 直接打印他们收到的每个按键,而且似乎在我按下超过 2 个键后它们就停止工作了。
这是 GLUT 的已知问题还是什么?我google了很多,没有找到有类似问题的人。
【问题讨论】:
-
您是否测试过,您是否在任何其他程序中获得超过 2 个密钥?你确定你的键盘可以处理超过 2 键翻转吗?