如上圖所示。為什么會(huì)出現(xiàn)這種情況慢叨?因?yàn)殡m然我們使用了正背面剔除去去掉黑色部分务蝠,但是當(dāng)“甜甜圈”在旋轉(zhuǎn)的時(shí)候 在處于如圖所示的位置的時(shí)候拍谐。這個(gè)時(shí)候系統(tǒng)不能清除的分析出 那個(gè)是正面馏段,那個(gè)是背面。因此就會(huì)出現(xiàn)被啃的情況亡蓉。這種情況改怎么解決呢。就需要我們對(duì)其做深度測(cè)試砍濒。
深度測(cè)試:
首先我們要了解什么是深度。深度就是以物體坐標(biāo)系為準(zhǔn)爸邢。當(dāng)觀察者的位置在物體正面的時(shí)候。這個(gè)時(shí)候Z值越大 物體離我們?cè)浇芎印R部梢岳斫鉃?Z的絕對(duì)值越大。物體離我們?cè)浇倨荨:?jiǎn)單來說 就是物體離觀察者的距離待诅。如果距離小物體離我們?cè)浇弊摺H绻嚯x越大離我們?cè)竭h(yuǎn)咱士。
而什么是深度測(cè)試呢。深度測(cè)試就是在繪制物體的時(shí)候系統(tǒng)會(huì)拿著新的深度值去和 深度緩存區(qū)儲(chǔ)存的深度值去做比較锐膜。如果新的深度值大于緩存區(qū)的深度值。那么這個(gè)新的像素點(diǎn)就不去繪制道盏。如果新的深度值小于深度緩存區(qū)的值那就去繪制這個(gè)像素點(diǎn)文捶。這就叫深度測(cè)試。
多邊形偏移:
為什么要使用多邊形偏移粹排。如果開啟了深度測(cè)試在我們對(duì)圖層進(jìn)行渲染的時(shí)候,如果2個(gè)圖層的間隔特別近 已經(jīng)大于了深度緩存區(qū)的精度顽耳。這時(shí)候系統(tǒng)不能判斷這兩個(gè)圖層的位置。這個(gè)時(shí)候就會(huì)出現(xiàn)Z-Fighting(Z沖突射富,閃爍) 而這個(gè)時(shí)候 就需要我們開啟多邊形偏移來進(jìn)行調(diào)整。而多邊形偏移就是讓兩個(gè)圖層中間的間隔變大一點(diǎn) 讓系統(tǒng)能更好的分別出 圖層的先后位置