Hello, I have made an application that uses a library to draw 3d models.
I use Gtk.GLArea and inside the render handler I call the library function to draw. On X11 it works without problems, but on Wayland it gives the following errors using GDK_DEBUG=opengl, gl-debug
and it doesn’t display anything:
(exhibit:2): Gdk-CRITICAL **: 19:19:10.270: OPENGL:
Source: API
Type: Error
Severity: High
Message: GL_INVALID_ENUM in glTexImage2DMultisample(internalformat=GL_NONE)
(exhibit:2): Gdk-WARNING **: 19:19:10.270: OPENGL:
Source: API
Type: Other
Severity: Medium
Message: FBO incomplete: color attachment incomplete [0]
(exhibit:2): Gdk-CRITICAL **: 19:19:10.270: OPENGL:
Source: API
Type: Error
Severity: High
Message: GL_INVALID_VALUE in glTexImage2D(internalFormat=GL_NONE)
(exhibit:2): Gdk-CRITICAL **: 19:19:10.271: OPENGL:
Source: API
Type: Error
Severity: High
Message: GL_INVALID_FRAMEBUFFER_OPERATION in glBlitFramebuffer(incomplete draw/read buffers)
(exhibit:2): Gdk-WARNING **: 19:19:10.271: OPENGL:
Source: API
Type: Other
Severity: Medium
Message: FBO incomplete: color attachment incomplete [0]
These are just some of the errors it gives, for a full list and more debug messages I have created an issue on the library repository, here is a summary of the error messages:
GL_INVALID_ENUM in glTexImage2DMultisample(internalformat=GL_NONE)
GL_INVALID_VALUE in glTexImage2D(internalFormat=GL_NONE)
FBO incomplete: color attachment incomplete [0]
GL_INVALID_FRAMEBUFFER_OPERATION in glBlitFramebuffer(incomplete draw/read buffers)
GL_INVALID_FRAMEBUFFER_OPERATION in glClear(incomplete framebuffer)
GL_INVALID_VALUE in glUniform1i(invalid sampler/tex unit index for uniform 0)
GL_INVALID_VALUE in glUniform1i(invalid sampler/tex unit index for uniform 1)
GL_INVALID_VALUE in glUniform1i(invalid sampler/tex unit index for uniform 2)
GL_INVALID_FRAMEBUFFER_OPERATION in glDrawArrays
FBO incomplete: color attachment incomplete [0]
GL_INVALID_FRAMEBUFFER_OPERATION in glBlitFramebuffer(incomplete draw/read buffers)
Setting GDK_DEBUG=gl-egl
on x11 gives the same exact errors.
Is there an API change between GXL and EGL that could cause the issue? What can I try to fix it?
The library uses OpenGL (not ES) and it should work with either ways to create the context (EGL and GXL), right?
Here is the app repo: GitHub - Nokse22/Exhibit: 3D model viewer for the GNOME desktop powered by f3d
Here is the library repo: GitHub - f3d-app/f3d: Fast and minimalist 3D viewer.