Skip to main content

Technik-Analyse: Uncharted 2

Naughty Dog macht alles richtig

Die freie Kamera bietet außerdem die Möglichkeit, Naughty Dogs Technik weiteren Tests zu unterziehen. Es geht um die "Scene Budgets". In einem typischen Spiel hat der Entwickler ein ziemliches gutes Gefühl dafür, was der Spieler an jedem Zeitpunkt "sieht". Dadurch kann er Details in einem Level verbergen, die effektiv sowieso nicht sichtbar wären. Das reduziert die Leistung, die für das Rendern einer Szene aufgewendet werden muss - die Anzahl der dargestellten Frames pro Sekunde erhöht sich. Aber mit dem "Free Camera Mode" in Uncharted 2, kann man überall hin und zwar in jeder beliebigen Szene. Das macht das Reduzieren der Elemente sehr viel schwieriger.

Tolle Momente können gespeichert und im 'Cinema Mode' aus jeder Perspektive betrachtet werden. Außerdem lässt sich die Wiedergabe anhalten und Screenshots können angefertigt werden.

Trotz dieser zusätzlichen Anforderungen, leistet Naughty Dogs Engine Herausragendes - ohne jegliche Probleme bleibt es konstant bei 30 Bildern pro Sekunde. Tatsächlich wirkt das Spiel sogar flüssiger als jemals zuvor. Der "Cinema Modus" enthält außerdem die Möglichkeit, Screenshots zu machen. Ebenfalls sehr cool. Jede Szene kann eingefroren werden, die Kamera kann justiert werden. Auf Knopfdruck wird das Bild geschossen und in der Foto-Sektion der PS3 XMB abgelegt.

Bevor man sie jedoch auf einen USB-Stick zieht oder ins Internet hochlädt, können die Bilder noch mit verschiedenen Effekten nachbearbeitet werden - wenn man das will. Oder man lässt sie so wie sie sind, ein einfacher Dump des Framebuffers. Und damit lässt sich auch endlich eine jahrelange interne Debatte beenden: Es gibt diese Diskussion über RGB limited/RGB full, Superwhite on/Superwhite off und all diese Dinge. Jetzt können wir jedoch Naughty Dogs Framebuffer-Dump mit den Screenshots vergleichen, die wir mit Digital Foundrys TrueHD 24-Bit RGB HDMI schießen. Und das Thema ein für alle Mal beerdigen.

Wie nahe kommen unsere HDMI-Screenshots an den Framebuffer der Konsole heran? Der Foto-Modus erlaubt uns einen direkten Vergleich - abgesehen von der JPEG-Kompression. Das Ergebnis ist nahezu identisch. HDMI-Screenshots auf der linken Seite, Bilder aus dem Foto-Modus rechts.

Also effektiv sind sie identisch. Nur die JPEG-Kompression in Naughty Dogs Screenshot zeigt überhaupt einen Unterschied. Der "Cinema Mode" führt zu einem weiteren technischen Vergleich. In der Anfangsphase der PS3-Entwicklung, wurden Spiele mit viel schlechterer Performance bestraft, die den 720p-Framebuffer auf 1080p hochskaliert hatten, um reine 1080i/1080p-Displays zu unterstützen. Mit der Replay-Funktion von Uncharted 2 können wir Gameplay-Abschnitte Frame-genau aufzeichnen und dann messen.

Natives 720p gegen per Software hochskaliertes 1080p. Trotz des zusätzlichen Rechenaufwands und der Speicherbelastung sieht man keinen Unterschied.

Wieder trägt Naughty Dog einen weiteren Sieg davon. Wir konnten nur einen Leistungsabfall von 0,05% festellen (und das schließlich zugunsten der auf 1080p skalierten Version) - nur vier Frames von 8000 Frames. Berücksichtigt man die Hintergrund-Aktivitäten, die bei der PS3 ständig ablaufen, so wird aber jedes aufgezeichnete Video immer eine leichte Abweichung enthalten. Im Grunde genommen hat es keinen Einfluss auf der Gameplay, obwohl mehr Speicher und mehr Rechenleistung benötigt wird, um das 720p-Bild hochzuskalieren.

Auf der anderen Seite, sieht das skalierte Bild nicht so brillant aus. In 720p sieht es besser aus als auf 1080p skaliert. Aber alle, die über 1080i-Fernseher verfügen oder 1080p-Displays mit wirklich furchtbaren Scaling-Eigenschaften, müssen sich zumindest nicht mit Leistungseinbussen herumschlagen.

Digital Foundrys lange Liebesbeziehung mit Naughty Dog wird also fortgesetzt. Die Frage ist viel mehr, ob es in Bezug auf die Performance irgendetwas gibt, was wir nicht mögen. Nun, eigentlich nichts. Außer eine Sache. Was tatsächlich beobachtet werden kann, ist, dass die Steuerungs-Latenz im Vergleich zum Vorgänger nach oben gegangen ist.

Nur damit wir uns nicht mißverstehen: Wir reden nicht über den Netzwerk-Code und die Latenz, die aus dem Empfang anderer Spieler-Daten hervorgeht. Aufgrund der Funktionsweise, wäre das ohnehin extrem schwer zu messen, geschweige denn wahrzunehmen. Wir reden also über den Lag-Faktor bei der Steuerung - die Zeit, die es dauert, bis nach einem Knopfdruck eine Aktion auf dem Bildschirm ausgeführt wird.

Mit der gleichen Technik, mit der ich Killzone 2 gemessen hatte, ging ich die beiden Uncharted-Spiele an. Es endete mit 100ms für Uncharted: Drakes Schicksal (schneller kann ein 30FPS-Spiel gar nicht reagieren) und 133ms für Uncharted 2. Dazu muss natürlich gesagt werden, dass eine genaue Messung nicht möglich ist, bis Ben Heckendorn sein PS3-Controller-Board fertiggestellt hat - wie im "Lag-Faktor"-Artikel beschrieben. Der Unterschied zwischen beiden Spielen ist dennoch spürbar. Warum ist das so? Hätten wir nicht schnellere schnellere Response-Zeiten von einem technologisch weiter vorangeschrittenen Nachfolger erwartet? Die kurze Antwort ist: Nein. Die längere Antwort beansprucht etwas mehr Zeit.

Es gibt zwei tragende Faktoren, über die man sich im Klaren sein muss. Zunächst ist da der einfache Fakt, dass beide Next Generation-Konsolen im Prinzip mit Parallel-Prozessoren arbeiten: Aufgaben werden zwischen den Kernen verteilt - oder eben zwischen den SPUs der PS3. Und das kann in zusätzlicher Steuerungs-Latenz führen. Sebastian Aaltonen, Lead Programmer von Trials HD, bemerkte neulich, dass selbst mit allen Optimierungs-Möglichkeiten, die ihm zur Verfügung stehen, seine Engine mit einem Latenz-Defizit von 0.5 Frames läuft; also im Vergleich mit der Single-Threaded Rendition auf dem PC.

Außerdem ist es natürlich so, dass abseits aller sonstigen Berechnungen, die in Uncharted 2 stattfinden, die zugrundeliegende Render-Technik das Tearing mit nur minimalen Verlusten bei der Frame-Rate eliminiert. Das verursacht natürlich zusätzliche Steuerungs-Latenz.