Das tecChannel 3D-Lexikon: A bis F

Anti-Aliasing

Anti-Aliasing wird zur Kantenglättung eingesetzt. Es liegt in der digitalen Natur der Computer, dass die Grafikhardware eine Linie nicht ideal darstellen kann, sondern diese durch so genanntes Sampling durch eine Reihe von Pixel nur angenähert zeigt. Daraus entstehen unschöne Artefakte (Treppenstufen oder Jaggies), was im Allgemeinen als Aliasing bezeichnet wird. Auch der bekannte Effekt, wenn sich ein Wagenrad optisch in die falsche Richtung zu drehen scheint, wird Time-Aliasing genannt. Es gibt zwei Arten von Anti-Aliasing, die dieses Problem lösen: Temporal-Anti-Aliasing und Spatial-Anti-Aliasing, wobei das letztgenannte noch in Supersampling (oder Full Scene Anti-Aliasing) und Polygon-Filtering (beziehungsweise Edge-Anti-Aliasing) aufgeteilt ist.

Beim Supersampling, der am weitesten verbreiteten Methode, wird jeder Pixel in Subpixel unterteilt. Für jeden Punkt dieser Subpixelmaske (2x2 oder 4x4 Punkte groß) wird eine Farbe berechnet und anschließend auf Basis dieser Werte der Farbwert des eigentlichen Pixels interpoliert.

Die heutigen Grafikkarten benutzen vorwiegend zwei Implementierungen des Full-Scene-Anti-Aliasing. Bei der ersten Methode wird die Szene intern in einer höheren Auflösung gerendert und anschließend auf die benötigte Ausgabeauflösung heruntergerechnet. Für eine 2x2 große Subpixelmaske und eine gewünschte Auflösung von 800x600 wird intern also ein 1600x1200 großes Bild berechnet. Ein anderes Verfahren berechnet die Szene mehrmals (zum Beispiel 4 Durchgänge bei einer 2x2 Maske) und verschiebt dabei mit jedem Durchgang das Bild um ein kleines Stück. Jedes Zwischenergebnis wird in einen so genannten Accumulation Buffer addiert, dessen Inhalt das fertige Bild ergibt. Der Vorteil dieses vor allem bei OpenGL-Beschleunigern benutzten Verfahrens ist der geringe Speicherverbrauch. Es braucht selbst für eine 4x4 große Maske, die das beste Ergebnis liefert, nicht mehr Speicher als für eine Szene ohne Anti-Aliasing. Die selbe Technik benutzt auch der von 3Dfx entwickelte T-Buffer.

Beim Edge-Anti-Aliasing werden die Kanten von einzelnen Polygonen, Linien und Punkten geglättet. Auch hier wird zwischen den Farbwerten des Polygons und seiner Umgebung interpoliert, um einen weichen Übergang darzustellen.