Original-URL des Artikels: https://www.golem.de/news/confetti-ein-puzzle-aus-bunten-pixeln-1310-101786.html    Veröffentlicht: 21.10.2013 12:10    Kurz-URL: https://glm.io/101786

Confetti

Ein Puzzle aus bunten Pixeln

Moderne Spiele bestehen aus mehr als der Story und einer Grafikengine, welche die Inhalte transportiert. Immer wichtiger wird für eindrucksvolle Bilder die Middleware, die oft von kaum bekannten Spezialisten programmiert wird. Golem.de hat eins dieser Studios besucht: Confetti.

Der Soldat robbt durch die Nacht, macht seinen Raketenwerfer einsatzbereit und feuert auf einen Kampfhubschrauber: Was zunächst wenig spektakulär klingt, hat Spezialeffektentwickler viele Stunden Arbeit gekostet. Denn während der kurzen Spielszene geht die Sonne auf, das Nachtblau weicht warmen Farben, der Hubschrauber glänzt metallisch im Licht. Der Fokus wechselt, schnelle Bewegungen verschwimmen. Wenige Studios können es sich leisten, solche Effekte selbst zu programmieren. Sie kaufen sogenannte Middleware bei Studios ein, die meist im Hintergrund arbeiten - so wie Confetti aus dem kalifornischen Encinitas.

Der Deutsche Wolfgang Engel hat Confetti vor gut vier Jahren zusammen mit Igor Lobanchikov gegründet, dem kreativen Kopf hinter der X-Ray-Engine der Shooter-Serie Stalker. "Entwickler kommen zu uns, wenn sie spezielle Effekte in ihren Titeln wünschen - wie zuletzt TressFX in Tomb Raider und der Ruby-Demo. Wir helfen aber auch mit Optimierungen des Programmcodes für die GPU und die CPU", erläutert Technikchef Wolfgang.

Middleware sind fertig geschnürte Pakete, die in eine Engine eingebaut werden und sie um Funktionen wie Physikberechnungen, Vegetationsdarstellung oder Beleuchtung erweitern. Zu den aktuellen Projekten von Confetti zählen ein schwedischer Multiplayer-Shooter und eine Weltraumsimulation auf Basis der Cryengine.

Bunte Pixel mit Compute puzzeln

Der 24-jährige Timothy Martin, der im vergangenen Jahr direkt nach seinem Master an der University of California, San Diego (UCSD), ins Spielegeschäft einstieg, arbeitet an Anpassungen einer Middleware, die Confetti an Spieleentwickler lizenziert. Pixel Puzzle ist eine sogenannte Postprocessing-Middleware, die dank Compute-Programmierung außerordentlich schnell arbeitet - die Berechnung per Compute auf dem Grafikchip ist weitaus flotter als per Prozessor. Nachbearbeitungs-Middleware, weil die Effekte erst berechnet werden, wenn das Bild eigentlich schon final ist. Nachträgliche Effekte sorgen für eine realistische oder cineastische Darstellung.

Zur Nachbearbeitung gehören die Bewegungsunschärfe aus Sicht der Spielfigur oder für sich schnell bewegende Objekte sowie die aus Filmen und der Fotografie bekannte Tiefenunschärfe samt der typischen Bokeh-Optik im Hinter- oder Vordergrund. Auch eine Vignettierung, um Ränder abzuschatten und beispielsweise den Blick durch ein Fernrohr zu simulieren oder eine Umgebungslichtverdeckung für die Verschattung von Objekten untereinander sind beliebte Effekte.

Zum Postprocessing gehören aber auch die nachträgliche Anpassung von Farben und Sättigung oder die Nachahmung von skotopischem Sehen - also der Nachtsicht des Menschen. In einigen Fällen wird per Postprocessing zudem ein Bild mit hohem Helligkeitsumfang samt anschließender Dynamikkompression simuliert, der übliche Terminus für diesen Vorgang lautet HDR-Rendering (High Dynamic Range) mit Tone-Mapping.

Pixel Puzzle beherrscht all diese Render-Techniken und wird bei einer Lizenzierung mit dem Quellcode an Spieleentwickler ausgeliefert. Die Postprocessing-Lösung eignet sich für PCs mit Direct3D-11-fähiger Grafikhardware sowie die Playstation 4 und die Xbox One. "Theoretisch könnten wir Pixel Puzzle per OpenGL berechnen und auch auf der Playstation 3 oder Xbox 360 verfügbar machen", sagt Wolfgang Engel.

Der Compute-Vorteil mit neuen Ideen

Mit der Programmierung solcher Plattformen kennt sich der deutsche Entwickler gut aus: Lange vor Confetti schrieb Engel mit an der Engine des technisch sehr ambitionierten Söldner: Secret Wars und war danach eine halbe Dekade als führender Grafikprogrammierer bei Rockstar in San Diego angestellt. Er entwickelte dort die RAGE (Rockstar Advanced Game Engine) mit, diese wird in Spielen wie Midnight Club LA und Grand Theft Auto 4 eingesetzt. Vor der Gründung von Confetti half Engel noch mit, die RAGE fit für Direct3D 11 und somit bereit für die PC-Version von Max Payne 3 zu machen.

Direct3D ist ein Teil von DirectX, auch die Directcompute-Schnittstelle zählt zu Microsofts API-Sammlung. Wolfgang Engel hat seit 2006 den Status eines Most Valuable Professional (MVP) für das Thema DirectX, er ist Autor der Buchreihen ShaderX sowie GPU Pro - von Letzterem erscheint bald der fünfte Band -, zudem unterrichtet der Deutsche an der UCSD und hält Reden auf Konferenzen. Auf der Korea Games Conferenz 2013 beispielsweise führte Wolfgang Engel aus, welche Aspekte er an einer modernen Postprocessing-Lösung für wichtig erachtet.

