[gtk/wip.win32.fixes] GDK-Win32: Make EGL a runtime opt-in
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip.win32.fixes] GDK-Win32: Make EGL a runtime opt-in
- Date: Mon, 8 Nov 2021 07:39:49 +0000 (UTC)
commit ef10a9a26b03cfbbbabca1837047383629e5c5ca
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Mon Nov 8 15:37:08 2021 +0800
GDK-Win32: Make EGL a runtime opt-in
Use the debug envvar 'GDK_DEBUG=gl-egl' to determine whether we want to try to
initialize EGL first before trying WGL, as a means for people to more easily
enable EGL support on Windows to test EGL there (such as to debug the shaders,
for instance)
gdk/win32/gdkdisplay-win32.c | 26 ++++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
---
diff --git a/gdk/win32/gdkdisplay-win32.c b/gdk/win32/gdkdisplay-win32.c
index dd40b5c13a..d4a275ec7f 100644
--- a/gdk/win32/gdkdisplay-win32.c
+++ b/gdk/win32/gdkdisplay-win32.c
@@ -1152,21 +1152,23 @@ gdk_win32_display_init_gl_backend (GdkDisplay *display,
if (display_win32->dummy_context_wgl.hdc == NULL)
display_win32->dummy_context_wgl.hdc = GetDC (display_win32->hwnd);
- /* No env vars set, do the regular GL initialization, first WGL and then EGL,
+ /*
+ * No env vars set, do the regular GL initialization, first WGL and then EGL,
* as WGL is the more tried-and-tested configuration.
*/
-/*
- * Disable defaulting to EGL for now, since shaders need to be fixed for
- * usage against libANGLE EGL. EGL is used more as a compatibility layer
- * on Windows rather than being a native citizen on Windows
- */
-#if 0
- result = gdk_display_init_egl (display,
- EGL_PLATFORM_ANGLE_ANGLE,
- display_win32->dummy_context_wgl.hdc,
- FALSE,
- error);
+#ifdef HAVE_EGL
+ /*
+ * Disable defaulting to EGL for now, since shaders need to be fixed for
+ * usage against libANGLE EGL. EGL is used more as a compatibility layer
+ * on Windows rather than being a native citizen on Windows
+ */
+ if (_gdk_debug_flags & GDK_DEBUG_GL_EGL)
+ result = gdk_display_init_egl (display,
+ EGL_PLATFORM_ANGLE_ANGLE,
+ display_win32->dummy_context_wgl.hdc,
+ FALSE,
+ error);
#endif
if (!result)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]