Willkommen im cgboard - classic games Forum! Deine gemütliche Retro Gaming Community. Besuche uns auch im Discord Chat.

[Info] RetroArch 1.7.2 - Programmierter Input Lag aus den Spielen entfernbar!
#1
0
Wahnsinnsrelease, die v1.7.2. Big Grin

Für viele Cores ist es jetzt möglich, den spiele-internen Lag (also den programmierten) aus den jeweilgen Spielen zu enfernen. Gerade sowas wie Super Mario World hat z.B. 2 fps Input Lag. Ganz unabhängig von dem normalen Lag durch die Software/Eingabgeräte/Monitore. Dazu muß man nur die "Runahead latency reduction aktiveren", und die Frames des Lags auswählen. Üblicherweise haben viele Spiele 1fps, aber manche sogar 2 oder mehr. Wieviel Lag das jeweils in den Spielen ist kann man ganz einfach überprüfen.

Zitat:How to check the amount of lag frames a game has

RetroArch has the ability to pause a core and advance it frame by frame. Perform the following steps to determine the amount of lag frames of a game:

Pause emulation (press ‘p’ button on keyboard).
Press and hold the jump button on the controller.
Advance emulation frame by frame (press ‘k’ button on keyboard) until the character jumps.

The number of k presses before you get a reaction should be the number of lag frames you can safely remove with run ahead.


Habe ich mit Spielen wie Super Mario World, Aladdin (MD) oder Jackie Chan Action Kung Fu ausprobiert. Funktioniert einwandfrei. Wenn man dann noch Freesync/Gsync Hardware hat ist das ganze extrem fluffig. Wie auf echter Retro Hardware. Halbwegs moderne Hardware vorausgesetzt. Elefant Elefant

LINK
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#2
0
Hmm ... da frage ich mich doch, welchen Sinn ein "programmierter Input-Lag" hat. Soll das den Schwierigkeitsgrad erhöhen? Oder war das einfach nur schlecht umgesetzt? Confused
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#3
0
Das ist eine gute Frage. Kann mir nicht vorstellen, das es um den Schwierigkeitsgrad ging. Vielleicht die Art der Programmierung. Im moment kompensiert es größtenteils nur den normalen Input Lag, der von Software/Eingabgeräte/Monitore verursacht wird.

Wenn man allerdings dann noch die neue Beamracing/Frame Slice Methode mit in RetroArch einbauen würden wäre man in der Tat schneller als die echte Hardware. WinUAE hat das ja diese Technik schon in den aktuellen Betas eingebaut, und es ist spektakulär gut.
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#4
0
Naja, irgendwann stößt man zwangsläufig auf eine natürliche Grenze (außer man geht ins Hellsehen über Big Grin).
Mein LCD-Bildschirm ist glücklicherweise recht human, was die Verzögerungen angeht (habe auch nahezu alle "Verbesserungen" deaktiviert). Zumindest ist es mir noch nicht störend aufgefallen Smile. Im äußersten Notfall könnte ich aber noch direkt über den Röhrenmonitor daddeln Cool. Sicherlich hängt das aber auch immer ein wenig von der Spielauswahl ab Zunge raus. Bei 'Super Mario World' fühlt es sich jedenfalls 1:1 wie auf der Konsole an.
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#5
0
Fühlt sich vielleicht so an, wenn man keinen direkten Vergleich hat. Moderne gute Panels haben vielleicht 5-10ms Lag. Die Emulatoren selbst (sofern keine Optimierung auf Lag) liegen dann nochmal bei 20-40ms. Eingabegeräte heutzutage bei 1-10ms, und eben der Lag in den Spielen selbst. Mein Iilyama G-Master ist schon recht gut, da Freesync Hardware. Ohne Vsync allein hat man schon mindestens 1fps weniger lag.

