将深度纹理复制到RGBA纹理

时间:2012-01-05 14:18:33

标签: opengl

我使用

创建了一个纹理
glTexImage2D(GL_TEXTURE_RECTANGLE_NV, 0, CONSENSUS_DEPTH_COMPONENT, width, height, 0, GL_DEPTH_COMPONENT, GL_FLOAT, 0);

此纹理用于其他代码并填充深度。现在我想将深度值复制到RGBA纹理(与哪个颜色通道无关)。

我该怎么做?

1 个答案:

答案 0 :(得分:3)

如果需要快速,我会说渲染纹理大小的正交四边形并使用着色器从深度纹理中读取并写入目标纹理。

如果性能无关紧要,您可以使用PBO(甚至可能更快,具体取决于您的渲染管道,但会使CPU停滞)。 Here's an overview on said PBOs

我不知道有任何固有的OpenGL方法可以做到这一点。