除了默认的帧缓冲之外,在OpenGL FBO中,我在什么情况下希望使用渲染缓冲附件而不是纹理附件?因为纹理附件似乎更具通用性。
除了默认的帧缓冲之外,在OpenGL FBO中,我在什么情况下希望使用渲染缓冲附件而不是纹理附件?因为纹理附件似乎更具通用性。
纹理为您提供更多功能(采样!格式多样性),因此更有可能出现性能损失。
答案很简单:在需要从表面采样的地方使用纹理(没有其他选择)。
在不需要采样的地方使用渲染缓冲区。驱动程序可以根据您表示不进行采样的意图来决定是否更有效地存储像素数据。您可以使用GL blitting之后对结果进行处理。
glReadPixels
将其提取到CPU中,而使用Texture,则可以在后续渲染中使用它。 - heLomaN