各向異性過濾

各向異性過濾

各向異性過濾 (Anisotropic Filtering )是用來過濾、處理當視角變化導致3D物體表面傾斜時造成的紋理錯誤。傳統的雙線性和三線性過濾技術都是指“Isotropy”(各向同性)的,其各方向上矢量值是一致的,就像正方形和正方體。

原理

三線性過濾原理同雙線性過濾一樣,都是將相鄰像素及彼此之間的相對關係都記憶下來,然後在視角改變的時候繪製出來。只不過三線性過濾的採集範圍更大,計算更精確,畫面更細膩。

當然占用資源也更多。Anisotropic Filt技術的過濾單元並不是“四四方方”的,其典型單元是矩形,還可以變形為梯形和平行四邊形。畫面上的一個象素,在一個方向上可以包含不同紋理單元的信息。這就需要一個“非正多邊形”的過濾單元,來保證準確的透視關係和透明度。不然,如果在某個軸上的紋理部分有大量信息,或是某個方向上的圖象和紋理有個傾角,那么得到的最終紋理就會變得很滑稽,比例也會失調。當視角為90度,或是處理物體邊緣紋理時,情況會更糟。

過濾方法

各向異性過濾是最新型的過濾方法(相對各向同性2/3線性過濾),它需要對映射點周圍方形8個或更多的像素進行取樣,獲得平均值後映射到像素點上。對於許多3D加速卡來說,採用8個以上像素取樣的各向異性過濾幾乎是不可能的,因為它比三線性過濾需要更多的像素填充率。但是對於3D遊戲來說,各向異性過濾則是很重要的一個功能,因為它可以使畫面更加逼真,自然處理起來也比三線性過濾會更慢。

極品飛車14中叫做非等方性

處理之前的結果:

處理過後的結果:

各向異性過濾 各向異性過濾

進入顯示卡設定的高級設定後,在3D選項的子選項中可以看到各向異性過濾的調整,可以從0級設定到16級,對顯示卡的消耗也會逐漸增大,運行遊戲時的幀數會隨之減小,對於中低端顯示卡用戶而言,玩遊戲時可能會出現明顯的卡頓和掉幀。

下圖展示了在經典的3D隧道動畫中,運用各向異性過濾的前後效果對比。可以看到,沒有進行各向異性過濾時,隧道遠方比較模糊;添加各向異性過濾後,磚塊之間的灰泥等細節清晰可見 。

沒有進行各向異性過濾的效果 沒有進行各向異性過濾的效果
添加各向異性過濾的效果 添加各向異性過濾的效果

相關詞條

相關搜尋

熱門詞條

聯絡我們