PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwischenbildberechnung zur Entlastung der Grafikkarte?


Dalai-lamer
2013-05-19, 09:34:31
Viele tv's haben es schon, und es macht spiele flüssiger. Egal wie aufwändig spiele in Zukunft werden, der tv kann bis zu 2 zwischenbilder berechnen und damit ohne große rechenlast die Bilder verdreifachen.

Die heutige Implementierung verursacht "noch" höhere Input lags, da dies beim fernsehschauen zu vernachlässigen ist. Aber kann man so etwas nicht direkt in die Grafikkarten implementieren. Braucht man immer ein neues Frame oder würde es auch reichen 1-3 interpolierte Bilder zwischenzuschieben?

Wenn dies schnell genug geschehen kann, verschiebt sich der Input lag genau um 1 Frame. Ok vllt wäre das schon fast zu viel.

Gibt es schon solche Überlegungen? Besonders in spielen auf denen es nicht auf die letzte ms Redaktionszeit ankommt..

whatever
2013-05-19, 10:03:36
Solche Überlegungen gibt es schon. Hier findest du eine Präsentation und Videos dazu: http://and.intercon.ru/releases/talks/rtfrucvg/

PrefoX
2013-05-19, 11:27:23
das is doch rotz... sowas sollte sich niemand wünschen.

Botcruscher
2013-05-19, 12:26:08
Wenn dies schnell genug geschehen kann, verschiebt sich der Input lag genau um 1 Frame. Ok vllt wäre das schon fast zu viel.

Ich seh da 2 oder 3. Bild 1 - berechnetes Zwischenbild - Bild 2.


Geh bloß weg damit...

gnahr
2013-05-19, 12:31:01
was soll daran schlimm sein? blur und bloom kann in spielen auch viel spaß machen.

und die min-verschiebung um 1 frame macht auch sinn. man wartet bis bild 2 da ist, gibt zu dem zeitpunkt bild 1 aus, berechnet bild 1.5 und haut es raus, bevor bild 3 da ist und der nächste zyklus zwischen bild 2 und 3 für bild 2.5 wieder los geht.

mir fehlen eigentlich keine frames in den anwendungen, aber fürs shuttering wär es nie ne schlechte idee.

Tesseract
2013-05-19, 13:01:00
das is doch rotz... sowas sollte sich niemand wünschen.

warum nicht? die idee ist auf einem hold-type prinzipiell nicht verkehrt. man darf nur nicht den fehler machen und die interpolation mit tatsächlicher framerate gleichsetzen. diese müsste, um die unschärfe zu minimieren, bereits auf tatsächlichen 60Hz oder 120Hz aufsetzen.

xiao didi *
2013-05-19, 13:06:13
Wie möchte man dabei denn eine homogene Bildrate garantieren? Kann mir das nur als absolute Mikroruckler-Hölle vorstellen bei nicht konstanten Frameraten.

PatkIllA
2013-05-19, 13:16:54
Wie möchte man dabei denn eine homogene Bildrate garantieren? Kann mir das nur als absolute Mikroruckler-Hölle vorstellen bei nicht konstanten Framteraten.
Muss man ja gar nicht. Man müsste das Ruckeln damit sogar verringern können. Je nach dem zu welchem Zeitpunkt das Bild entstanden ist und wann der Anzeigezeitpunkt gekommen ist kann man eins der Bilder stärker gewichten als das andere.

Gouvernator
2013-05-19, 14:09:55
Der Inputlag der Zwischenbildberechnung bzw. Interpolation ist gar nicht mal so hoch. Das addiert sich einfach zum vorhandenen TV Lag und wirkt sich extrem störend aus. Wenn man Monitore mit einstelligem Inputlag einsetzt sollte die Zwischenbildberechnung eigentlich akzeptabel sein. Es ist schon geil wie ich finde wenn bei neueren TVs 24p Material mit 1200Hz läuft. Ein Game für Gamepad-Steuerung sollte dabei eh so gut wie gar nix vom erhöhten Inputlag mitbekommen. Sagen wir mal 30 FPS mit 2160p Downsampling wie 60 FPS aussehen zu lassen für 40ms Inputlag ist ein guter Deal...

Mr. Lolman
2013-05-19, 14:22:04
Gibts nicht irgendein XBox Spiel, wo das bereits gemacht wird? Afaik ist das bei irgendeinem Starwarsableger der Fall.

