View Full Version : DepthTest + Floating poing framebuffer object

02-27-2007, 03:09 AM

Which card do I need minimum to use depth test in connection with a floating point render target?

Am I right, that this is only available for NVIDIA cards?

thanks in advance,

02-27-2007, 04:35 AM
Every card that supports rendering to FP-FBO will support depth testing on it... So GF FX and up. Or do you want floating-point depth buffer? This is only implemented on 8800

02-27-2007, 06:10 AM
I don't need floating point Depthbuffer. The reason I asked is: I tried to render to a Fixed point frame buffer object, everything works fine. Depth test is working as it should. But when I change the internal format of the Framebufferobject to GL_RGBA16F_ARB (or any similar) it stops to work.

My card is an ATI 9600 XT

02-27-2007, 06:30 AM
For depth testing (with fixed point) in connection with a F/P rendertarget, do I need a Depth Attachment?

02-27-2007, 07:10 AM
I think, the reason is that you enable blending, and it is not supported on your graphic card.

Try to disable framebuffer blending operations.

This is not depth-test, color attachement format doesn't affect anyhow on depth operations.

02-27-2007, 08:45 AM
You need an depth attachment with FBO in any case if you want to use depth test. Just use a depth renderbuffer. If you could use depth test without depth attachment, then something is definitely wrong :-)

02-27-2007, 09:04 AM
Do the depth attachment and the renderbuffer's internal format have to be equal, or can I use GL_RGBA16F for the colorbuffer and fixed point for the depth attachment?

02-27-2007, 10:54 AM
Just to clear some naming convention:

A framebufferobject can have 2 different type to attachments.
1) Texture
2) Renderbuffer (Color, Depth, Stencil)

Bare in mind attaching a "Color" renderbuffer is not exactly the same as attaching a "Color" texture.

Attaching a GL_RGBA16F_ARB "Texture" with "Depth" renderbuffer should work at least it does on 7800GTX.

02-28-2007, 12:58 AM
Thanks for your answers - depth test works on my ATI with Framebufferobjects of type GL_RGBA16F_ARB. I tracked down the problem to the shader and its inability to write gl_FragDepth in this combination. I already did an earlier post, but I have forgotten that fact - shame on me.

Thanks again for your time,