After re-creating the context, the rendering result is all black.

Skip to first unread message


Mar 31, 2021, 11:10:07 PMMar 31
to angleproject
A bit of background: 
We use angle as the rendering framework on MacOS and Windows4, and use the eglCreatePbufferSurface function to create the surface. The application has the function of switching resolutions. Each switch will destroy the old rendering thread and create a new rendering thread. This step is Serial.

When destroying the old rendering thread, the bound surface, display, and context will be destroyed at the same time and call eglMakeCurrent(_dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); 

After creating a new thread, it will recreate surface, display, context and call eglMakeCurrent. These calls are successful, and the shader program is compiled and linked successfully, and no obvious errors are seen. 

Question: However, the rendering results are all black, I hope someone can tell me why Any help is greatly appreciated

Geoff Lang

Apr 7, 2021, 11:38:17 AMApr 7
to, angleproject
ANGLE virtualizes contexts on all (except Vulkan) backends and thus doesn't support multithreading. I'm guessing that you're hitting issues because of this. Are you able to try re-creating the context/surface on the same thread?

You received this message because you are subscribed to the Google Groups "angleproject" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit
Reply all
Reply to author
0 new messages