Gestern z.B. mal in Terminator Sega CD die 2fps lag ausgeschaltet, fühlt sich fast wie ein neues Spiel an.
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#6
0
Nagut, meinen alten Röhren-TV habe ich leider nicht mehr da (weil: damals kaputt gegangen Cry). Also kann ich nur SNES am LCD vs. Emulator am LCD vergleichen. Und das passt eigentlich. Soll heißen, es ist für mich vom Spielgefühl identisch und auch absolut sauber spielbar Smile.

Wie schon angedeutet sind die Spiele, welche besonders schnelle Reaktion erfordern, bei mir ohnehin in der Minderheit. Und 1 Frame (also 40ms bei PAL-Spielen) ist schon verdammt mickrig. Das dürfte mir nur in den wenigsten Situationen wirklich auffallen. Zumal selbst damalige Hardware ja nicht gänzlich frei von Verzögerungen war (also alles: TV, Konsole, Gamepad, etc.).

Naja, jedenfalls schön, dass nun eine passende Lösung gibt. Wenn ich es dann doch mal brauche, kann ich darauf zurückgreifen Fröhlich.
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#7
0
Zitat: Und 1 Frame (also 40ms bei PAL-Spielen)

Das sind 2 Frames pro Sekunde, 20ms = 1fps bei PAL. Und das fällt schon massiv aus. Besonders gut kann man das in WinUAE mit den Pinball Spielen testen. Die Flipper sind endlich extrem fluffig.

Mir ist schon klar, das viele kein Problem mit der Verzögerung haben. Die knallen sich ein Retro-Pie oder diese Mini Konsolen an den TV und haben am Ende 5-6 Frames (oder mehr) Lag und merken es nicht. Ist ja auch Ok. Nur wenn man ernsthaft schnellere Actionspiele/Beat'em Ups, oder eben sowas wie Pinball, emulieren möchte ist das natürlich genial. Smile

Zitat:Zumal selbst damalige Hardware ja nicht gänzlich frei von Verzögerungen war (also alles: TV, Konsole, Gamepad, etc.).

Röhren TVs haben nur eine recht geringe Latenz, dürfte bei kaum mehr als 1-2ms liegen. Ähnlich die echten Konsolen oder die Gamepads daran (per Kabel).
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#8
0
Retro-Nerd schrieb:
Zitat: Und 1 Frame (also 40ms bei PAL-Spielen)
Das sind 2 Frames pro Sekunde, 20ms = 1fps bei PAL. [...]
Oh, stimmt - ich habe da mit zwei Halbzeilen gerechnet Baby.


Retro-Nerd schrieb:
Zitat:Zumal selbst damalige Hardware ja nicht gänzlich frei von Verzögerungen war (also alles: TV, Konsole, Gamepad, etc.).
Röhren TVs haben nur eine recht geringe Latenz, dürfte bei kaum mehr als 1-2ms liegen. Ähnlich die echten Konsolen oder die Gamepads daran (per Kabel).
Ich hatte einen recht modernen 100Hz-TV. Der war zwar definitiv noch schneller als die heutigen LCDs, aber sicherlich auch etwas langsamer als die ganz alte 50Hz-Röhre (oder als der PC-Monitor). Natürlich war das für mich alles weder mess- noch spürbar Wink.
Ich meinte aber eigentlich auch die Summe aus allen Lags (ein bisschen TV, ein bisschen Konsole, ein bisschen spielintern, etc.). Ich schätze mal, dass man selbst damals mit zwei bis drei Frames an "Verlust" rechnen musste. Es ist nur nicht störend aufgefallen, weil es eben nicht so extrem wie heute war (folglich hat auch gar keiner darauf geachtet bzw. darüber geredet Zunge rausBig Grin).

Übrigens: Mein LCD-TV hat - zumindest laut Datenblatt - im PC-Modus einen Input-Lag von 30ms. Ich denke, damit kann man gut leben Smile.
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#9
0
Zitat: Ich schätze mal, dass man selbst damals mit zwei bis drei Frames an "Verlust" rechnen musste.

