gpt4 book ai didi

python - 忽略 OpenCV 中 waitKey() 上的键盘事件

转载 作者:行者123 更新时间:2023-12-02 16:23:45 40 4
gpt4 key购买 nike

我正在学习 OpenCV,我决定用它制作一个蛇游戏。它几乎完成了,但有一个看起来很简单的小问题,但我找不到解决方案。

while True:
move()
cv2.imshow('Snake Game', frame)
cv2.waitKey(250)
它应该在下一帧之前等待 250 毫秒,但是按键会中断等待,因此当我按住一个键时游戏会加快速度。我怎样才能让它忽略键盘事件而只使用时间?

最佳答案

如果 waitKey 我会非常惊讶按键后没有停止等待。事实上,这个名字本身就暗示了这一点。所以基本上这就像调用一个名为 max 的函数然后期望最小值。
根据您的代码和您所描述的,您正在使用 waitKey有两个原因:

  • 等待一些固定的时间。这意味着您正在使用它来同步您的游戏循环。
  • 使用它(也许)来处理用户与游戏交互的按键。

  • 在我看来,首先要做的是停止等待,并在准备好后立即继续显示帧。对于同步,您只需要节省每帧打印的时间。并使用您在用户交互或决定如何处理帧或...之后更新的时间来帮助您查看游戏循环是如何实现的。看看这里: https://gamedev.stackexchange.com/questions/651/how-should-i-write-a-main-game-loop

    关于python - 忽略 OpenCV 中 waitKey() 上的键盘事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62740475/

    40 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com