Skip to main content
8 events
when toggle format what by license comment
Apr 30, 2016 at 1:13 comment added Trevor Powell You can gain access to a stencil buffer by using a renderbuffer format of GL_DEPTH32F_STENCIL8 instead of GL_DEPTH_COMPONENT32F, and then attaching that single renderbuffer as both your FBO's depth attachment and its stencil attachment. I believe that this format is guaranteed to be supported by any OpenGL 3.x+ core context.
Apr 29, 2016 at 15:22 comment added Shadow503 Thanks for the additional investigation! I'll have to see if I can get a 32 bit floating point buffer to work for my scene. Will doing this prevent me from using a stencil buffer?
Apr 29, 2016 at 2:59 history edited Trevor Powell CC BY-SA 3.0
Added results of testing on a 980.
Apr 28, 2016 at 23:57 comment added Trevor Powell ...though having said that, if you're using a renderbuffer, you can probably use glGetRenderbufferParameteriv( <target>, GL_RENDERBUFFER_DEPTH_SIZE, &result ) to directly query what size the created depth buffer was. I'll give that a try on my 980 and add the results.
Apr 28, 2016 at 23:52 comment added Trevor Powell @Shadow503 I can't find any documentation on precisely which FBO attachment formats are supported in NVidia's current crop of cards, but what they've traditionally done is to silently give you a 24-bit fixed-point depth buffer if you'd requested a 32-bit one. To tell if they're still doing that, you'd probably need to render something on the card, read back the depth buffer, and programmatically check how the depth values are quantized.
Apr 28, 2016 at 14:40 comment added Shadow503 Thanks for your answer; this is exactly what I'm looking for. You said that historically 32 bit fixed has not been supported in FBOs on Nvidia hardware - is this still true for modern cards?
Apr 28, 2016 at 14:39 vote accept Shadow503
Apr 28, 2016 at 0:15 history answered Trevor Powell CC BY-SA 3.0