使用 PyOpenGl 的 eglInitialize() 出错(err = 12296)
Error in eglInitialize() using PyOpenGl (err = 12296)
我正在尝试使用带有 EGL 的 PyOpenGL 在我的带有 Mali400 GPU 的 NanoPi M1 Plus 上设置无头渲染。当我 运行 eglInitalize 时,出现以下错误:
错误:
File "ferb_gpu_1.py", line 22, in <module>
if not eglInitialize( display, major, minor):
File "/home/fa/berryconda3/lib/python3.6/site-packages/OpenGL/platform/baseplatform.py", line 402, in __call__
return self( *args, **named )
File "/home/fa/berryconda3/lib/python3.6/site-packages/OpenGL/error.py", line 232, in glCheckError
baseOperation = baseOperation,
OpenGL.error.GLError: GLError(
err = 12296,
baseOperation = eglInitialize,
cArguments = (
<OpenGL._opaque.EGLDisplay_pointer object at 0xb603f800>,
c_long(0),
c_long(0),
),
result = 0
)
这是我写的代码:
if not os.environ.get( 'PYOPENGL_PLATFORM' ):
os.environ['PYOPENGL_PLATFORM'] = 'egl'
os.environ['DISPLAY'] = '0.0'
if os.environ.get( 'TEST_NO_ACCELERATE' ):
OpenGL.USE_ACCELERATE = False
display = eglGetDisplay(EGL_DEFAULT_DISPLAY)
if(display == EGL_NO_DISPLAY):
print("Failed to get EGL display! Error: %s", eglGetError())
exit()
major,minor = ctypes.c_long(),ctypes.c_long()
if not eglInitialize( display, major, minor):
print("Unable to initialize")
exit()
问题是,我使用的是 os.environ['DISPLAY'] = '0.0'
,但它应该是 os.environ['DISPLAY'] = ':0.0'
。
我正在尝试使用带有 EGL 的 PyOpenGL 在我的带有 Mali400 GPU 的 NanoPi M1 Plus 上设置无头渲染。当我 运行 eglInitalize 时,出现以下错误:
错误:
File "ferb_gpu_1.py", line 22, in <module>
if not eglInitialize( display, major, minor):
File "/home/fa/berryconda3/lib/python3.6/site-packages/OpenGL/platform/baseplatform.py", line 402, in __call__
return self( *args, **named )
File "/home/fa/berryconda3/lib/python3.6/site-packages/OpenGL/error.py", line 232, in glCheckError
baseOperation = baseOperation,
OpenGL.error.GLError: GLError(
err = 12296,
baseOperation = eglInitialize,
cArguments = (
<OpenGL._opaque.EGLDisplay_pointer object at 0xb603f800>,
c_long(0),
c_long(0),
),
result = 0
)
这是我写的代码:
if not os.environ.get( 'PYOPENGL_PLATFORM' ):
os.environ['PYOPENGL_PLATFORM'] = 'egl'
os.environ['DISPLAY'] = '0.0'
if os.environ.get( 'TEST_NO_ACCELERATE' ):
OpenGL.USE_ACCELERATE = False
display = eglGetDisplay(EGL_DEFAULT_DISPLAY)
if(display == EGL_NO_DISPLAY):
print("Failed to get EGL display! Error: %s", eglGetError())
exit()
major,minor = ctypes.c_long(),ctypes.c_long()
if not eglInitialize( display, major, minor):
print("Unable to initialize")
exit()
问题是,我使用的是 os.environ['DISPLAY'] = '0.0'
,但它应该是 os.environ['DISPLAY'] = ':0.0'
。