0

在我正在学习的 pyglet 中,Image.blit() 有效,但 Sprite.draw() 无效,Batch.draw() 也无效,即使在这个简单的代码中:

import pyglet

win = pyglet.window.Window()

img = pyglet.resource.image('test.png')
spr = pyglet.sprite.Sprite(img)

@win.event
def on_draw():
    win.clear()
    spr.draw()


if __name__ == '__main__':
    pyglet.app.run()

窗口仍然是黑色的。但是,例如,我可以绘制标签。我发现的唯一解释是关于显卡和其中一些的“v2i”错误,但我害怕在不知道我在做什么的情况下接触 pyglet 的代码。

4

1 回答 1

1

这个线程的第三个答案对我有用,即使我使用的是 Ubuntu 而不是 Windows。其实是硬件问题。我在 /usr/lib/pymodules/python2.7/pyglet/sprite.py 中找到的文件中的“v2i”中的第 368 和 372 行将“i”替换为“f”。然后我保存,运行我的代码,一切正常。

于 2012-04-28T22:22:50.447 回答