1. 程式人生 > 其它 >遊戲開發亂七八糟學習:一些抗鋸齒技術

遊戲開發亂七八糟學習:一些抗鋸齒技術

一.SSAA

  超級取樣抗鋸齒:在顯示尺寸不變的情況下提高取樣率,讓單個畫素變得極小,但是效能消耗增加.

  在不採用SSAA技術的情況下,一個單獨的網格是否顯示顏色由網格中心點是否在幾何圖形區域內決定;採用SSAA後,一個網格是否顯示顏色將不再由一箇中心點決定,而是由四個或更多網格點是否在幾何區域內決定,這些點在網格內均勻分佈,而且可以由在幾何區域內的點數量決定顏色的深淺.

二.MSAA

  多重取樣抗鋸齒:由於SSAA的效能消耗是成倍提高的,因此採用MSAA可以進行改進.MSAA相當於對SSAA進行"剪枝",不再提高所有畫素點的取樣率,而是試圖找出物體邊緣部分的畫素,只提高這部分畫素的取樣率,忽略了物體內部的畫素和物體外部的畫素.

三.FXAA

  FXAA相比於MSAA的速度更快,視訊記憶體佔用更低.FXAA將即將渲染的圖形作為輸入,然後輸出消除鋸齒的版本,同樣基於邊緣檢測的抗鋸齒演算法,但是依賴於畫素亮度資訊的變化,計算畫素和其周圍想讀的亮度對比,以此判定一個畫素是否是邊緣畫素.

四.TXAA

  TXAA除了檢測邊緣畫素並平滑抗鋸齒外,還能夠對幀之間的整個場景進行抖動取樣(基於前兩幀的渲染快取對當前幀進行處理),以減少閃爍,原理是通過HDR後處理管線從硬體層面上提供顏色矯正處理.