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

55 views
Skip to first unread message

宋嘉惟

unread,
Mar 31, 2021, 11:10:07 PM3/31/21
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

unread,
Apr 7, 2021, 11:38:17 AM4/7/21
to sjw27...@gmail.com, 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 angleproject...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/angleproject/62d4b2ae-fc18-4d77-9c3f-9c661bfccc38n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages