I use fbo depth attachment in order to read depth buffer in pixel program, but it seems depth texture has 8-bit precision, not 24 or 32. How can I get true depth texture ?
Video NVidia GeForce 6800GT, drivers 78.01
fbo creation fragment:
glGenTextures( 1, &depth_texture );
glBindTexture( GL_TEXTURE_2D, depth_texture );
glTexImage2D( GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT24, W, H, 0, GL_DEPTH_COMPONENT, GL_FLOAT, NULL );
glGenRenderbuffersEXT( 1, &depth_buffer );
glBindRenderbufferEXT( GL_RENDERBUFFER_EXT, depth_buffer );
glRenderbufferStorageEXT( GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT24, W, H );
glFramebufferTexture2DEXT( GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_TEXTURE_2D, depth_texture, 0 );