Tripple Buffering oder Dreifachpufferung?

... komplette Frage anzeigen

2 Antworten

Normalerweise wird bei Grafik "double buffering" eingesetzt. Es gibt einen so genannten Front- und einen Backbuffer. Das sind Bereiche im Grafikspeicher, in denen Bildinformation liegt.

  • Im Frontbuffer befindet sich das Bild, das gerade auf dem Monitor dargestellt wird.
  • Während dieses Bild angezeigt wird, berechnet der Grafikprozessor das nächste Bild und schreibt es in den Backbuffer.
  • Danach werden Front- und Backbuffer vertauscht, sodass das gerade berechnete Bild nun angezeigt wird.
  • Der Grafikprozessor berechnet das nächste Bild und schreibt es in den Backbuffer.
  • Und so weiter und so fort.


Das Problem beim "double buffering" ist, dass der Grafikprozessor, nachdem er ein Bild in den "back buffer" gezeichnet hat, warten muss, bis die Puffer getauscht wurden, bevor er weiterrechnen kann. Das ist erforderlich, um zu vermeiden, dass eine "unfertige Szene" im Backbuffer steht und beim nächsten Vertauschen im Frontbuffer landet und dargestellt wird.

Beim "Triple Buffering" werden drei Puffer verwendet, ein Front- und zwei Backbuffer. Der Grafikprozessor kann somit immer abwechselnd in einen der beiden Backbuffer "zeichnen" und wenn der nächste "Swap" ansteht, wird derjenige Backbuffer zum neuen Frontbuffer (und somit dargestellt), in den gerade nicht "gezeichnet" wird. Dieser enthält immer das neueste "fertig berechnete" Bild.

Vorteil ist, dass der Grafikprozessor besser ausgelastet wird, weil er weniger warten muss und somit oftmals eine höhere Bildrate und somit flüssigere Darstellung erzielt wird. Nachteil ist, dass die Latenz (Zeit, bis das berechnete Bild tatsächlich dargestellt wird) geringfügig ansteigt. Bei Echtzeitanwendungen (schnellen Computerspielen, z. B. "First-Person-Shootern") ist die Latenz oft wichtig.

Ich würde die Option aktivieren und ausprobieren, ob Du einen Nachteil bezüglich der Latenz in schnellen Computerspielen bemerkst. Wenn nicht, würde ich sie aktiv lassen. Du solltest mit aktivem "Triple Buffering" eine flüssigere Darstellung (höhere Framerate) erzielen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Rattatu
26.07.2016, 15:19

ok ich sehe du kennst dich aus :)

deshalb hab ich noch eine kurze Frage: Wenn man die Funktion "Adaptive VSync" aktiviert, löst das gleichzeitig das Problem mit Tearing und Input Lags oder müsse man bei einen 60hz Monitor (im Falle die GPU generiert mehr als 60FPS) einen FPS Miniter verwenden um die Probleme zu lösen?

1

Was möchtest Du wissen?