AintCoolName
2013-05-19, 14:36:55
Das gabs für Force Unleashed II (http://and.intercon.ru/rtfrucvg_html_slides/).

Coda
2013-05-19, 15:28:52
Die haben's am Ende aber nicht verwendet und stattdessen Motion Blur drübergekippt.

del_4901
2013-05-19, 15:38:19
Temporal Reprojection ist ne tolle Sache! Aber fuer eine ordentliche Zwischenbildberechnung wird es dann einfach zu teuer. Ich wuerde lieber echte 60fps ohne Antialiasing machen, und mir dann temporal AA ueber die Reprojection reinholen.

Phantom1
2013-05-19, 15:58:31
das is doch rotz... sowas sollte sich niemand wünschen.
seh ich genauso

PrefoX
2013-05-19, 21:38:20
warum nicht? die idee ist auf einem hold-type prinzipiell nicht verkehrt. man darf nur nicht den fehler machen und die interpolation mit tatsächlicher framerate gleichsetzen. diese müsste, um die unschärfe zu minimieren, bereits auf tatsächlichen 60Hz oder 120Hz aufsetzen.
wenn du 60fps hast, wozu willste da noch interpolieren? viel mehr frames schafft ein menschliches auge auch nicht, dazu kommen aber interpolationsfehler, klasse deal :D

PrefoX
2013-05-19, 21:42:36
Der Inputlag der Zwischenbildberechnung bzw. Interpolation ist gar nicht mal so hoch. Das addiert sich einfach zum vorhandenen TV Lag und wirkt sich extrem störend aus. Wenn man Monitore mit einstelligem Inputlag einsetzt sollte die Zwischenbildberechnung eigentlich akzeptabel sein. Es ist schon geil wie ich finde wenn bei neueren TVs 24p Material mit 1200Hz läuft. Ein Game für Gamepad-Steuerung sollte dabei eh so gut wie gar nix vom erhöhten Inputlag mitbekommen. Sagen wir mal 30 FPS mit 2160p Downsampling wie 60 FPS aussehen zu lassen für 40ms Inputlag ist ein guter Deal...
zeig mir mal bitte ein display das 1200hz schafft xD

nein nein, es macht kein sinn.
entweder ihr nehmt 30fps und interpoliert diese, sieht unschön aus.
bei 60fps gibt es keinen grund da noch etwas zu interpolieren, die fehler würden doch nur das bild ruinieren und da hier schon einige einen anfall beim kleinsten aliasing kriegen :D nee nee...

Tesseract
2013-05-20, 02:41:17
wenn du 60fps hast, wozu willste da noch interpolieren? viel mehr frames schafft ein menschliches auge auch nicht, dazu kommen aber interpolationsfehler, klasse deal :D
erstens schafft das auge locker mehr, zweitens verringert es, wenn richtig implementiert, die hold-type-unschärfe die uns seit dem umstieg von den CRTs quält.

gnahr
2013-05-20, 06:02:56
erstens schafft das auge locker mehr
nimmst du dir immer ein buch zum fernsehen und herkömmlichen kino mit um dich zwischen den 24fps (die für alle anderen flüssig sind) nicht zu langweilen? :tongue: sehen & verstehen dauert sogar 0,1s.
die disskusion ist leidig, weil sie leute involviert, die für sich natürlich übermenschliche fähigkeiten proklamieren wie "da seh ich nen unterschied!"

robbitop
2013-05-20, 09:30:07
Die Hold-Type Probleme bekommt man doh mit Backlight Scanning in den Griff. Siehe aktuelle 120 Hz Dispays mit Lightboost-Hack.

Sonyfreak
2013-05-20, 09:39:33
Ich halte die Idee für extrem schwachsinnig. Es hat schon einen Grund, warum ich die "Maximum Pre-rendered Frames" auf den Minimalwert reduziert habe. Da handle ich mir doch nicht über sowas erst recht wieder ein zusätzliches Inputlag ein. :rolleyes:

mfg.

Sonyfreak

PatkIllA
2013-05-20, 11:01:37
Was ist denn eigentlich mit variablen Refreshraten? Bei DisplayPort müsste das technisch gehen. Das sollte doch Latzenz und Ruckelproblematik verringern?!?

Impia
2013-05-20, 11:37:24
nimmst du dir immer ein buch zum fernsehen und herkömmlichen kino mit um dich zwischen den 24fps (die für alle anderen flüssig sind) nicht zu langweilen? :tongue: sehen & verstehen dauert sogar 0,1s.
die disskusion ist leidig, weil sie leute involviert, die für sich natürlich übermenschliche fähigkeiten proklamieren wie "da seh ich nen unterschied!"

Die Diskussion ist eher leidig, weil die Leute nicht darüber nachdenken wie das erzeugte Bild auf das Auge wirkt. Ein Film ist etwas anderes als z.b. ein 3D-Shooter. Und selbst bei Filmen bemerkt man in schnellen Szenen das da etwas fehlt, moderne Fernseher mildern diesen Effekt durch eingefügte Zwischenbilder. Bei einem Shooter ist das noch ausgeprägter. Wenn doch alles ab 25fps "flüssig" ist, warum dann der "Hype" zu höheren Frameraten ?
Etwa weil eine 360° Drehung innerhalb einer Sekunde (und das ist nicht unbedingt schnell) dazu führt dass man nur alle ~14° ein Bild gerendert bekommt ? Bei 100fps sind es alle ~4° wo das Auge ein Bild präsentiert bekommt. Es wirkt insgesamt Flüssiger weil mehr Zwischenschritte, für das Auge eine stetige Bewegung, ausgegeben werden.
Das mag die 25fps Fraktion aber nicht verstehen weil ja eine Sitcom mit 25fps flüssig wirkt ....

gnahr
2013-05-20, 11:52:38
Etwa weil eine 360° Drehung innerhalb einer Sekunde (und das ist nicht unbedingt schnell) dazu führt dass man nur alle ~14° ein Bild gerendert bekommt ? Bei 100fps sind es alle ~4° wo das Auge ein Bild präsentiert bekommt. Es wirkt insgesamt Flüssiger weil mehr Zwischenschritte, für das Auge eine stetige Bewegung, ausgegeben werden.
du siehst die zwischenschritte doch garnicht, bestenfalls ist da ein erahnen.
mach doch mal den gegentest und zwar im doppelblind-verfahren:
render dir ne szene vor mit konstant 100fps in der sich die welt zwischen 4 und 14° pro frame dreht und dann sagst du an wo deine grenze für ne echte drehung liegt.

genauso die inputlag-problematik... als ob irgendwer 0,05sek mehr delay ernstlich merkt. das ist alles homöopathie, deshalb komm ich mit meinem 5jahre alten 26zoll lcd auch so super klar. :) einen 21zoll ips-non-glare-dell vor 2 jahren nachgekauft um die entwicklung nachzuverfolgen, der auf dem papier in jeder disziplin bessser ist. und? nix.
aber die echten experten schwören ja weiterhin auf crt um bei 500fps counterstrike zu spielen.

