深度緩衝

在計算機圖形學中 ， 深度緩衝是在三維圖形中處理圖像深度座標的過程 ， 這個過程通常在硬件中完成 ， 它也可以在軟件中完成 ， 它是可見性問題的一個解決方法 。 可見性問題是確定渲染場景中哪部分可見 、 哪部分不可見的問題 。 畫家算法是另外一種常用的方法 ， 儘管效率較低 ， 但是也可以處理透明場景元素 。 深度緩衝也稱爲Z緩衝 。 當三維圖形卡渲染物體的時候 ， 每一個所生成的像素的深度 （ 即z座標 ） 就保存在一個緩衝區中 。 這個緩衝區叫作z緩衝區或者深度緩衝區 ， 這個緩衝區通常組織成一個保存每個屏幕像素深度的x - y二維數組 。 如果場景中的另外一個物體也在同一個像素生成渲染結果 ， 那麼圖形處理卡就會比較二者的深度 ， 並且保留距離觀察者較近的物體 。 然後這個所保留的物體點深度保存到深度緩衝區中 。 最後 ， 圖形卡就可以根據深度緩衝區正確地生成通常的深度感知效果 ： 較近的物體遮擋較遠的物體 。 這個過程叫作z消隱 。 深度緩衝的分辨率對於場景質量有很大的影響 ： 當兩個物體非常接近的時候 ， 16位的深度緩衝區可能會導致 “ z緩衝區fighting ” 的人爲噪聲 ； 使用24位或者32位的深度緩衝區就會表現得較好 ； 由於精度太低 ， 所以很少使用8位的深度緩衝區 。