Google got me this:
#define CHECK_FRAMEBUFFER_STATUS() \
{ \
GLenum status; \
status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT); \
switch(status) { \
case GL_FRAMEBUFFER_COMPLETE_EXT: \
break; \
case GL_FRAMEBUFFER_UNSUPPORTED_EXT: \
/* choose different formats */ \
break; \
default: \
/* programming error; will fail on all hardware */ \
assert(0); \
}
}
and
if (renderToTextureEXT)
{
// create a backbuffer and texture
RTT.gl.glGenFramebuffersEXT(1, &RTT.gl.fb);
RTT.gl.glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, RTT.gl.fb);
RTT.gl.glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, RTT.texture, 0);
GLenum status = RTT.gl.glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
if (status!=GL_FRAMEBUFFER_COMPLETE_EXT) {
renderToTextureEXT= false; // Something went wrong with the FBO approach, default to PBuffer
// if you got GL_FRAMEBUFFER_UNSUPPORTED_EXT then you probably need to choose a different format for glTexImage2D
}
// point it back to normal screen drawing mode
RTT.gl.glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
}
Couldn't find any real list of valid responses, sorry.