Du meinst dann aber zusammen mit dem programmierten aus den Spielen. Der normale Inputlag Lag durch die Hardware (Röhre+Konsole oder Computer) war nicht höher als ein paar Millisekunden (1-2ms), also nicht spürbar. LCD TVs sind in der Tat deutlich übler als gute PC Monitore, selbst im "Gaming Mode" sind 30ms bis teilweise 100ms möglich. Damit könnte ich heute nichts mehr anfangen.

Wenn du an deinem LCD also ein echtes SNES bestreibst wird es in Richtung 30-32ms gehen gesamt gehen. Ein PC Emulator (ohne Lag Optimierung) am gleichen TV liegt dann schon bei 72-85ms. Plus die 20-60ms für beides extra, je nachdem viel Lag im Spiel programmiert ist.

Also mein Iiayma hat laut Web ein Lag von 10ms. WinUAE kann durch die neue Beam Racing/Frame Slice Methode aus den normalen 20ms (mit normalen Vsync eher 40ms) ein 5ms Lag (mit Top Hardware sogar noch tiefer) machen. Mein Pads lieben bei ca. 5ms. Die 10ms vom Monitor werden durch die BR/FS Methode auch auf ca. 2,5ms gesenkt. Bin damit dann sogar deutlich schneller, als wenn du dein echtes SNES an den suboptimalen LCD TV anschließt. Big Grin
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#10
0
Hmm, warum nimmt man denn überhaupt einen TV anstatt eines PC-Monitors, wenn der Lag da so groß ist? Die PC-Monitore haben doch heutzutage auch sehr oft HDMI-Eingänge.
Zitieren
#11
0
Naja. TVs nehmen meist die Leute mit den Retro-Pi Teilen. Schätze der Großteil nutzt die normalen PC Emulatoren am Laptop. Dort macht natürlich PAL Emulation dann überhaupt kein Sinn, da die wenigsten 50Hz ausgeben können. Wissen eh die wenigsten, das sowas überhaupt wichtig ist für eine ruckelfreies Bild. Hauptsache Bild und Ton ist da.

Echte Retro Hardware am modernen PC Monitor ist problematisch, da man dann oft einen Scart zu HDMI/VGA Konverter braucht. Sowas ist auch immer mit Lag verbunden. Da kommt man wahrscheinlich lagmäßig auf ein ähnliches Niveau als wenn man die Geräte an einen LCD TV anschließt.
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#12
0
Selten so viel Blödsinn gelesen. Dieser Input lag der da entfernt wird ist der den JEDE Konsole normalerweise hat auch bei Original Hardware. Sprich diese Entfernung ist dann schon schneller als jede Original Konsole. Für mich ein No Go da ich lieber das Originale Spiel Gefühl habe. Deswegen hab ich den Mist auch deaktiviert.
Zitieren
#13
0
Das hat nichts mit Blödsinn zu tun. Sondern ist schlicht Geschmackssache. Du nervst langsam mit deinen Posts. Schon im Rom Hacks Thread nur Unsinn von dir. Wieder mal nicht richtig gelesen, oder verstanden was da eigentlich passiert.

Derzeit gleicht das rausnehmen des Original Lags aus den Spielen auch nur den normalem Lag aus, der zusätzlich durch Emulator/Monitor und USB Eingabe Geräte dazu kommt. Am Ende ist man also in etwa dort, wo man per Röhre und echter Hardware ist. Nicht mehr und nicht weniger. Erst wenn man die Beam Racing Technik zusätzlich in RetroArch noch einbauen würde wäre man deutlich schneller als das Original. Rolleyes
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#14
0
Retro-Nerd schrieb:
Zitat: Ich schätze mal, dass man selbst damals mit zwei bis drei Frames an "Verlust" rechnen musste.
Du meinst dann aber zusammen mit dem programmierten aus den Spielen. Der normale Inputlag Lag durch die Hardware (Röhre+Konsole oder Computer) war nicht höher als ein paar Millisekunden (1-2ms), also nicht spürbar. [...]
Jo, ich meinte alles zusammen.
Ich kann mir einfach nicht vorstellen, dass die ganze Signal-Kette (Eingabe-Prozess, Verarbeitung, Ausgabe-Prozess = Controller, Konsole, TV) praktisch ohne Verzögerung vonstatten geht (also gegen 0 tendiert). Aber ehrlich gesagt habe ich mich damit noch nicht eingehender beschäftigt (schon um zu vermeiden, dass ich noch einem Tick unterliege WinkBig Grin). Und vielleicht unterschätze ich dabei auch die damalige Hardware zu sehr Baby.