Von RGB nach XYZ nach RGB

Statt eine Dynamikkompression für das komplette HDR-Bild durchzuführen und sich auf den RGB-Farbraum zu beschränken, plädiert der Grafikprogrammierer auf eine selektive Anpassung des Kontrastumfangs sowie die Nutzung des XYZ-Farbraums, im Deutschen besser als CIE-Normvalenzsystem bekannt. Letzteres beinhaltet nicht nur Chrominanz, sondern auch die Helligkeit (Luminanz) und deckt somit alle wahrnehmbaren Farben ab.

Die im Y-Kanal gespeicherten Helligkeitswerte verringern den Rechenaufwand, da nur dieser die Berechnung der Dynamikkompression durchlaufen muss. Weiterhin kann die Luminanz mit der Gamma-Korrektur pro Pixel verknüpft werden, wodurch beide Techniken miteinander statt gegeneinander arbeiten.

All diese Expertise steckt in Pixel Puzzle: "Da wir alles in Compute implementiert haben, ist unsere Pipeline schneller als die meisten Postprocessing-Lösungen. Compute gibt uns ungefähr 30 Prozent kürzere Frametimes verglichen mit einer Implementierung mit dem Grafik-API", erklärt der Confetti-Chef. "Der Vorteil von Compute ist das Zusammenfassen von Render Targets, wodurch Speicherbandbreite gespart wird. Zudem hat man mit Compute direkten Zugriff auf den GSM-Cache [Anm. d. R.: ein Speicherbereich ab D3D10]. Damit können Algorithmen für diesen Cache angepasst und substanziell effizienter gestaltet werden."

Schwarzfuß-Hubschrauber für die nächste Generation

Wie genau dies in der Praxis aussieht, demonstriert Wolfgang Engel anhand von Blackfoot Blade. Das Kampfhubschrauberspiel bietet flotte Casual-Action mit Touch- sowie Gyroskop-Unterstützung und ist nach einem Indianerstamm benannt - wie für Helis der US Army üblich. Einst wurde Blackfoot Blade mit Hinblick auf Ivy-Bridge-Ultrabooks in nur dreieinhalb Monaten von einer Handvoll Confetti-Mitarbeiter entwickelt. Auch mit wenig Rechenleistung ist ein Deferred Renderer mit dynamischer Echtzeitbeleuchtung samt Schatten und recht schicken Explosionen möglich, die Hellfire-Raketen und die Garben des Maschinengewehrs erhellen als Punktlichter die Umgebung.

Dank der Unterstützung von Intels CCF-Netzwerk-Schnittstelle (Common Connectivity Framework) sind kooperative Gefechte über beliebige Drahtlosverbindungen möglich. Confetti zeigte das Kampfhubschrauberspiel zusammen mit Intel auf der Entwicklerkonferenz IDF 2013 in San Francisco.

"Noch gibt es Blackfoot Blade nicht zu kaufen, es war ja ursprünglich für Ultrabooks ausgelegt. Es ist nun das Vorzeigeprojekt für die Postprocessing-Middleware Pixel Puzzle. Wir haben ein ganzes Spiel mit sechs Kampagnen- und zwei Mehrspielermissionen aus dem Titel gemacht. Derzeit überlegen wir uns noch, wie und wo wir Blackfoot Blade veröffentlichen - im Moment ist die Xbox One die wahrscheinlichste Lösung."

Diese Konsole bietet dank AMDs GCN-Grafikarchitektur (Graphics Core Next) eine hohe Compute-Leistung und ist daher gut geeignet, Pixel Puzzle zu berechnen. Dies gilt ebenfalls für die GPU in Sonys Playstation 4, die in jedem ihrer 18 Shader-Cluster 64 parallele Compute-Operationen parallel vorhalten kann - so wie AMDs neue Radeon R9 290(X).

Die drastisch gestiegene Rechengeschwindigkeit der neuen Konsolen im Vergleich zu ihren Vorgängern bietet Spieleentwicklern zwar mehr Möglichkeiten. Diese auch praktisch umzusetzen, kostet aber Zeit und Geld. Deswegen greifen die meisten Studios für die Next-Gen erst recht auf Middlewares zurück. Pixel Puzzle ist in mehreren kommenden Spielen enthalten - mehr will Wolfgang Engel noch nicht verraten. Stattdessen deutet er auf die untergehende Sonne, die Encinitas in warmem Licht erstrahlen lässt, und lacht: "Das kann Pixel Puzzle natürlich auch."  (ms)


Verwandte Artikel:
Belkin: iPhone-Adapter mit Kopfhörer- und Ladebuchse im Apple Store   
(03.10.2017, https://glm.io/130398 )
Grafikdemo: Unreal Engine 3 mit Postprocessing aufgepeppt   
(20.06.2012, https://glm.io/92649 )
Xbox One: Streamer können Gamepad mit Spieler teilen   
(02.03.2018, https://glm.io/133120 )
Fortnite: Battle Royale auf der Playstation 4 gegen das iPhone   
(09.03.2018, https://glm.io/133246 )
Radeon Software: AMD-Grafiktreiber spielt jetzt wieder Alarmstufe Rot   
(19.01.2018, https://glm.io/132258 )

© 1997–2019 Golem.de, https://www.golem.de/