Hello @MarkusHoHo
I’m using GLFW to create the window.
- OpenGL version: 4.6.0 NVIDIA 512.15
- OpenGL vendor: NVIDIA Corporation
- OpenGL renderer: NVIDIA GeForce GTX 1660 Ti/PCIe/SSE2
I did glGetError after each gl* call, all of them are GL_NO_ERROR, the comp is GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT.
GLuint tex[2];
glCreateTextures(GL_TEXTURE_2D, 2, tex);
GLenum error = glGetError(); // GL_NO_ERROR
glTextureStorage2D(tex[0], 1, GL_RGB8, 2048, 2048);
error = glGetError(); // GL_NO_ERROR
glTextureStorage2D(tex[1], 1, GL_RGB8, 1024, 1024);
error = glGetError(); // GL_NO_ERROR
GLuint fbo;
glCreateFramebuffers(1, &fbo);
error = glGetError(); // GL_NO_ERROR
glNamedFramebufferTexture(fbo, GL_COLOR_ATTACHMENT0, tex[0], 0);
error = glGetError(); // GL_NO_ERROR
glNamedFramebufferTexture(fbo, GL_COLOR_ATTACHMENT1, tex[1], 0);
error = glGetError(); // GL_NO_ERROR
GLenum comp = glCheckNamedFramebufferStatus(fbo, GL_FRAMEBUFFER);
error = glGetError(); // GL_NO_ERROR
I also tried glGenFramebuffers and glBindFramebuffer, all of them are also GL_NO_ERROR, and comp is GL_FRAMEBUFFER_COMPLETE.
Then I tried these code with my AMD integrated graphics, glCreateFramebuffers and glGenFramebuffers, both comp is GL_FRAMEBUFFER_COMPLETE.
- OpenGL version: 4.6.13596 Compatibility Profile Context 20.10.32.06 27.20.11032.6002
- OpenGL vendor: ATI Technologies Inc.
- OpenGL renderer: AMD Radeon™ Graphics
OpenGL specification allows color attachments with different dimensions, but the effective dimension is their intersection. Therefore, it should be determined that it is an NVIDIA bug, when used with Direct State Access.