如果我将像素从一个FBO复制到另一个FBO并且每个FBO都有多个(不一定是相同数量)的颜色附件,并且我的面具是GL_COLOR_BUFFER_BIT
,那么哪个颜色附件(GL_COLOR_ATTACHMENT0
,GL_COLOR_ATTACHMENT1
,....,GL_COLOR_ATTACHMENTi
)是否会复制?他们都是?如果是,如果这些FBO附加了不同数量的颜色缓冲区怎么办?
假设有2个FBO以这种方式绑定:
glBindFramebuffer(GL_READ_FRAMEBUFFER, fbo1);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, fbo2);
请注意,fbo1
有2个颜色附件,fbo2
有4个颜色附件。
那么在这种情况下glBlitFrameBuffer
blit颜色附件如何?
我在OpenGL文档中找不到任何内容。
答案 0 :(得分:15)
framebuffer color blitting operation只会 从GL_READ_FRAMEBUFFER
读取GL_DRAW_FRAMEBUFFER
,仅写入{{3}为{{1}}指定的。所以这不是附件;它是关于两个帧缓冲区的读取和绘制缓冲区。