In case anyone is interested, I've pushed an experimental rendering branch that adds support for using LWJGL instead of JOGL to call OpenGL. For those unaware, LWJGL is an alternative OpenGL library for Java, which is generally more active and well-maintained than JOGL is these days, which is the main reason why I'm considering switching to it, or at least supporting it as an alternative rendering backend. Among other things, LWJGL supposedly has native support for Apple Silicon Macs (though I can't test this personally, since I don't have an AS Mac), so this may be interesting for Apple users. It is my understanding that the client can already run on AS Macs using Rosetta 2, but at the very least, then, using native LWJGL should increase performance on that platform. It is also my understanding that there are some bugs between later versions of MacOS and JOGL, that using LWJGL instead may fix.
The main reason I haven't merged this to the master branch yet is that the extra indirection layer added to support using either JOGL or LWJGL seems to decrease GL-thread performance on JOGL by about 5%, and I'm still trying to figure out if there isn't some semi-reasonable rewrite that can avoid this penalty. LWJGL is also more "direct" than JOGL is, and increases the general chances of crashing and memory leaks, which is why I wouldn't want to use it by default without some more robust testing first. But the alternative branch is there for anyone who wants to test it. Note than when switching back from the lwjgl branch to the master branch, you will probably have to clean the build tree because of a couple of naming conflicts.