1

尝试在虚拟机上运行此 gl gear 代码会导致以下堆栈跟踪:

OpenGL Warning: XGetVisualInfo returned 0 visuals for 0x92e18b0
OpenGL Warning: Retry with 0xd4 returned 1 visuals
OpenGL Warning: XGetVisualInfo returned 0 visuals for 0x92e18b0
OpenGL Warning: Retry with 0xd4 returned 1 visuals
Traceback (most recent call last):
  File "gears.py", line 264, in <module>
    init()
  File "gears.py", line 234, in init
    glEndList()
  File "errorchecker.pyx", line 50, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError (src/errorchecker.c:1050)
OpenGL.error.GLError: GLError(
    err = 1280,
    description = 'invalid enumerant',
    baseOperation = glEndList,
    cArguments = ()
)

但是相同的代码在我的桌面上运行良好——两台机器运行相同版本的 pyOpenGL,并且所有软件包安装应该相同。但是,底层操作系统是虚拟机上的 Fedora 12 和桌面上的 Fedora 16。

什么可能导致这种情况?

根据回答要求:

$ glxinfo | grep OpenGL
OpenGL vendor string: Humper
OpenGL renderer string: Chromium
OpenGL version string: 2.1 Chromium 1.9
OpenGL shading language version string: 1.20 NVIDIA via Cg compiler
OpenGL extensions:
4

1 回答 1

1

在我看来,您运行的 OpenGL 版本低于 1.2。检查您正在运行的 OpenGL 版本。

于 2012-07-16T13:44:03.383 回答