各項異性過濾
各項異性過濾(AF)是一種通用的紋理質量加強技術,可影響紋理在非正交視角下的外觀。紋理是包含各類數據的圖像,好比顏色、透明度、反射率和平滑度(法線)。這些數據映射到物體並通過GPU處理,以便於在屏幕上呈現真實的外觀。但就其原始維度來講,大多數紋理都因爲計算開銷過大而不能在場景中無限制重用,由於物體的紋素(1像素紋理)與照相機之間的相對距離會影響細節的可見程度,這常常會致使浪費大量處理時間來獲取3D場景中不成比例的小曲面上應用的 多重紋理樣本。爲了同時保證性能和圖像質量,AF使用了mipmap;mipmap是以較低分辨率呈現的主紋理副本,當相應曲面與照相機之間的距離達到指點值時,圖形引擎即可調用它。通過適當過濾以後,在一個場景中使用多種mipmap水平不只不會對其外觀形成的太大的影響,同時還能夠極大地優化性能。
因爲mipmap的維度一般是2的冪,或者小於原始紋理,所以有時須要爲一個紋素採樣多個mipmap,而這要求使用過濾方法來避免模糊和其餘失真現象。 默認的雙線過濾是最簡單、計算開銷最小的過濾方法:它計算紋理的最終顏色,根據圖形引擎對適當點(目標紋理存在於屏幕上時)定義的mipmap執行4次採 樣,這些樣本的顏色數據將合成爲最終結果。雖然這在必定程度上會形成紋理角度扭曲,但雙線過濾僅對圖形引擎肯定的mipmap執行採樣,這意味着調用了兩 種不一樣mipmap大小的紋理在出現角度扭曲後會對其清晰度產生顯著的影響。做爲雙線過濾的視覺連續方法,三線過濾能夠連續對目標紋素的相鄰mipmap 採樣和拉平紋理數據,所以在mipmap之間提供了平滑的轉換。但這種方法與雙線過濾都假定紋理在照相機前顯示爲方塊,從而影響紋理在較小視角下的質量。其緣由在於紋素比mipmap樣本長或寬會分別形成過分採樣或採樣不足,從而致使圖像模糊。
各項異性過濾的目的是在各類狀況下都能提供出色的圖像質量,同時將性能開銷控制在較低的水平。根據計算機科學的定義,各項異性是處理同一空間中相異座標的質量,這適用於在顯示時未與照相機絕對正交的紋理。如前所述,當採樣紋理與照相機斜交時,雙線和三線過濾最終都會形成質量丟失,由於兩種方法在從 mipmap獲取紋理採樣時都假定映射紋理在所呈現的空間中爲絕對的方形,這不多能產生真實的效果。mipmap的等方性(即便用相同的維度)也是形成質 量丟失的另外一個緣由,所以當紋素爲梯形時就沒法在兩個方向上充足採樣。爲了解決此問題,各項異性過濾將根據紋理的角度扭曲程度按比例擴展mipmap的高 度和寬度;該比例取決於所指定的最大采樣值,而後將執行適當的採樣。AF支持的各項異性水平範圍是1(無擴展)到16,這些值定義了mipmap可擴展的最大程度,但AF爲用戶提供的擴展水平一般爲2的冪:即2x、4x、8x和16x。這些設置之間的區別在於AF過濾紋理的最大角度不一樣。舉例來講,4x過 濾紋理的角度比2x陡兩倍,但仍然在2x範圍內對紋理執行標準2x過濾來優化性能。使用的AF設置越高,能得到的收益也會更小,由於它們所適用的角度會呈 指數形式減小。ide
能夠經過「3D設置」部分中的「NVIDIA控制面板」來控制各項異性過濾,但若是要得到最佳的性能和兼容性,NVIDIA® (英偉達™)則建議用戶將它設置爲由應用程序控制。性能
反鋸齒
反鋸齒(AA)是一種渲染技術,用於最大限度地減小3D場景中各物體的任何非垂直邊緣的鋸齒,即相似於梯狀的視覺失真效果(visual artifact)。鋸齒是當代3D渲染管線中的一項基本操做產生的:光柵化,即將近乎全真的圖像轉換爲離散的像素矩陣(顯示器)的過程。這一過程每每會讓連續的邊緣出現不一致問題,由於GPU只會對佔據像素空間一半以上的線條着色,從而形成一些本應平滑的線條成爲了鋸齒狀的邊緣。
與各項異性過濾相同,實現這種技術的衆多方法也各有優劣,而最經常使用的兩種分別是超採樣(supersampling)和多重採樣(multisampling)。這兩種方法最終都能產生相同的效果:經過對某像素的相鄰子像素(由GPU渲染但未在屏幕上顯示的虛擬像素)採樣來爲其確 定中間色,從而使物體的邊緣更加真實,但兩種方法之間的差異在於如何獲取最終顏色。
超採樣是一種強力的AA方法,它強制GPU對幀過分採樣,或者使用分辨率乘以採樣率的積(好比說,原始分辨率1680x1050*4次採 樣=6720x4200)做爲維度來呈現它,並從目標像素附近的樣本獲取顏色數據,而後將幀下采樣(下降)至其原始大小。完成對幀的下采樣以後,應用負水平細節線來銳化採樣物體的紋理,以消除下采樣和像素合併帶來的模糊。超採樣是一種全屏反鋸齒,這意味着幀中的每個像素都會被採樣並糾正,而不是僅僅將它 們排列在物體的外側邊緣,從而以巨大的性能爲代價來提升圖像的質量,由於GPU須要計算大量額外的信息。不能經過「NVIDIA控制面板」來啓用超採樣反鋸齒模式。
與超採樣相同,多重採樣也會對幀過分採樣(以更高的分辨率呈現它),可是會縮短各子像素從採樣像素繼承顏色值的時間,而且僅爲子像素分配惟一的深度值(而超採樣會計算各個單獨的顏色/深度值)。因爲GPU知道哪些像素會在對幀執行下采樣時顯示,所以最終顏色將經過深度值來計算:若是子像素深度不一致,則像素會排列在邊緣,而且須要經過修改像素的不透明度(方法是計算採樣數量以及具備不一樣深度值的子像素的數量)來對其着色(在4x中,該值能夠是100%、 75%、50%、25%和0%)。這種方法能夠比超採樣更大地下降性能需求,同時仍然提供能夠接受的幀率,從而可應用於大多數3D遊戲。
經過「3D設置」部分中的「NVIDIA控制面板」,可使用多種採樣率(2x 至16x)來執行超採樣。可是,要得到最佳的性能和兼容性,NVIDIA® (英偉達™)建議用戶將採樣率設置爲由應用程序控制。優化