因此,我正在阅读关于特定着色算法的论文,并且有一个部分似乎有点模糊,我想知道是否可以在此处获得建议。传递深度缓冲区
基本上它说我首先需要一个网格的3D顶点,并将其转换为窗口坐标wx,wy,wz,其中wz是深度。这部分我已经完成了。
接下来我必须测试这个窗口坐标是否“通过”深度缓冲区。
这就是它所说的,我不确定“传递”深度缓冲区是什么意思。有没有人知道这可能意味着什么,以及如何在openGL中实现这一点?
编辑:
更具体地说,我需要openGL的给我提供反馈,以特定的顶点是否未通过深度缓冲。我实际上并没有渲染这些顶点,所以如果openGL在“幕后”执行所有计算,那对我来说并不好。
你在维基百科找到这个吗? http://en.wikipedia.org/wiki/Z-buffering – acrilige 2013-03-13 13:02:14
是的,但它有点混乱。所以我知道我的'wz'组件是像素的深度,但我感到困惑的是显然openGL有一个内置的z缓冲区值,我可以比较我的wz术语,但我不知道如何访问该初始z值。 – user1782677 2013-03-13 13:04:36
查看OpenGL管道概述,例如:http://www.opengl.org/wiki/Rendering_Pipeline_Overview#Rasterization此页面有深度测试说明。实际上,它是管道的一部分,你可以禁用或不管,但你不需要自己做这个深度测试。 – acrilige 2013-03-13 13:09:29