DepthTest + Floating poing framebuffer object


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,

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

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

For depth testing (with fixed point) in connection with a F/P rendertarget, do I need a Depth Attachment?

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.

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 :slight_smile:

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?

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.

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,