ColleagueRiley / RSGL

A simple-to-use modular, cross-platform graphics library. It combines the freedom of lower-level graphics libraries with modern C techniques, offering both simplicity and convenience.
zlib License
96 stars 1 forks source link

Google Angle macOS: Black screen issue #8

Open webfolderio opened 1 month ago

webfolderio commented 1 month ago

I Compiled latest Angle version on macOS and linked with RSGL. Examples run without an error but display only a black screen.

Has Angle been tested on macOS, and is there official support for Angle?

Thanks

ColleagueRiley commented 1 month ago

I've not tested with Angle and I'm not sure how to. I currently run macOS on a VM.

This behavior makes sense because RSGL_gl.h has no Angle-specific code, which I think is required.

webfolderio commented 1 month ago

I believe I've identified the cause of the problem. When compiled with default settings, RGFW uses system OpenGL. However, to use RGFW with Angle, I need to use EGL instead of system OpenGL. The issue is that on macOS, RGFW only supports system OpenGL.

When I have time, I'll test it on Windows and Linux and report back. I think Angle might work for Windows and Linux because raylib, which also only supports OpenGL, can use Metal or DX11 through Angle. My guess is that RGFW will work with Angle on Windows and Linux.

#ifdef RGFW_EGL
    #if defined(__APPLE__)
        #warning  EGL is not supported for Cocoa, switching back to the native opengl api
        #undef RGFW_EGL
    #endif
#endif

https://medium.com/@grplyler/building-and-linking-googles-angle-with-raylib-on-macos-67b07cd380a3

ColleagueRiley commented 1 month ago

I figured that EGL was not supported on macOS after searching for the binaries. I have no idea why but it seems super difficult to find bindings for EGL on every platform but Linux. Could you make a separate issues on RGFW regarding EGL support for macOS so I don't forget to get to it?

ColleagueRiley commented 1 month ago

The article says how to get EGL bindings for macOS! :)

ColleagueRiley commented 3 weeks ago

Update: RGFW's EGL support for macOS is now a WIP