Retro-Nerd schrieb:[...]
Wenn du an deinem LCD also ein echtes SNES bestreibst wird es in Richtung 30-32ms gehen gesamt gehen. Ein PC Emulator (ohne Lag Optimierung) am gleichen TV liegt dann schon bei 72-85ms. Plus die 20-60ms für beides extra, je nachdem viel Lag im Spiel programmiert ist.
[...]
Hmm ... das wären über 100ms. Das erscheint mir dann doch etwas viel zu sein. Meine Erfahrung aus der Videobearbeitung ist, dass jeder eine Audio-Video-Asynchronität ab spätestens -120ms Unterschied wahrnimmt. Sensible Menschen merken es aber auch schon ab -80ms und Profis sogar bei -40ms (die Angaben beziehen sich natürlich auf Vollbilder Wink).
Ich vermute mal, dass es beim Inut-Lag ähnlich aussieht. Wahrscheinlich ist es sogar noch etwas stärker, weil man die Verzögerung ja direkt spürt. Insofern sollte so eine starke Differenz eigentlich jedem negativ auffallen.

Naja, wie gesagt müßte ich mich damit noch tiefergehend beschäftigen und ausgiebige Tests durchführen. Aber solange es mich nicht wirklich stört (oder behindert), werde ich mich da vorerst zurückhalten Zunge raus. Bei 'Super Mario World' komme ich zumindest immer noch super klar und das Timing passt wie eh und je Smile.
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#15
0
Mit der Ablaufgeschwindigkeiten sollte man das nicht vergleichen. Sind ja nur Eingabegeräte, die etwas später auf Druck reagieren.

Man kann solche Lags aber in der Tat auch optisch besser sichtbar machen. Flipperspiele wie Pinball Fantasies oder Slam Tilt haben sehr schnell bewegbare Schläger. Wenn man die in WinUAE (mit dem normalen Vsync aktiviert) durch schnelle Tastendrücke so schnell wie möglich bis zum höchsten Ausschlagpunkt bewegt sieht man ganz deutlich, das manche Tastendrücke zu spät kommen. Das gibt dann so eine Art Nachzieheffekt, da der Auschlag nur bis zu ca 75% sichtbar ist.

Mit dem neuen Lagless Vsync (Beam Racing, also in der Lag Minimierung was komplett anderes als RetroArch da macht) schafft man dann durchgängig den vollen Anschlag. Da sieht man dann selbst zusätzliche 20ms Lag deutlich. Solche Spiele sind auch extrem timing kritisch. Konnte in Slam Tilt am Emulator nie mehr als ca. 500.000.000 Punkte machen, nun sind 1.000.000.000 kein Problem mehr. Ist halt deutlich näher an der Original Amiga Hardware. Sind jetzt vielleicht noch 10-12ms Gesamt Lag, vorher waren es ca.32-35ms mit meiner PC Hardware. Den programmierten Lag der Amiga Spiele kann ich in WinUAE nicht testen, ist aber auch für den Vergleich hier unerheblich.

Alles in allem ist das sehr spektakulär. Input Lag war einer der Hauptgründe, warum ich eher selten action-orientierte Spiele im Emulator gespielt habe. Das hat sich innerhalb von ein paar Wochen komplett geändert. Smile

