|
使用2个fbo,第一个fbo 使用GL_COLOR_ATTACHMENT0_EXT,第二个使用GL_COLOR_ATTACHMENT1_EXT,第二个总是无法成功初始化。谁能帮我解答一下呢?
2个fbo初始化的代码几乎一样,如下,只是GL_COLOR_ATTACHMENT0_EXT 和GL_COLOR_ATTACHMENT1_EXT不同罢了
bool InitFbo(unsigned int iWidth,unsigned int iHeight)
{
CreateEmptyTexture(img,iWidth,iHeight);
// Setup our FBO
glGenFramebuffersEXT(1, &fbo);
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fbo);
// Create the render buffer for depth
glGenRenderbuffersEXT(1, &depthBuffer);
glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, depthBuffer);
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16, iWidth, iHeight);
glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, img, 0);
// Attach the depth render buffer to the FBO as it's depth attachment
glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, depthBuffer);
GLenum status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
if(status != GL_FRAMEBUFFER_COMPLETE_EXT)
exit(1);
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
return true;
}
|
|