Tesseract
2013-05-20, 12:31:56
die disskusion ist leidig, weil sie leute involviert, die für sich natürlich übermenschliche fähigkeiten proklamieren wie "da seh ich nen unterschied!"
nicht alles was du nicht verstehen kannst/willst ist "übermenschlich". die probleme sind real, nachvollziehbar und reproduzierbar.

gnahr
2013-05-20, 12:49:10
ja und nicht alle probleme die dir aufstoßen oder du sehen willst sind probleme der menschheit. :)
wir haben ein dilemma.

Impia
2013-05-20, 13:11:55
du siehst die zwischenschritte doch garnicht, bestenfalls ist da ein erahnen.
mach doch mal den gegentest und zwar im doppelblind-verfahren:
render dir ne szene vor mit konstant 100fps in der sich die welt zwischen 4 und 14° pro frame dreht und dann sagst du an wo deine grenze für ne echte drehung liegt.

Kein Problem, die liegt irgendwo deutlich über 200fps .. abhängig von der Drehgeschwindigkeit. Und das würde ich auch heute noch problemlos bemerken obwohl ich seit Jahren keinen Egoshooter mehr angefasst habe.

Dalai-lamer
2013-05-25, 08:37:21
Hey!
Naja der neue w905 von sony mit 55 zoll hat einen Input lag von 7-8 ms. Mit 200 Hz echter wiederholrate werden 3 echte Bilder eingefügt. Input lag von 16 ms und dafür 4 dache framerate ?

Mit mikroruckeln hat das rein gar nichts zu tun.
Da die Bilder interpoliert werden und dann angezeigt werden können wann man will.

Und egal wieviele zwischenbilder man berechnet, das Input lag verschiebt sich um 1 berechnet Frame, was daher logisch ist, da man das aktuell berechnete Frame nimmt und dazu das Frame der letzten Berechnung. Wenn das nächste Bild berechnet wird, wird wieder verglichen was sich verändert hat und ein zwischenbild eingefügt. Bzw 3.

Wenn zwei aufeinander folgende bildinhalte sich zu stark unterscheiden, dann funktioniert es eben nicht, hat dann aber auch keine nachteile( muss über einen algo entschieden werden.)

Naja mit aktuellen Fernsehern geht das schon voll automatisch und erhöht die framerate dramatisch, leider ist der Input lag von heutigen tv's der hoch, da habe ich darauf gehofft, dass es vllt schon Überlegungen gibt dies direkt in die Grafikkarten Hardware zu Gießen .

Grüße

THEaaron
2013-05-25, 15:45:37
aber die echten experten schwören ja weiterhin auf crt um bei 500fps counterstrike zu spielen.

Bei Counterstrike war es wie bei Quake. Man war unter einer bestimmten FPS Zahl im Nachteil. Bei CS war das Recoil höher und bei Quake konnte man nicht alle Trickjumps machen.

Außerdem stockt eine Drehung unter 60FPS bei beiden Titeln deutlich.

