FBO incomplete attachment and depth textures

Started by
1 comment, last by underthesun 13 years, 6 months ago
I've been trying to get a depth texture to attach to an FBO object.

Normally, there's no depth textures attached to this FBO and everything works just fine. However, when I try to attach the FBO:

void FrameBuffer::addDepthTexture(Texture * thetex){   assert(depthbuffertex == NULL);   depthbuffertex = thetex;      initGeometry(depthbuffertex);      glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fboid);   glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT,                             GL_DEPTH_ATTACHMENT_EXT,                             GL_TEXTURE_2D,                             depthbuffertex->textureid,                             0);   GLenum status = glCheckFramebufferStatusEXT( GL_FRAMEBUFFER_EXT );   maybeAlertBadStatus(status, "addDepthTexture");}


The depth texture was generated using:
glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT32, powerwidth, powerheight, 0, GL_DEPTH_COMPONENT, GL_FLOAT, data);

I've checked the GL errors, and it doesn't seem to be spouting any. However, the status variable in the end becomes GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT. Am I doing anything wrong here, else where can I look for more info?
Advertisement
To create a depth only FBO, you need to set glDrawBuffer(GL_NONE), so GL knows there is no color buffer.
Actually I fixed my problem. Turns out I left:

glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR_MIPMAP_LINEAR);

and depth buffers didn't like mipmaps.. but all is well now :D

This topic is closed to new replies.

Advertisement