Alpha to Coverage
Alpha to Coverage ist eine Anti-Aliasing-Technologie die es ermöglicht Alpha-Blending-Texturen, wie beispielsweise Zäune oder Vegetation zu rendern.
Ein Teil der Texturen in modernen Videospielen benötigen Alpha-Texturen, wie sie zum Beispiel bei der Darstellung von Vegetation oder Zäunen benutzt werden. Das normale Antialiasing, auch Edge-Antialiasing genannt, kann nicht für die Alpha-Texturen genutzt werden, so ergibt sich das Problem des Kantenflimmerns. Dies lässt sich nur mit transparentem Antialiasing verhindern. Eine Möglichkeit des transparenten Antialiasings war bisher Supersampling (SSAA), was jedoch als extrem rechenlastig gilt. Da hier im Sinne von Full-Scene-Anti-Aliasing (FSAA), auch Texturen erfasst und herunterskaliert ausgegeben werden, erhöht sich auch die Texturqualität.
Das Alpha-To-Coverage ermöglicht es dem Antialiasing diese Alpha-Texturen zu erfassen und mit relativ hoher Geschwindigkeit zu glätten. Zusätzlich ergibt sich das Problem, dass moderne Spiele meist Off-Screen-Buffer verwenden und somit AA zusätzlich erschwert wird.[1]
Technik
Diese Methode benutzt den Alphakanal von Texturen als eine Coverage Mask für Anti-Aliasing. Alpha to Coverage Multisampling basiert auf regulärem Multisampling mit der Ausnahme, dass die Alpha Coverage Mask mit der Multisample Mask verknüpft wird. Alpha to Coverage konvertiert die Alphakomponentenausgabe aus dem Pixel Shader zu einer Coverage-Mask. Wenn das Multisampling angewandt wird, erhält jedes Ausgabefragment eine Transparenz von 0 oder 1, abhängig von dem Alpha Coverage und Multisampling-Resultat.
Einzelnachweise
- GPU Programming Guide (PDF-Datei; 1,8 MB)