€: http://boallen.com/fps-compare.html
€2: http://frames-per-second.appspot.com/

Dalai-lamer
2013-05-26, 12:29:26
Man kann es ja auch umrechnen. Bei 30 fps hat man, vom Prinzip aus schon "33 ms Input lag" dazu addiert 30 ms von der Internet Verbindung , dazu 40 ms vom ips Panel. Naja echte Zocker nehmen TN.
Aber wenn man alles addiert, ist die Eingabe um etwa 100 ms verzögert.
Da ich selbst viel quake gezockt habe kann ich bestätigen: es kommt auf jede ms an.

Daher: TN Panel, ne Bude mit nem inet Anschluss unter 10 ma Ping, und über 100 fps;)

Das gibt zusammen gerechnet solche immense Vorteile...

Tesseract
2013-05-26, 13:28:18
Daher: TN Panel, ne Bude mit nem inet Anschluss unter 10 ma Ping, und über 100 fps;)

inputlag ist nicht vom panel abhängig. es gibt IPS mit <1ms inputlag genauso wie TN mit wesentlich mehr.

Dalai-lamer
2013-05-26, 16:09:54
Ips unter 1 ms ? Wo ?:)

Klar, die Aussage war pauschalisiert. Aber technisch bedingt dauert das umschalten bei ips im Normalfall länger als bei TN

Tesseract
2013-05-26, 16:34:53
schaltzeit ist etwas anderes als inpulag. die kleineren dell-modelle haben z.B. ~1ms inputlag. viele TN haben da deutlich mehr, trotz schneller schaltzeiten.

2phil4u
2013-05-27, 13:11:04
Ich verstehe die ganze Strategie nicht.
Wie kann man ein Zwischenbild denn gescheit zeitnah berechnen und das noch von vergleiweise schwacher Hardware wie sie in einem Fernseher zu finden ist.
Frame 10 wird gerendert, mit Frame 9 verglichen und dann soll Frame 10.5 daraus berechnet werden ?
Wie soll das gehen, wenn ich mit der Sicht völlig neue Objekte zu sehen bekomme, woher soll der Fernseher, Monitor denn wissen, dass diese auftauchen ?
Vielleicht bin ich auch einfach zu blöd das zu verstehen oder es gilt für Standbilder, wenn sich etwas bewegt von Frame 9 auf Frame 10 berechnet man einfach die Bewegung weiter, aber selbst dann ist das Rendering ja falsch, weil sich bsp auch die Ansicht ändert.

Wäre das alles so einfach müsste man ja theoretisch die halbe Zeit nichts berechnen, weil es im Frame worher ja schon berechnet wurd

PatkIllA
2013-05-27, 13:17:03
Frame 10 wird gerendert, mit Frame 9 verglichen und dann soll Frame 10.5 daraus berechnet werden ?
Da wird Frame 9.5 raus. Frame 10 wird erst mit Verzögerung angezeigt.

del_4901
2013-05-27, 13:35:27
Da wird Frame 9.5 raus. Frame 10 wird erst mit Verzögerung angezeigt.
Man koennte auch extrapolieren, dann sollte man aber mindestens 4 Ankerpunkte besitzen und ne gute rejection Strategie.

ndrs
2013-05-27, 15:06:55
Man koennte auch extrapolieren
Bitte nicht. Das gibt doch sicher massig Artefakte bei kompletten Szenenwechseln.

An der Stelle ist mir grad eine grundsätzliche Frage eingefallen: Wie ist das eigentlich bei heutigen GPUs/Engines, wird da jeder Frame neu berechnet oder bauen die auch aufeinander auf (ähnlich wie bei Videokomprimierung)?

Geldmann3
2013-05-28, 00:45:46
Soweit ich weiß, bauen die nicht aufeinander auf. Jedenfalls nicht im Sinne von Motion Prediction oder ähnlichem. Wie soll das auch in einem Spiel funktionieren, in dem der nächste Frame noch nicht bekannt ist?

del_4901
2013-05-28, 00:48:47
Soweit ich weiß, bauen die nicht aufeinander auf. Jedenfalls nicht im Sinne von Motion Prediction oder ähnlichem. Wie soll das auch in einem Spiel funktionieren, in dem der nächste Frame noch nicht bekannt ist?
Man kann temporal reprojection machen. Meistens jedoch nur fuer bestimmte Effekte wie: SSLR, SSAO, SSDO, SMAA (See any patterns here?)
Motion Vektoren (fuer Motion Blur und reprojection) hat auch jede bessere Engine.

Supern0va
2013-06-16, 22:46:17
Finde das sogar der Dreifachbuffer zu viel Lag verursacht.

Ich verwende 2 x Pre-rendered Frames, Double Buffer, Soft Sync und der Moni hat weniger als 10 ms Lag.