【发布时间】:2019-01-14 16:06:36
【问题描述】:
我正在开发 webgl 应用程序,我在 mapbox-gl-js 之上绘制了详细的建筑。
除了一个细节,一切都很好,我不知道如何获取每个绘制帧的深度缓冲区。
在某些情况下,我的叠加层是由 mapbox-gl-js 样式的建筑物突出显示的,但它必须在它后面。
我认为只有一种可能正确执行此操作 - 从 mapbox-gl-js 获取深度缓冲区并将其作为纹理传递给我的着色器,并与我的实际深度缓冲区值进行比较。
与延迟渲染技术一样。
有可能这样做吗?
【问题讨论】:
-
如果您深入研究this library,您可能会发现能够将深度缓冲区暴露给您的代码。不幸的是,没有真正的方法可以知道。例如 mapbox-gl 可能会渲染地图和建筑物,清除深度缓冲区,然后渲染标签或其他东西。
-
@gman 很棒的库,我昨天看到你添加了 mapbox gl 示例,谢谢你的关注。我的应用程序现在只是两个画布的堆栈,其中图像在数学上是同步的,使用你的库它可以更有效。谢谢
标签: webgl mapbox-gl-js depth-buffer