通过WEBGL_depth_texture渲染缓冲区对象和深度纹理之间的区别是什么

What is the differences between render buffer object and depth texture via WEBGL_depth_texture?

本文关键字:纹理 深度 之间 区别 是什么 缓冲区 depth WEBGL texture 通过 对象      更新时间:2023-09-26

在我可以使用WEBGL_depth_texture扩展的环境中,我想没有使用渲染缓冲区对象(RBO)。深度纹理比使用RBO更方便,因为我可以将其用作着色器资源。

但我也认为可能存在一些不同的实现、历史原因或性能问题。

您刚刚命名了差异。深度纹理,并作为纹理读取。渲染缓冲区不能。

渲染缓冲区可以做一件纹理不能做的事,那就是它是一个多采样的抗锯齿缓冲区。请注意,WebGL 1.0不直接提供对多采样渲染缓冲区的支持。WebGL 2.0做到了这一点,可以说渲染缓冲区和纹理仍然有空间。深度渲染缓冲区不是多采样IIRC。