Wie in jedem Jahr fand auch 2010 die SIGGRAPH statt, dies steht für "
Special
Interest
Group on
GRAPHics and Interactive Techniques". In Los Angeles, USA, trafen sich vom 25. bis 29. Juli Software- wie Hardware-Entwickler auf der Computergrafik-Messe, um sich unter dem Motto "Join the people behind the pixels" über Render-Features und Co. auszulassen. Auch Themen wie 3D (Avatar!) und neue Schnittstellen wie OpenGL 4.1 der Khronos Group sind am Start - wir beschränken uns auf das, was für Spieler interessant ist oder künftig spannend sein könnte.
War vor einigen Jahren noch HDR-Rendering das Schlagwort schlechthin, wenn es um Spiele ging, sind es heute Ambient Occlusion und Post-Effekte wie Depth of Field und der Bokeh-Filter. Gerade im Kommen ist das sogenannte MLAA, also Morphological Antialiasing. Auf der SIGGRAPH 2010 hielten prominente und weniger bekannte Sprecher Präsentationen ab, die sich dem einen oder anderen Thema widmeten.
SIGGRAPH 2010 (8) [Quelle: siehe Bildergalerie]
SIGGRAPH 2010 (19) [Quelle: siehe Bildergalerie]
SIGGRAPH 2010 (55) [Quelle: siehe Bildergalerie]
SIGGRAPH 2010 (67) [Quelle: siehe Bildergalerie]
Diffusion DoF in Metro 2033 [Quelle: siehe Bildergalerie]
DICEs Johan Andersson beispielsweise erläuterte sogenanntes Tile-based Deferred Shading unter Zuhilfenahme von Compute-Shadern: Sicherlich kennen Sie das Bild der "Frostbite 2.0"-Engine mit 1.000 Lichtern - dieses wird damit gerendert. TBDS erlaubt durch die Stückelung von Beleuchtungsdaten die flotte Abarbeitung von aberhunderten von Point Lights, dummerweise ohne Schatten - Verwendung findet sich dafür natürlich trotzdem und sei es auch nur um damit zu protzen. Sobald die Lichtquellen Schatten werfen, schrumpft die Anzahl zusammen oder die Fps fallen ins Bodenlose.
Problematisch bei Verwendung von Deferred statt Forward Shading ist die Kantenglättung, genauer gesagt traditionelles MSAA. Denn das kostet nicht nur viel Speicherplatz (im Falle von Full-HD und 4x MSAA bereits 165 MiByte, was für Konsolen schlicht zu viel ist), sondern auch gehörig Rechenleistung. Als aktuelle Beispiele seien hier Starcraft 2 und Metro 2033 genannt.
Letzteres geht daher einen anderen Weg, den des MLAA - 4A Games sprechen wenig korrekt von "Analytical AA". Intel zeigte die
Referenzimplementierung auf, bei welcher ein Shader ein Pixel an einer Kanten erkennt und dieses mit dem Farbwert der umliegenden Pixel mischt. Diese Methode ist deutlich günstiger als ROP-basiertes MSAA, das Ergebnis aber ist nur in Standbildern wirklich brauchbar - denn MLAA schafft keine zusätzlichen Bild-Informationen (Sub-Pixel!), sondern "matscht" schlicht vorhandene. Vorteilhaft vor allem aus Konsolen-Sicht ist der geringere Speicherverbrauch und die PS3 etwa kann es per SPU berechnen. Metro 2033 erlaubt bereits eine Mischung von MSAA und MLAA für besonders "glatte" Bilder, künftig könnte MLAA auf dem PC auch per Compute-Shader flotter berechnet werden als bisher.
Weiter geht es mit Ambient Occlusion - der beliebten Umgebungsverdeckung, welche mithilfe des Tiefenpuffers oder auch Z-Buffers diffuse Schatten wirft und damit den Eindruck einer realistischeren Beleuchtung erweckt. Populär wurde insbesondere Screen-Space Ambient Occlusion in der Cryengine 2 (
SIGGRAPH 2007, Absatz 8.5.4.3). Ambient Occlusion ist sehr rechenaufwendig, oft tritt beim Zugriff auf eine Textur ein Cache-Miss auf und die Performance leidet. Daher wird gerne nur die halbe Auflösung aus dem Z-Buffer gerendert, um die Leistung zu steigern - darunter leidet allerdings die Qualität (trotz Upsampling-Filtern). Aktuell verwenden die meisten Entwickler HBAO ("Horizon-based Ambient Occlusion"), eine Art von SSAO - näheres finden Sie in der 2008er
Präsentation von Nvidia. Neben der geringeren Z-Buffer-Auflösung produziert HBAO laut Johan Andersson Artefakte oder falsche Verdeckungen, deshalb soll künftig AAO ("Analytical Ambient Occlusion") herhalten: Bereits experimentell in der Frostbite 2.0 enthalten (die Engine, die in
Battlefield 3 zum Einsatz kommt), nutzt AAO sogenannte Ambient Occlusion Volumes, welche auf Basis der Geometrie, nachfolgendem Depth-Clipping und dem für Deferred Shading zwingend notwendigen G-Buffer die benötigten Informationen errechnen. Das sieht sehr gut aus, kostet aber Leistung (vor allem Pixelfüllrate und Rasterisierung).
Weiterhin benennt Johan Andersson die Herausforderungen, die angenommen werden müssen, um die "Cinematic image quality" zu erreichen. Dazu zählt Aliasing, welches durch MSAA oder MLAA oder gar SSAA größtenteils negiert wird, aber eine optimale Lösung gibt es noch nicht. Vor allem in Kombination mit Deferred Shading und Post-Effekte ergeben sich Inkompatibilitäten und eine schlechte Skalierbarkeit. Auch Motion Blur, der Bokeh-Filter und Depth of Field lassen die Bildqualität cineastisch steigen, erneut ist Metro 2033 mit Compute-Shader-Berechnungen ein Vorbild - Stichwort Diffuse DoF (siehe PFD von der
GDC 2010). Ebenfalls wichtig ist eine extrem detaillierte Geometrie, Hardware-Tessellation unter DirectX 11 ist hier der erste Schritt - wenngleich noch lange nicht optimal (beim Shading pro Quad etwa hapert es an Effizienz). In Sachen Beleuchtung spricht Anderson "Global Illumination" an, diese ist bisher aber nicht in Echtzeit möglich und hat so ihre Probleme mit zerstörbarer Umgebung - denn diese ist ja dann nicht mehr statisch. Ein großes Ärgernis sind nach wie vor grobe und daher flimmernde Shadowmaps: Erneut sei hier Starcraft 2 genannt, welches die Maps zwar sauber filtert, allerdings auf Kosten der Leistung. Sind die Schatten dazu auch noch transparent, können Probleme auftreten - schön zu sehen am heftigen Einbruch aktueller Radeons, wenn MSAA forciert wird.
Da die gesamte Aufzählung der Herausforderungen und Möglichkeiten schlicht zu viel des Guten wird, verweisen wir auf die Bilder aus den von uns verwendeten SIGGRAPH-Präsentationen in der Galerie.
PCGH-Community-Veteran
08.08.2010 00:19
Ahhh okay
Ich hatte gegooglet aber ich hatte immer nur die "Papers" gefunden und
da wollten die einem direkt die Karten für die Conferences verticken
Sauber, du bekommst den seltenen "lemon Top-Award".
Hier isser:
Also Danke Dir und Gut N8,
lemon3007
Humanoider BenchMarc
08.08.2010 00:10
Google FTW
Bending the Graphics Pipeline + Five Major Challenges in Interactive Rendering
PCGH-Community-Veteran
07.08.2010 23:23
Hey Marc,
könntest du mir sagen wo ich vielleicht die Presentation aus der Bilder-
Gallerie (Johan Andersson, DICE) bekomme ?
Es wäre doch unnötig jedes Bild herunterzuladen und eine neue PPP zu machen.
Notfalls kannst du mir sie auch per Mail schicken.
Ich hoffe das geht.
Lieber Gruß
lemon3007