0ssi schrieb:
Bleibt trotzdem die Frage wie ein Spiel mit 30FPS Limit auf 60Hz mit V-Sync sauber laufen soll bzw.
ob dann überhaupt V-Sync an ist !? Bei 60FPS auf 120Hz genauso. Wenn auf 120Hz V-Sync aus ist
dann hätten man in 90% der Spiele Tearing weil die nur 60FPS schaffen. Bin gerade etwas verwirrt.
Klar ist dann Vsync an. Wenn du es aktivierst, ist und bleibt es immer an, egal welche Framerate du hast (kannst halt nur max. 60 FPS haben, wenn du ein 60 Hz Display nutzt)
Nehmen wir mal 120 Hz, weil das etwas anschaulicher ist:
Bei 120 Hz kannst du z.B. 120, 60, 40 und 30 FPS sauber ausgeben, weil das ganzzahlige Teiler von 120 sind.
Wenn du dir einen Zeitstrahl mit 120 Slots vorstellst (das sind die 120 Hz deines Displays), kannst du die oben genannten Bildmengen immer in gleichmäßigen Abständen auf dem Zeitstrahl aufteilen.
Nimmst du Zahlen die keine ganzzahligen Teiler sind, dann bist du gezwungen, auf dem Zeitstrahl unregelmäßig große Lücken zu lassen. Das spürt man dann in Form von Microrucklern.
Vsync sorgt jetzt eben dafür, dass diese Zeitslots auch exakt vorgegeben sind und eingehalten werden müssen. Ein Frame kann somit immer nur in den einen oder den nächsten Slot rutschen, ohne Ausnahme.
Bei deaktiviertem Vsync werden diese Zeitslots ignoriert (die Frames werden nicht mehr mit dem Zeitraster des Monitors Synchronisiert) und die Frames können auch einfach zwischendrin platziert werden. Das sorgt dann für Tearing. Du siehst dann zwei oder drei Frames gleichzeitig auf dem Bildschirm. Da die Teilbilder bei einer im Spiel dargestellten Bewegung aber nicht mehr perfekt zusammenpassen, sieht man neben dem Tearing aber trotzdem noch Microruckler. Nur nicht so stark wie mit Vsync bei falscher Bildrate.
SavageSkull schrieb:
Wenn dann mußt du EXAKT 60FPS IMMER treffen. Hast du mehr, ist es besser (sofern du kein Tearing bekommst) auch höhere FPS zu nutzen, weil dein Input dann schneller wird. VSync ist eine extreme Bremse für die Steuerung. Framelimiter, je nachdem wie sie arbeiten, sind teils deutlich besser, als schnödes VSync.
Was muss ich exakt treffen?
Dafür sorgt doch Vsync.
Angenommen ein Spiel läuft ohne Vsync mit einer minimalen Framtime von 10 ms (100 FPS), durchschnittlich meinetwegen 120 FPS.
Hab ich jetzt ein 60 Hz Display und aktiviere unter diesen Bedingungen Vsync, dann passieren zwei Dinge.
1.) Die Framerate wird auf EXAKT 60 FPS limitiert mit einer Frametime von exakt 16,6 ms.
2.) Die vom PC erzeugten 60 FPS werden an den 60 Hz Rythmus des Display exakt angeglichen.
Somit trifft jedes vom PC ausgegebene Bild exakt auf den Anfang eines Refreshzyklus des Displays.
Solange du die minimale Frametime einhalten kannst gibts da nichts zu beachten.
Nutzt du jedoch kein Vsync, sondern nur einen FPS limiter, dann wird nur oben genannter Punkt 1.) ausgeführt. Dir fehlt dann immernoch die Synchronisation mit dem Display, denn die 60 FPS vom Spiel werden nur durch ganz viel Glück synchron mit dem 60 Hz Takt des Displays sein. Kann man sich vorstellen wie zwei Uhren die man synchronsiert. Klar sie laufen immer gleich schnell im gleichen Takt. Aber das heißt nicht, dass sie das auch synchron tun. Daher brauchst du für eine ruckelfreie Ausgabe ohne Tearing nicht nur nen FPS Limiter sondern zwingend auch V
sync.
Aber ich merke schon, das artet hier aus. Der Sachverhalt ist allgemein zu komplex, um es mal eben schnell zu erklären. Und dank VRR fällt das in Zukunft eh schon fast unter "unnützes wissen", da es an Relevanz verliert.