Nvnews的Mikec对GF3的Z轴遮挡选择技术进行了深入的研究:
“在渲染物体的过程中,对于一个物体是部分遮挡还是被其他物体全部遮挡需要做出判决。如果不先经过判断的话,那么可能一个象素在每一帧会多次渲染,造成不必要的颜色和帧缓存的重复读写。在每一帧象素所渲染的次数将决定景深复杂度,而景深复杂度的增加也会导致处理时间和内存占用的增加。
而GeForce3采用了Z轴遮挡选择技术(Z-occlusion culling)技术。occlusion culling 的原理是利用Z-buffer来测试一个物体是否比当前缓存中的景深值离摄象机很近,如果测试失败,那么当前的物体就不可见。否则就更新缓存中的Z值,物体也同时被写入帧缓存...
...正如我们前面提到的,传统的图形架构渲染它收到的每个三角形的每个象素,并将每个象素储存在帧缓存中以决定其相应的颜色和Z值,这种方法可以产生正确的结果,但是必须渲染所有的象素,不管这个象素是否能看见。”
随后Nvnews用了GL_EXT_reme软件来测试occlusion culling的有效性。
Overdraw=3时
“尽管Nvidia对occlusion culling 技术秘而不宣,但是很显然,从前向后渲染场景可以增加性能,在流水线中早先的深度缓存会舍弃一些看不见的象素。
从前向后渲染是先渲染离视角近的象素,然后远景被近景挡住的象素就会被忽略,这样可以将Overdraw减到最小...”
相关新闻: