为什么pyglet无法显示我的图像?

2024-05-06 18:37:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用最新的pyglet,在显示图像时遇到了极大的困难。我已经将代码剥离到了最基本的部分,结果让我感到困惑:

import pyglet

pyglet.resource.path.append('Assets')
pyglet.resource.reindex()

look = pyglet.resource.image('skybox0.jpg')
print('image size',(look.width, look.height))

window = pyglet.window.Window(800, 600, caption='check my Cube Maps')

@window.event
def on_draw():
    window.clear
    look.blit(0,0)
    return

pyglet.app.run()

下面是发生的情况:

image size (256, 197)
Traceback (most recent call last):
 File "C:/Python/Python36/Dhruve and me/Pyglet/skybox look.py", line 19, in <module>
   pyglet.app.run()
 File "C:\Python\Python36\lib\site-packages\pyglet\app\__init__.py", line 107, in run
   event_loop.run()
 File "C:\Python\Python36\lib\site-packages\pyglet\app\base.py", line 167, in run
   timeout = self.idle()
 File "C:\Python\Python36\lib\site-packages\pyglet\app\base.py", line 243, in idle
   window.dispatch_event('on_draw')
 File "C:\Python\Python36\lib\site-packages\pyglet\window\__init__.py", line 1333, in dispatch_event
   if EventDispatcher.dispatch_event(self, *args) != False:
 File "C:\Python\Python36\lib\site-packages\pyglet\event.py", line 408, in dispatch_event
   if handler(*args):
 File "C:/Python/Python36/Dhruve and me/Pyglet/skybox look.py", line 16, in on_draw
   look.blit(0,0)
 File "C:\Python\Python36\lib\site-packages\pyglet\image\__init__.py", line 1614, in blit
   glInterleavedArrays(GL_T4F_V4F, 0, array)
 File "C:\Python\Python36\lib\site-packages\pyglet\gl\lib.py", line# 107, in errcheck
   raise GLException(msg)
pyglet.gl.lib.GLException: None

该图像恰好是一个skybox,在windows资源管理器中查看时显示良好。 我在windows10和python36上


Tags: runinpyimageeventapplibpackages