diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java index 275288959..d12423d18 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java @@ -226,7 +226,7 @@ public class JREUtils { if(LOCAL_RENDERER != null) { envMap.put("POJAV_RENDERER", LOCAL_RENDERER); } - if(LOCAL_RENDERER.equals("opengles3_angle_vulkan")) envMap.put("POJAVEXEC_EGL","libEGL_angle.so"); // use ANGLE egl + if(LOCAL_RENDERER.equals("opengles3_desktopgl_angle_vulkan")) envMap.put("POJAVEXEC_EGL","libEGL_angle.so"); // use ANGLE egl envMap.put("AWTSTUB_WIDTH", Integer.toString(CallbackBridge.windowWidth > 0 ? CallbackBridge.windowWidth : CallbackBridge.physicalWidth)); envMap.put("AWTSTUB_HEIGHT", Integer.toString(CallbackBridge.windowHeight > 0 ? CallbackBridge.windowHeight : CallbackBridge.physicalHeight)); @@ -416,7 +416,7 @@ public class JREUtils { case "opengles3": renderLibrary = "libgl4es_115.so"; break; case "vulkan_zink": renderLibrary = "libOSMesa_8.so"; break; case "opengles3_vgpu" : renderLibrary = "libvgpu.so"; break; - case "opengles3_angle_vulkan" : renderLibrary = "libtinywrapper.so"; break; + case "opengles3_desktopgl_angle_vulkan" : renderLibrary = "libtinywrapper.so"; break; default: Log.w("RENDER_LIBRARY", "No renderer selected, defaulting to opengles2"); renderLibrary = "libgl4es_114.so"; diff --git a/app_pojavlauncher/src/main/jni/egl_bridge.c b/app_pojavlauncher/src/main/jni/egl_bridge.c index c2a030a05..d311f3dc2 100644 --- a/app_pojavlauncher/src/main/jni/egl_bridge.c +++ b/app_pojavlauncher/src/main/jni/egl_bridge.c @@ -785,9 +785,17 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_glfw_GLFW_nativeEglInit(JNIEnv* env, j } ANativeWindow_setBuffersGeometry(potatoBridge.androidWindow, 0, 0, vid); - - eglBindAPI_p(EGL_OPENGL_ES_API); - + { + EGLBoolean bindResult; + if (strncmp(renderer, "opengles3_desktopgl", 19) == 0) { + printf("EGLBridge: Binding to desktop OpenGL\n"); + bindResult = eglBindAPI_p(EGL_OPENGL_API); + } else { + printf("EGLBridge: Binding to OpenGL ES\n"); + bindResult = eglBindAPI_p(EGL_OPENGL_ES_API); + } + if(!bindResult) printf("EGLBridge: bind failed: %p\n", eglGetError_p()); + } potatoBridge.eglSurface = eglCreateWindowSurface_p(potatoBridge.eglDisplay, config, potatoBridge.androidWindow, NULL); if (!potatoBridge.eglSurface) { diff --git a/app_pojavlauncher/src/main/jni/tinywrapper/angle-gles/arm64-v8a/libGLESv2_angle.so b/app_pojavlauncher/src/main/jni/tinywrapper/angle-gles/arm64-v8a/libGLESv2_angle.so index 63794ebcf..608000745 100644 Binary files a/app_pojavlauncher/src/main/jni/tinywrapper/angle-gles/arm64-v8a/libGLESv2_angle.so and b/app_pojavlauncher/src/main/jni/tinywrapper/angle-gles/arm64-v8a/libGLESv2_angle.so differ diff --git a/app_pojavlauncher/src/main/res/values/headings_array.xml b/app_pojavlauncher/src/main/res/values/headings_array.xml index 911c647cb..506d6ece5 100644 --- a/app_pojavlauncher/src/main/res/values/headings_array.xml +++ b/app_pojavlauncher/src/main/res/values/headings_array.xml @@ -22,6 +22,6 @@ opengles3 vulkan_zink opengles3_vgpu - opengles3_angle_vulkan + opengles3_desktopgl_angle_vulkan