Der 8bitGuy hatte neulich mal den C64-Mini getestet. Waren mit seinem genutzten TV wohl bei ca. 130ms Lag, was natürlich überhaupt nicht geht. Dank seines kleines Testprogramms kann man das sofort auch optisch sehen. Bei ca. 18 Minuten zu sehen.

Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#16
0
Zitat:[...]
Man kann solche Lags aber in der Tat auch optisch besser sichtbar machen. Flipperspiele wie Pinball Fantasies oder Slam Tilt haben sehr schnell bewegbare Schläger. Wenn man die in WinUAE (mit dem normalen Vsync aktiviert) durch schnelle Tastendrücke so schnell wie möglich bis höchsten Ausschlagpunkt bewegt sieht man ganz deutlich, das manche Tastendrücke zu spät kommen. Das gibt dann so eine Art Nachzieheffekt, da der Auschlag nur bis zu ca 75% sichtbar ist.
[...]
Du meinst diese Spiele, nicht?

Zitat:Hi,

this new algorithm is impressive.

Example by myself on WinUAE (Amiga emulator):

with 7 slices (experimental lagless implementation)



Wirklich ziemlich genial! Schön auch zu sehen, wie schnell die Emulatoren-Entwickler diese neue Technik implementieren. Fröhlich


RetroArch bekommt nun übrigens auch eine Desktop-Oberfläche spendiert:



Sieht zwar bisher nur wie eine Low-Budget-Version von facTotum aus, aber für den Anfang nicht schlecht. ^^
Zitieren
#17
0
Yep, genau der Pinball Vergleich war es. War nur zu faul das zu verlinken. Danke. Big Grin

Ja, das Retroarch nun eine Desktop Oberfläche bekommt ist ganz nett. Mir gefällt Launchbox im Desktop Mode allerdings sehr gut. Brauche da derzeit nichts anderes.
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren
#18
0
Nagut, jetzt habt ihr mich doch. Wenn ich mal etwas Lust und Laune habe, schaue ich mir das mal näher an. Einfach nur um zu sehen, wo mein System steht Wink.
[Bild: cgb-signaturwdjiq.png]
Du hast eine (nicht mehr ganz so) geheime Botschaft entdeckt:
"Besucht Heinrich's Spiele-Ausstellung!" ;-)


Big Grin Big Grin
Zitieren
#19
0
Das Programm vom 8-bit-Guy, das sofort nach Tastendruck einen Ton ausgibt und die Bildschirmfarbe wechselt, klingt interessant. Das müsste es jetzt nur für mehr Konsolen geben, damit ich auch mal solche Input-Lag-Tests durchführen kann. Bei richtigen Spielen weiß man ja nicht, welcher Teil der Verzögerung fest einprogrammiert ist und welcher durch die Emulation/Anzeige kommt.
Zitieren
#20
0
In RetroArch kann man den programmierten Spielelag für einige Konsolen selber testen. Pause Modus, Sprung Button gedrückt halten und per "K" Taste immer ein Frame vorschalten. Wenn die Sprunganimation z.B. bei Frame 3 einsetzt hat das Spiel 2 Frames Lag. Den normale Lag durch Emulator/Monitor/Eingabegeräte kann man ganz gut abschätzen.
Awards für außergewöhnlich gute oder lustige Threads/Posts:

1. Gadler = für sein wasserdichtes "Wie suche ich richtig" Tutorial.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  ScummVM/DosBox/RetroArch und Shader GBuster 10 662 10.07.2023, 07:33
Letzter Beitrag: goodsubarita
  Alle Spiele mit den Namen "Nekketsu" oder "Kunio-Kun" LeChuck 13 3.361 17.10.2022, 01:32
Letzter Beitrag: Glurak
  [Frage] RetroArch Shader wo speichern? Commodus 9 864 04.09.2022, 19:53
Letzter Beitrag: Commodus
  [Info] RetroArch 1.7.8 mit AI Service für unübersetzte Japan Klassiker. Retro-Nerd 3 2.748 09.09.2019, 21:10
Letzter Beitrag: Cebion
  [Info] RetroArch 1.7.4. Retro-Nerd 3 2.402 31.08.2018, 17:01
Letzter Beitrag: Heinrich Reich

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste