MSAA解析为同一FBO的纹理附件

时间:2013-05-06 09:04:48

标签: opengl

我一直在使用几个自定义FBO。 FBO-A附有MSAA纹理,其中几何体被渲染。然后通过将FBO-A的MSAA纹理附件blit到FBO-B的常规tex 2d附件来解决它。这个过程意味着在多个FBO之间进行切换,并在几个中说明相反,在不同的FBO之间切换附件之间的性能更明智。我试图设置MSAA纹理和附加到同一个FBO的常规纹理。但我发现我无法通过blitting做出决心。如果我从MSAA到常规纹理副本进行纹理复制,MSAA是否会像blitting一样被解决?

更新

对于那些有兴趣知道在一个FBO中使用多个FBO与多个附件是否值得(性能明智)的人。 我刚做了一个测试(NVidia Quadro 4000),结果是完全相同的FPS(+ = 15-20帧)。但可能是硬件和OGL实现依赖。

1 个答案:

答案 0 :(得分:5)

  

我尝试将MSAA纹理和附加到同一FBO的常规纹理设置。但我发现我无法通过blitting做出决定。

当然不是。为了执行blit,源和目标帧缓冲区必须完整。其中一个rules of completeness状态表示所有附加图像必须具有相同数量的样本。

  

如果我从MSAA到常规纹理副本进行纹理复制,那么MSAA是否会像blitting一样被解析?

“纹理复制”是什么意思?

如果您正在谈论使用新的4.3/ARB_copy_image glCopyImageSubData,那么不。同样,源图像和目标图像的样本计数必须匹配。

如果您正在使用copying from framebuffers to textures等讨论glCopyTexSubImage2D,那么是的,这将执行多重采样解析。

然而,你真的应该做这个blit。