【发布时间】:2013-06-14 08:27:08
【问题描述】:
我在我的游戏中使用了延迟渲染器。因此,第一个渲染通道是使用多个渲染参数创建反照率和正常缓冲区并填充深度缓冲区。所有这些缓冲区实际上都是纹理。
现在我想从其他渲染通道访问深度缓冲区,从而访问其他帧缓冲区,而不改变深度纹理。我只想读取深度值。对于这些通道,我主要绘制全屏四边形,我不希望它们更新深度纹理并将其消隐为 0 的深度值。
如何将给定的深度纹理附加到另一个帧缓冲区并确保它是只写的?
【问题讨论】:
-
将深度纹理附加到第二个 FBO。注意:我在 Linux 上遇到了一些 ATI 驱动程序的问题。后备是做一个 blit,但希望这不是必需的。
-
我假设你的意思是只读?
标签: opengl framebuffer render-to-texture depth-buffer deferred-rendering