From b86fe17c82f03b0334ead0758f3dff6ebe0be786 Mon Sep 17 00:00:00 2001 From: tomikun <60690056+alexytomi@users.noreply.github.com> Date: Tue, 21 Apr 2026 02:52:07 +0800 Subject: [PATCH] fix(EGL): Handle window recreations with different APIs Should fix Mojang Vulkan falling back to opengl --- app_pojavlauncher/src/main/jni/egl_bridge.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app_pojavlauncher/src/main/jni/egl_bridge.c b/app_pojavlauncher/src/main/jni/egl_bridge.c index 563436276..004113623 100644 --- a/app_pojavlauncher/src/main/jni/egl_bridge.c +++ b/app_pojavlauncher/src/main/jni/egl_bridge.c @@ -209,6 +209,12 @@ EXTERNAL_API void pojavSetWindowHint(int hint, int value) { // pojavInitVulkan(); break; case GLFW_OPENGL_API: + const char *renderer = getenv("AMETHYST_RENDERER"); + if (strncmp("opengles", renderer, 8) == 0) { + pojav_environ->config_renderer = RENDERER_GL4ES; + } else if (strcmp(renderer, "vulkan_zink") == 0) { + pojav_environ->config_renderer = RENDERER_VK_ZINK; + } /* Nothing to do: initialization is called in pojavCreateContext */ // pojavInitOpenGL(); break;