GL loader work
todo (not necessarily all here):
- [x] make extpointer mandatory
- [x] figure out why the first commit broke world rendering on gles2 ~~(not my fault?)~~
- [x] Drop unused exts from
COGLESCoreExtensionHandler - [ ] ~~Make
COGLES2ExtensionHandleruse loader~~ - [ ] ~~Make
COGLES1ExtensionHandleruse loader~~ - [ ] ~~Drop unused exts and functions from
COpenGLExtensionHandler(big oof)~~ - [ ] ~~Make
COpenGLExtensionHandleruse loader~~ - [ ] Identify and migrate other GL calls
- [x] Deal with
glext.h?! - [x] macOS support should automatically start working at this point
Edit: I crossed half out because I'm not actually sure what the way forward is. The GLES2 driver has some sort of unified stuff where the new support code uses GL instead of direct calls, while I assume GLES1 is meant to be dropped and GL to be replaced by GL3.
@numberZero thoughts?
(after requested in IRC)
I can confirm that OpenGL 2 still works (also with shaders) on Ubuntu/Linux, 64-bit. SDL2 / OpenGL 3 / OpenGL ES support not enabled.
I can confirm that OpenGL (4.6) still works on Linux, with shaders. FSAA also still works. Browsed through the changes, all looks reasonable.
As stated above, only test on Linux.
bad news: there's something wrong with either this PR or the unified GLES2 driver on Android:
nothing useful to be seen in the log, of course
isn't this what it usually looks like when the Irrlicht shaders are missing?
Yes, however I'm reasonably sure that they aren't missing. The assets ZIP has them at least.
Edit:
Added some debug output and loading them doesn't seem to be the issue:
02-18 15:32:07.331 31617 386 D Minetest: 2024-02-18 15:32:07: INFO[Main]: Irrlicht: Loaded 382 bytes for vertex shader Renderer2D.vsh 02-18 15:32:07.331 31617 386 D Minetest: 2024-02-18 15:32:07: INFO[Main]: Irrlicht: Loaded 334 bytes for frag shader Renderer2D.fsh 02-18 15:32:07.343 31617 386 D Minetest: 2024-02-18 15:32:07: INFO[Main]: Irrlicht: Loaded 382 bytes for vertex shader Renderer2D.vsh 02-18 15:32:07.343 31617 386 D Minetest: 2024-02-18 15:32:07: INFO[Main]: Irrlicht: Loaded 129 bytes for frag shader Renderer2D_noTex.fsh
this is what renderdoc has to say about it:
also this:
Fixed it.