Emulatoren und Input Lag

Das Leben, das Universum und der ganze Rest.
Antworten
Benutzeravatar
CptKlotz
Admin a.D.
Beiträge: 2947
Registriert: Mo 7. Mär 2005, 23:36
Wohnort: Dorsten
Kontaktdaten:

Emulatoren und Input Lag

Beitrag von CptKlotz »

Hallo zusammen,


ich hab' mir vor einer Weile zwei Adapter von Playstation-Joypad auf USB gegönnt, um mal vernünftig Konsolenspiele auf dem PC emulieren zu können.

Ich habe jetzt einige Versuche mit SNES-Emulatoren durchgeführt. Irgendwie hatte ich den Eindruck, daß die Dinger einen leichten, aber noch gerade wahrnehmbaren "input lag" haben (also eine Verzögerung der Verarbeitung von Eingaben).

Beim Surfen kam mir dann die Idee unter, doch einfach Joypad und Monitor mit einer Kamera abzufilmen. Man kann dann mit einem Video-Player schrittweise die Frames durchgehen und zählen, wieviele Frames es braucht, bis nach dem Drücken des Knopfes wirklich etwas passiert (z.B. "Mario springt").

Leider steht mir nur eine Fotokamera zur Verfügung, die Videos mit maximal 30 fps aufnehmen kann. Ein Frame dauert folglich bereits 33 ms. Super Nintendo läuft mit 50 (PAL) bzw. 60 fps (NTSC), also mit deutlich kürzeren Frames.


Die Ergebnisse waren bisher wie folgt: Auf dem echten SNES vergehen bei Super Mario World im Schnitt so 1 bis 2 (Kamera-)Frames, bis Mario nach dem Drücken des Knopfes beginnt, die Faust zu heben und zu springen.

Bei Emulatoren (Snes9x, bsnes, SNESGT) scheinen dagegen eher 3 bis 4 Frames zu vergehen, bis wirklich etwas passiert (getestet mit der PAL-Version von Mario und Monitor auf 50 hz, da mein echtes Nintendo auch die PAL-Variante ist).


Die Frage ist jetzt, wie aussagekräftig dieses Ergebnis ist, da die Kamera nunmal langsamer aufnimmt als die Spiele laufen.

Es ist auch teilweise etwas schwierig, genau den Zeitpunkt zu beurteilen, an dem der Feuerknopf wirklich ausgelöst wurde.


Klar ist vermutlich, daß selbst das echte Nintendo nicht unverzögert reagieren kann. Bei 60fps dauert ein Frame schon 16ms und vor dem nächsten Frame kann man das Ergebnis einer Eingabe auch nicht sehen. Zudem muß das Gerät auch eine Eingabe erst einmal registrieren, verarbeiten und dann darauf reagieren.

Beim PC wird das Ergebnis ähnlich sein, besonders dann, wenn man VSYNC einschaltet.


Auch möglich ist natürlich Input Lag des PC-Monitors, wobei mein TFT (LG L1953TR) recht schnell reagiert. Wenn ich zum beispiel die Uhr von http://www.flatpanelshd.com/ gleichzeitig auf dem TFT und einem CRT ausgebe und den Output abfilme, hinkt der TFT praktisch nicht hinterher - über die Genauigkeit des Tests kann man aber vermutlich geteilter Meinung sein.

Am PS2-Joypad-Adapter scheint es auch eher nicht zu liegen. Im Joystick-Kalibrierungsmenü reagieren die Anzeigen für die Feuerbuttons jedenfalls spürbar schneller als jeder Emulator.


Wenn man mal "emulators input lag" oder ähnliches googlet, wird das Problem in den einschlägigen Foren oft mit "gibt es nicht" abgetan. Der Test, aus dem ich die Idee mit der Kamera erhalten habe, bezog sich leider auf die Wii-Version von SNES9x im Vergleich zur Virtual Console und ist für mich nicht besonders relevant.

