h0ppel schrieb:
Aber es muss doch eine Möglichkeit geben, mit vollen fps zu spielen ohne das Teering.
Tearing nicht Teering
Und nein, 300 FPS ohne Tearing sind nicht möglich. Du verstehst anscheinend nicht, warum das Tearing auftritt...
Mal ein erklärungsversuch:;
Dein Monitor hat 60 Hz. Das bedeutet, dass er 60 mal pro Sekunde ein neues Bild aufbaut und somit alle 16 ms quasi das darstellt, was gerade in jeweiligen Moment am SignalEingang angekommen ist.
Wenn du Vsync aus hast, denn schickt die Grafikkarte die Bilder so schnell raus, wie sie nur kann. z.B. 300 mal pro sekunde.
So, jetzt kommt das entscheidende. Der Monitor fragt alle 16 ms das Signal ab und baut dann das Bild von oben nach unten auf. Wenn du jetzt den Monitor aber mit 300 FPS befeuerst, dann erhält der Monitor während des Abtastvorgangs zig verschiedene Bilder.
Sprich, die Abtastung fängt oben an, nach sagen wir mal 25% des Bildes kommt aber schon wieder ein neues Frame am Monitor an. Aus diesem Frame werden dann weitere 25% des Bildes aufgebaut, dann ist der Monitor aber immer noch nicht mit dem Bildaufbau fertig. Während des weiteren Bildaufbaus kommen weitere Frames am Monitor an, bis du zuguterletzt das fertige Bild hast, das aus mehreren Teilabschnitten von unterschiedlichen Frames zusammengesetzt wurde.
Nun kannst du dir auch sicher vorstellen, dass die Frames, die in das fertige Bild geflossen sind alle leicht anders aussehen, da du dich ja im spiel bewegst. Und genau an den stellen an denen beim Bildaufbau ein neues Bild gekommen ist hast du dann diese linien bzw. einen Versatz im Bild, also das Tearing.
Verhindert werden kann das ganze NUR indem die Grafikkarte ein Bild raussendet und dann solange wartet, bis das Bild vollständig abgetastet und dargestellt wurde. ERST dann schickt die Grafikkarte das nächste Frame raus. Dadurch dass der 60 Hz Monitor nun zeitlich synchron zu seinem Bildaufbau 60 FPS bekommt wird verhindert, dass Tearing entsteht. In dem Fall hast du nun Vsync aktiv.
Daraus Folgt, dass du zwangsweise IMMER Tearing haben MUSST, wenn du den Monitor mit mehr Frames befeuerst, als er überhaupt darstellen kann. Die Folge ist wie oben erklärt tearing, indem ein Bild aus mehreren Bilder zusammengestellt wird, aufgrund der SignalAbtastung des Monitors von oben nach unten.
Im Grunde kann man sich das auch vorstellen wie mit einer Kamera un dessen Belichtungszeit. Wenn du während einer längeren Bleichtungszeit den Bildinhalt änderst, hast du alles was sich innerhalb dieser Zeit verändert hat im fertigen Bild. Genauso ist es beim Monitor. Er hat 16 ms zeit das Bild am eingang abzutasten und alle Bilder die in dieser Zeit am Monitor ankommen wandern ins fertig dargestellte Bild.