diff --git a/JavaApp/src/main/java/org/lwjgl/opengl/GL.java b/JavaApp/src/main/java/org/lwjgl/opengl/GL.java index 8ed12d1e..fbe7aef0 100644 --- a/JavaApp/src/main/java/org/lwjgl/opengl/GL.java +++ b/JavaApp/src/main/java/org/lwjgl/opengl/GL.java @@ -180,9 +180,16 @@ public final class GL { break; case MACOSX: functionProvider = new SharedLibraryGL(OPENGL) { + private final long gl4es_GetProcAddress = library.getFunctionAddress("gl4es_GetProcAddress"); + @Override long getExtensionAddress(long name) { - return NULL; + return gl4es_GetProcAddress == NULL ? NULL : callPP(name, gl4es_GetProcAddress); + } + + @Override + long getFunctionAddress(String name) { + return super.getFunctionAddress("gl4es_" + name); } }; break; diff --git a/Natives/egl_bridge.c b/Natives/egl_bridge.c index 7573c131..acefb0e0 100644 --- a/Natives/egl_bridge.c +++ b/Natives/egl_bridge.c @@ -64,7 +64,7 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_glfw_GLFW_nativeEglMakeCurrent(JNIEnv* debug("ES2Bridge: making current\n"); jboolean ret = 1; // makeCurrentContext(CURR_GL_CONTEXT); - + void *libGL = dlopen("libGL.dylib", RTLD_GLOBAL); debug("libGL = %p", libGL); diff --git a/Natives/resources/Frameworks/libGL.dylib b/Natives/resources/Frameworks/libGL.dylib index 4e5670fb..74a931c5 100644 Binary files a/Natives/resources/Frameworks/libGL.dylib and b/Natives/resources/Frameworks/libGL.dylib differ