導航:首頁 > 凈水問答 > 紋理過濾shader

紋理過濾shader

發布時間:2025-09-23 12:24:34

① 紋理的各向異性過濾

「各向異性過濾」(Anisotropic Filtering,縮寫為 AF) 是一種紋理過濾方法。在一些銷笑情況下可以提升畫面的清晰度。

下面這幅圖是來自 ARM 網站。 https://developer.arm.com/documentation/101897/0200/buffers-and-textures/anisotropic-sampling-performance

其中,左圖採用一般的「三線性過濾」,右圖採用了 2x 的「各向異性過濾」。
可以看到在這個木頭箱子的側面,左圖較為模糊,右圖較為清晰。

對於有 mipmap 的情形。
如果是「三線性過濾」,會根據紋理坐標的變化率,計算其應該採用哪一級 mipmap。
但,紋理坐標是二維的,有 u,有 v。
如果 v 和 v 的變化率並不一致,則根據 u 和根據 v 可計算得到不同的 mipmap 級別。
一般「三線性過濾」會取兩者之間較大的 mipmap,但這樣就不精確了。
「各向異性過濾」則會根據 mipmap_u 和 mipmap_v 的差異,進行多次采樣,然後綜陪鎮合。
這樣就能提升畫質。

實際的采樣次數由硬體決定。
當物體的表面正對攝像機時,u 和 v 的虧亂含變化率差異小,采樣的次數也少。
當物體表面近乎垂直於視線時,u 和 v 的變化率差異大,采樣的次數也多。

程序可以通過圖形 API(Direct3D、OpenGL)設置最大采樣次數。
設置 2x 的「各向異性過濾」,則最多會采樣 2 次。
如果設置 16x 的「各向異性過濾」,則最多會采樣 16 次。
次數越多,畫質越好,但性能越差。

下圖是各種設置的視覺效果對比(為了凸顯問題,圖片已經被放大至 200%)

「各向異性過濾」會導致更多次數的紋理采樣,影響性能。

看各個 GPU 廠商的說法。

按 ARM 的說法,2x 的各向異性過濾是很不錯的。不過接下來就需要進一步測試了。特別是蘋果,沒有找到對應的文章。

用 shader 來做過濾,達到更佳的畫質:
https://bgolus.medium.com/sharper-mipmapping-using-shader-based-supersampling-ed7aadb47bec

② 紋理過濾模式中的Bilinear、Trilinear以及Anistropic Filtering(轉)

紋理過濾模式是解決紋理采樣時像素與紋理像素不對應,導致圖像模糊或錯位問題的關鍵技術。在三維圖形表面貼圖時,像素中心與紋理中心並不完全一致,且像素大小與紋理大小可能不匹配。紋理過濾通過平滑texel與pixel之間的對應關系,實現更清晰、准確的貼圖效果。常見的過濾模式包括Nearest Point Sampling(最近點采樣)、Bilinear(雙線性過濾)、Trilinear(三線性過濾)以及Anisotropic Filtering(各向異性過濾)。

MipMap技術由Lance Williams於1983年提出,用於生成一系列解析度遞減的紋理圖像,以提高貼圖性能。MipMap由原始圖像經過逐級縮放生成,如一張256x256圖像可生成從8x8到1x1的七級MipMap。硬體通常支持MipMap的自動生成,通過指定CreateTexture API中的levels參數控制生成級別。

各向同性和各向異性描述了三維表面與屏幕空間的關系。當三維表面平行於屏幕,為各向同性;當表面傾斜,為各向異性。各向異性情況下,紋理變形,需要採用更復雜的過濾模式。Nearest Point Sampling直接選取最近的texel進行采樣,適用於紋理與三維圖形尺寸相近的情況。Bilinear過濾通過取周圍四個texel的平均值,實現像素間過渡的平滑。然而,Bilinear過濾僅適用於某一層MipMap,對於尺寸不匹配的情況效果不佳,於是引入了Trilinear過濾。

Trilinear過濾基於雙線性過濾,通過在相鄰兩層MipMap上進行雙線性過濾,再進行線性插值,以提供更平滑、更准確的貼圖效果。然而,在各向異性情況下,Trilinear過濾效果有限。各向異性過濾(Anisotropic Filtering)考慮紋理與屏幕空間角度,通過在u和v方向上按比例采樣不同數量的點,實現更精確的貼圖效果。各向異性過濾在三維表面傾斜時表現更為出色,但性能要求較高。

在性能比較方面,各過濾模式的采樣次數不同。Anisotropic Filtering在16X效果最佳,但可能導致顯卡性能下降。Anisotropic Filtering是硬體實現的,其具體實現細節相對復雜,無法完全由Pixel Shader實現。實際應用中,通過MipMap技術優化紋理載入,結合適當的過濾模式,可以顯著提升圖像質量和性能。

閱讀全文

與紋理過濾shader相關的資料

熱點內容
保時捷macan空氣濾芯怎麼拿不掉 瀏覽:62
中葯生產污水處理 瀏覽:801
什麼魚合適污水養殖 瀏覽:759
實驗室污水處理試劑 瀏覽:845
超濾一體化設備 瀏覽:280
超濾管能用乙醇嗎 瀏覽:548
mac過濾添加也沒用 瀏覽:619
罐式過濾器的結構圖 瀏覽:603
超濾反洗次氯酸鈉投加量計算 瀏覽:780
污水Ls是什麼 瀏覽:509
污水管管井多少米一個 瀏覽:740
原神風龍秘境要多少樹脂 瀏覽:666
超濾完整性測試 瀏覽:155
青州四海水處理工資怎麼樣 瀏覽:260
空氣凈化器更換濾網怎麼恢復 瀏覽:833
污水處理o1o2的作用 瀏覽:663
空調濾芯怎麼換軒逸 瀏覽:222
紋理過濾shader 瀏覽:468
飲水機熱水很臟怎麼辦 瀏覽:942
安裝完安利凈化器怎麼使用開關 瀏覽:293