相关文章推荐
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I am trying to set up a headless render on my NanoPi M1 Plus with Mali400 GPU using PyOpenGL with EGL. When I run eglInitalize I get the following error:

Error:

  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

Here is the code I have written:

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()
                Isn't the whole point of using EGL to get an OpenGL context without an associated display (aka headless)? Why would you need to set DISPLAY then?
– Tom Pohl
                May 24, 2020 at 20:06
        

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.

 
推荐文章