我正在测试 pyglet 以在更大的项目中使用,显然 pyglet 建议/希望您使用它自己的循环(使用 pyglet.app.run())
这是我不想要的,因为其他包的兼容性以及不必重写整个程序结构。
在这里,我将来自不同部分、教程和文档的原型代码粘在一起。它运行 5-15 次迭代,然后只是冻结,不打印任何内容,也不进行任何绘图更新。
from __future__ import division, print_function
import sys
import pyglet
window = pyglet.window.Window(800, 800, resizable=True)
window.set_caption('Pyglet Testing')
window.flip()
image = pyglet.resource.image('Sprites/scout.png')
def draw(dt):
image.blit(700-dt, 400)
while not window.has_exit:
dt = pyglet.clock.tick()
window.dispatch_events()
window.clear()
draw(dt)
window.flip()
print(dt)
我的怀疑是我没有做任何事情来捕获事件并处理它们,所以在某个时候它只是溢出了事件并阻塞了整个事情。然而,我无法理解如何做到这一点,并且在不到 1 秒的时间内被事件淹没似乎有点多。
有什么帮助吗?