Ist das also alles nur Einbildung oder wirklich vorhanden?


Bei einer so langsamen Kamera sind natürlich 3 fps schon 99 ms und 4 fps schon über 120 ms - das ist nicht wenig und läßt mich ein wenig an dem Ergebnis zweifeln. 100 ms lag sollte man doch sehr deutlich spüren.

Als ich mal testweise Quake 3 ohne VSYNC und ohne fps-Begrenzung (200 bis 300 fps) abgefilmt habe, war zwischen Tastendruck und Bewegung auf dem Bildschirm überhaupt keine Latenz zu erkennen.


Bleibt zu guter Letzt die Frage, ob ein Emulator zwingend einen input lag haben muß. Wenn das Ding ganz locker 60 fps hält und ungebremst noch viel schneller läuft, muß es doch eigentlich auch in der Lage sein, die Eingabegeräte genauso oft abzufragen, wie es ein echtes Nintendo auch tun würde.

Trotzdem scheinen alle Emulatoren einen ähnlichen Lag zu erzeugen.


Hat jemand eine Einschätzung oder eigene Erfahrungen? Zumindest mittelfristig wird dieses Thema sehr wichtig werden, weil Nintendos und die Röhrenfernseher, an denen sie am besten funktionieren, nach und nach aussterben werden und die Emulation der einzige Weg sein wird, das Kulturgut "Videospiel" zu erhalten.


Gruß,
Stephan
“It is impossible to defeat an ignorant man in argument.” (William G. McAdoo)
Brueggi

Re: Emulatoren und Input Lag

Beitrag von Brueggi »

Ich habe schonmal davon gehört - ich meine es war im Zusammenhang mit der USB-Version des Competition Pro, der ein ähnliches Problem hatte. Irgendjemand hat dann einen Adapter für die "Standart-Version" verwendet und das Problem war erledigt. Testen konnte ich das aber bisher nie, weil ich nur zwei "echte" Competitions am C128D hängen habe, und da gibts natürlich keine Verzögerung ;-)
Benutzeravatar
CptKlotz
Admin a.D.
Beiträge: 2947
Registriert: Mo 7. Mär 2005, 23:36
Wohnort: Dorsten
Kontaktdaten:

Re: Emulatoren und Input Lag

Beitrag von CptKlotz »

Ja, die Geschichte kenne ich. Meines Wissens nach lag das aber daran, daß der verwendete USB-Schnittstellenchip auf dem Nachbau des Competition Pro einfach nicht besonders gut war und den Joystick nur mit geringer zeitlicher Auflösung abgefragt hat.

Das Verhalten der Emulatoren scheint so oder so nicht am Joypad zu liegen. Mit Tastatur waren die Ergebnisse ähnlich.
“It is impossible to defeat an ignorant man in argument.” (William G. McAdoo)
Brueggi

Re: Emulatoren und Input Lag

Beitrag von Brueggi »

Mhh... also ich verwende auch einen Emulator (C64) - aber da ist mir das noch nie passiert. Selbst auf meinem Uralt-Pentium 2 gibts (solange man nicht Vollbild spielt) kein Lag. Natürlich spielt es sich am echten 128D am besten ;-)
Benutzeravatar
rftl
MemMaker-Benutzer
Beiträge: 99
Registriert: Do 1. Jul 2010, 14:27

Re: Emulatoren und Input Lag

Beitrag von rftl »

Wenn du das Problem wirklich auch mit der Tastatur hast dann stimmt irgendetwas wirklich nicht.

Ich habe schon oft alles mögliche emuliert solche Probleme bisher nur in Ausnahme fällen gehabt.

Probiere es am besten mal mit ZSNES in der DOS Version auf einem deiner Retro Rechner (wobei die WinVersion auch einen Versuch wert ist).
Future events such as these will effect you in the future. (Edward D. Wood Jr.)
Antworten