Firingsquad推出了3D基础知识的第二部分,以下是部分摘录:
"在前面我们谈论过Z值深度检测,Z-buffer正是存放每个象素深度值的地方,在某个位置的象素的Z值将和同一位置的另一象素的Z值进行比较,之后把新的象素(更准确地说应该是Z值小的象素)的颜色写回帧缓存,所有这些象素的Z值都储存在Z-buffer中。
颜色缓存也储存在内存中,这里储存的是渲染后的实际场景。当使用双倍缓存时,颜色缓存是分为前台缓存和后台缓存,渲染是在后台缓存中进行,而前台缓存中的就是显示在屏幕上的图象。双倍缓存需要双倍的储存空间,但是它的优势就是屏幕刷新没有明显的间隙。
如果使用的是单倍缓存,那么我们很可能会注意到屏幕的重绘过程,特别是Vsynce Disable时。采用双倍缓存后,下一帧已经渲染完成,只是等待出现在屏幕上而已,基本的处理过程可以描述如下:
显示前台缓存同时写回后台缓存-转换前台和后台缓存-渲染后台缓存同时显示前台缓存图象。"
如果你希望了解更多前台和后台缓存,可以参看我以前的3DMark2000使用指南一文,该文章居然
被一个可恶的小人剽窃发表在微型计算机上,真是荣幸啊 :P
文章出处:www.firingsquad.com