My FBO code has been working on many configurations, but fails for one Windows customer with an ATI Radeon Mobility X1800. The status check returns GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT. The setup code looks like this:
I tried checking glGetError after each step, and it’s not detecting any error.
The error GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT seems to suggest that neither the color buffer nor the depth/stencil buffer is getting set up correctly, but why? In another thread, someone said “Sometimes, I noticed glCheckFramebufferStatusEXT() reports incorrect(not relevant) FBO status on ATI cards when it failed to complete a FBO.” So maybe GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT is bogus.
My FBO code has been working on many configurations, but fails for one Windows customer with an ATI Radeon Mobility X1800. The status check returns GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT.
Driver bug. If you ever get anything other than GL_FRAMEBUFFER_UNSUPPORTED, and you don’t get it consistently across implementations, then it’s a driver bug.
You can try to use GL_DEPTH_STENCIL_ATTACHMENT_EXT instead of attaching the renderbuffer to both. According to the spec, this should make no difference, but since we’re already in the land of ATI driver bugs, you may as well have a go.
I can’t find a GL_DEPTH_STENCIL_ATTACHMENT_EXT constant in either the FBO spec or the latest version of glext.h. Are you sure you’re not thinking of something else?
I can’t find a GL_DEPTH_STENCIL_ATTACHMENT_EXT constant in either the FBO spec or the latest version of glext.h. Are you sure you’re not thinking of something else?
Sorry. That’s part of the ARB_framebuffer_object spec. I don’t know why EXT_packed_depth_stencil didn’t include something like that.
Oh, I see. I wasn’t aware of the existence of ARB_framebuffer_object. (In my defense, I do more of my work on the Mac, where no drivers yet support ARB_framebuffer_object.) I’ll give it a shot.
If possible, try upgrading your drivers. I think this was fixed around the Catalyst 9.3 time-frame (the last version to support the X1800).
As a test, try disabling the stencil buffer by changing the storage format for the renderbuffer. This code should work then (confirming that this is indeed a driver bug).