Open HugKitten opened 4 days ago
Does your system support OpenGL 3.3?
Yes, I have up to date mesa.
Scratch that. It's suppose to be up to date, but shows only as 3.2. Seems that could be cause
Scratch that. It's suppose to be up to date, but shows only as 3.2. Seems that could be cause
Yep that glGenSamplers
is a part of OpenGL 3.3 standard :)
I think I know whats causing it. It's using the wrong translation layer. I was able to fix it. Thanks. I'll see if I can post some details in a moment
I was able to fix the issue, but here are some details to anyone else who needs help.
There are several reasons you could run into this issue. First make sure you have all your drivers up to date, and are not missing any translation layer required to use Mesa. If you use a GPU that isn't nvidia, then this will likely fix your issue. If you use nvidia, the issue seems to be that nvidia does not support openGL 3.3 through mesa. I assume this has something to do with the extra translation layer nvidia GPUs need to use mesa. You could try using other nvidia drivers, or even older ones, but be aware that this can cause your system to no longer boot if the newer kernel has compatibility issues. This may mean you need to downgrade your kernel as well. There is however another option that is much simpler. Mesa actually has a way to set which driver or api gets used.
If you use Nvidia and want to use the Vulkan API, you can use the following environmental variables:
__GLX_VENDOR_LIBRARY_NAME=mesa
__EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json
MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink
To do this from command line run the command env __GLX_VENDOR_LIBRARY_NAME=mesa __EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/50_mesa.json MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink
Follow this up with your choice of launcher
This issue seems to also effect the Eldritch End mod. When launched on Linux (Arch on Wayland) and Nvidia (Nvidia Open DKMs) you get the
libEffekseerNativeForJava.so: undefined symbol: glGenSamplers
error. Just putting this out there so you are aware. Also this seems to only happen to the 3.0 version. Previous versions do not seem to have this issue.