Videospiele: Der Lag-Faktor
Auf Kriegsfuß mit der Eingabe-Latenz
Die Call of Duty-Macher engagierten Ben Heckendorn, um ein Latenz-Controller-Board zu entwickeln, das LEDs zum Leuchten bringt, wenn ein Button auf dem Joypad gedrückt wird. Der Bildschirm wird immer noch mit einer 60FPS-Kamera aufgenommen, aber das Board ersetzt den Controller in der Kamera-Einstellung. Und so wurde der ungenaue Teil der gesamten Prozedur - das Beurteilen, wann ein Button schließlich gedrückt wurde - ersetzt durch die digitale Präzision von Heckendorns Spezialanfertigung.
"Wir heuerten Ben an, um dieses LED-Board für uns zu entwickeln, nachdem ein Programmierer mich dabei beobachtete, wie ich sehr viel Zeit damit verbrachte, mich selbst beim Knöpfe-Drücken vor einem CRT-Bildschirm zu filmen, um die Eingabe-Latenz zu messen", sagt Infinity Wards Drew McCoy. "Als Programmierer war er offensichtlich frustriert, dass so eine unpräzise Methode benutzt wurde, um etwas zu testen, in das er und der Rest der Techniker hier bei Infinity Ward sehr viel Zeit und Energie gesteckt hatten - nämlich die Eingabe-Latenz zu reduzieren."
Nach der Lösung dieses Problems, bleibt nur noch eine Sache, die nicht akkurat sein konnte - die Kamera selbst. Sie wird nicht komplett synchron mit der Bildwiederholrate laufen, also wird es Ghosting geben. Aber im schlimmsten Fall können die Ergebnise nur um einen Frame verfälscht werden. Und das ist gut genug, um weiterzumachen.
Genauso wie Spiele-Entwickler wie BioWare und Endrant Studio, die den Multiplayer.Modus für Wolfenstein entwickelt haben, nahm ich Kontakt mit Ben auf und kaufte eines dieser Geräte. Seine handgemachten Designs sind nicht günstig und ich bezahlte das aus meiner eigenen Tasche, aber als das Board bei mir aufschlug, wusste ich, dass es das wert war. Und der Wert dieses Geräts für solche Firmen wie Infinity Ward lässt sich gar nicht ausrechnen.
Aus meiner Sicht ist es so: Wenn das nächste Mal über träge Steuerung in einem Spiel diskutiert wird, dann kann es jetzt getestet werden. Leider funktioniert Bens Board nur mit der kabellosen Version des 360-Joypads, daher kann es nicht für PS3-Spiele benutzt werden (obwohl Kabel-Controller der 360 mit der Sony-Konsole zusammengebracht werden können, ist das interne Setup unterschiedlich - also genauso inkompatibel mit Heckendorns Design wie der SixAxis und DualShock 3). Daher werden Latenz-Tests - wie zum Beispiel Vergleiche zwischen der PS3- und 360-Version von Resident Evil 5 - noch eine Zeit auf sich warten lassen müssen.
Die erste Amtshandlung war natürlich mein neues Spielzeug mit einem Spiel auszuprobieren, das bekanntermaßen Lag-Probleme hat. Grand Theft Auto IV. Die Frame-Rate-Analyse des aufgenommenen Video-Clips läuft neben der Kamera-Aufnahme. Der Gedanke hier ist ziemlich geradeaus - in meinen "Face Off"-Artikeln merke ich oft an, dass Frame-Rate-Verluste die Response-Zeit beeinflussen. Hier können wir nun das Spiel auf der einen Seite unter optimalen Bedingungen sehen und andererseits, wenn es unter Last läuft mit großen Performance-Verlusten.
Bei 30FPS bekommen wir also eine Baseline-Performance von acht Frames/133ms, aber in dem zweiten Clip, in dem die Frame-Rate auf 24FPS sinkt, beträgt die Verzögerung zwischen Knopfdruck und dem Abfeuern von Nikos Schrotflinte klare zwölf Frames/200ms. Also 200ms plus das zusätzliche Lag des Bildschirms.
Weiter geht's. Ein weiterer Test mit einem der populärsten Spiele für die Xbox 360. Damit ist gleichzeitig die Gelegenheit verbunden, Bedenken eines Entwicklers mit einem der jüngsten Eurogamer-Artikel aufzugreifen. In der Digital Foundry versus Project Natal-Analyse, hatte ich die Latenz des Prototypen gemessen. Sie lag bei ungefähr 200ms (ich gehe davon aus, dass dies an einem, Natals internen Prozessor emulierenden PC lag; zusammen mit dem LCD-Lag) und ich setzte das in einen Kontext zu den Killzone 2-Messungen und auch zum ursprünglichen Halo 3-Test von Gamasutra - Mick West geht bei Halo 3 davon aus, dass die Latenz zwischen 133ms und 166ms liegt, abhängig davon, ob man schießt oder springt. Nachdem der Artikel veröffentlicht wurde, meldete sich Bungie und meinte, dass das eigentliche Lag viel niedriger sein würde. Mit dem neuen Controller-Monitor im Digital Foundry-Keller konnte ich das nun selbst testen.
Dieser Test brachte andere Ergebnisse hevor als der von Mick West. Meine Versuche zeigen, dass Halo 3s Latenz so niedrig ist, wie sie mit 30FPS nur sein kann: 100ms, mit Messungen von 150ms bei Sprüngen. Der Gamasutra-Artikel scheint eine immer gleiche Latenz zu fordern, aber ich bin ziemlich sicher, dass unterschiedliche Latenz bei unterschiedlichen Aktionen von den Entwicklern sogar gewollt sind. Wenn man darüber nachdenkt: Man erwartet schon von einer Waffe, dass sie sofort reagiert, aber wenn man zum Beispiel eine verdammt schwere, gepanzerte Rüstung hochhebt, dann sollte das nicht sofort passieren.
Wie sieht es also mit Neversofts eigenen Spielen aus? Guitar Hero: Aerosmith sollte eigentlich ein guter Testkandidat sein. Musik-Spiele wie dieses oder Rock Band, basieren auf ultra-niedrigen Latenzen zwischen Mensch und Maschine. Es werden sogar Kalibrierungs-Optionen innerhalb des Spiels gegeben, um zu versuchen, die Lag-Effekte komplett zu entfernen.
Der Gamasutra-Artikel gestand Guitar Hero III die absolut niedrigste Latenz zu: 50ms. Allerdings konnte ich dieses Response-Niveau in keinem meiner Tests mit der Aerosmith-Edition erreichen. Ich endete mit vier Frames im Durchschnitt, aber immerhin auch mit der Erkenntnis, dass dies bei weitem die niedrigste Latenz ist, die ein 60FPS-Spiel erreichen kann.
Zurück zur Burnout Paradise-Retrospektive. Criterion sagte, sie würden auf eine 50ms-Latenz abzielen; also versuchte ich es als Nächstes, zusammen mit einer ganzen Reihe an 60FPS-Spielen.
Forza Motorsport 2 beansprucht für sich, das Joypad 360 Mal pro Sekunde abzufragen, um die flüssigste Response zu ermöglichen - aber es erreicht auch nur vier Frames, so wie Wests ursprünglicher Ridge Racer 7-Test. Das gleiche mit Criterions Burnout Paradise und Bizzare Creations Geometry Wars 2. Ein kurzer Frame-Übergang beim letzteren könnte bedeuten, dass Bizarre die mystische 50ms-Barriere durchbrochen hat... Weitere Versuche sind erforderlich, um das zu bestätigen, aber ich bin ziemlich sicher, dass es an einem Artefakt der Kamera lag.