什么是OpenGL RBO?

什么是OpenGL RBO?,opengl,Opengl,我刚刚读了一篇演示文稿,它似乎建议在GPU->CPU传输中使用RBO而不是PBO。我一直在寻找一些解释RBO的来源,但没有成功 有谁知道解释RBOs的好来源吗?来自opengl wiki: Renderbuffer对象是OpenGL 包含图像的对象。他们是 专门与一起创建和使用 帧缓冲区对象。他们是 为用作渲染而优化 目标,而纹理可能不是 更多信息 gamedev.net上的一个示例(请看“添加深度缓冲区”一节) 编辑 渲染到帧缓冲区时,可以在两种类型的帧缓冲区可附加图像之间进行选择;纹理图像和

我刚刚读了一篇演示文稿,它似乎建议在GPU->CPU传输中使用RBO而不是PBO。我一直在寻找一些解释RBO的来源,但没有成功

有谁知道解释RBOs的好来源吗?

来自opengl wiki:

Renderbuffer对象是OpenGL 包含图像的对象。他们是 专门与一起创建和使用 帧缓冲区对象。他们是 为用作渲染而优化 目标,而纹理可能不是

更多信息

gamedev.net上的一个示例(请看“添加深度缓冲区”一节)

编辑

渲染到帧缓冲区时,可以在两种类型的帧缓冲区可附加图像之间进行选择;纹理图像和渲染缓冲图像。在前一种情况下,您将渲染帧缓冲区纹理,在后一种情况下,您将获得屏幕外渲染

讨论了这两种frambuffer附加图像的区别


你可以找到有关FBO和可附加图像的更多信息。

为什么该教程只对深度缓冲区使用RBO,而不同时对颜色使用RBO?@ronag也许你现在已经明白了这一点,我只是自己在学习这些东西,因此,请恕我直言:将颜色渲染到纹理可以让它们将生成的图像用作纹理。不过,它们不需要纹理中的深度信息,因此在那里使用了renderbuffer。纹理具有更多功能,但renderbuffers(可能)具有更好的性能。