我为屏幕外渲染创建了一个帧缓冲区。 我做了一个没有数据设置的空纹理。 我没有附加颜色渲染缓冲,因为有纹理背衬。
在代码中:
//Generate framebuffer, hook up renderbuffer.
glGenFramebuffers(1, &_frameBufferName);
glBindFramebuffer(GL_FRAMEBUFFER, _frameBufferName);
//DON'T Attach texture to framebuffer (RGBA).
//glGenRenderbuffers(1, &_colorRenderBufferName);
//glBindRenderbuffer(GL_RENDERBUFFER, _colorRenderBufferName);
//glRenderbufferStorage(GL_RENDERBUFFER, GL_RGBA4, _layerWidth, _layerHeight);
//glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, _colorRenderBufferName);
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, _textureName, 0);
glClear(GL_COLOR_BUFFER_BIT);
它实际上有效,但xCode探查器总是声称帧缓冲区没有附件。 我需要彩色渲染缓冲吗?