Der Grund, warum Aero das Aufreißen verhindern kann, ohne VSYNC in einer Anwendung erzwingen zu müssen, liegt darin, dass es sich um einen Compositing-Fenstermanager handelt. Es zeichnet den Desktop und alle Fenster asynchron in Bezug auf eine laufende Anwendung.
Das heißt, wenn Sie Compositing in Windows Vista / 7 aktivieren (es ist in Windows 8 immer aktiviert), werden alle Fenster mit einer Kopie des letzten Bildes gezeichnet, das von hinten nach vorne ausgetauscht wurde. Der Compositor (Microsoft nennt es DWM, Desktop Window Manager ) setzt alles mit aktiviertem VSYNC zusammen. Da beim Zeichnen für jedes Fenster eine Kopie des letzten vollständig ausgelagerten Frontpufferbilds verwendet wird, werden niemals teilweise gezeichnete Rahmen angezeigt. Es hat jedoch den unglücklichen Nebeneffekt, zu verhindern, dass wirklich alte Software, die ausschließlich in den Frontbuffer gezogen wurde, richtig funktioniert - moderne Software tut dies jedoch nicht.
Kurz gesagt, das DWM fügt eine zusätzliche Schutzschicht gegen Zerreißen hinzu. Eine, die es jeder auf dem System ausgeführten Anwendung ermöglicht, unabhängig von der Aktualisierungsrate des Bildschirms mit einer bestimmten Geschwindigkeit zu zeichnen und dennoch ein Zerreißen zu verhindern. Auf einem solchen System kann VSYNC in OpenGL oder Direct3D nur im Fenstermodus aktiviert werden, indem die CPU- / GPU-Auslastung gedrosselt wird.
Aus diesem Grund wurde adaptives VSYNC entwickelt, mit dem Ziel, Anwendungen, die die Aktualisierungsrate des Displays nicht aufrechterhalten können, nicht zu benachteiligen, indem sie in einen niedrigeren Faktor der Aktualisierungsrate gezwungen werden (z. B. 60 Hz -> 30, 20, 15, 10, 12) , 6, 5, 4, 3, 2, 1), aber um Anwendungen einzuschränken, die schneller zeichnen als der Monitor, können Bilder angezeigt werden, wenn zu viel CPU- / GPU-Leistung verbraucht wird.
Doppelte Pufferung + V-Sync ein führt zu keinem Einreißen. Aero verwendet diese Konfiguration.
quelle
DWM (die Technologie, die den Aero-Effekt aktiviert) rendert alles auf Ihrem Bildschirm als D3D-Oberfläche (wodurch die Wiedergabe von Videos auf Flip fortgesetzt werden kann). Diese Rendering-Technik verhindert automatisch das Zerreißen , obwohl die Spielmethode besser sein sollte als die generische DWM-Methode (schließlich ist es ihre eigene Engine). Es ist also wahrscheinlich, dass die Spielmethode entweder gar nicht so gut ist oder nicht für Ihre Konfiguration optimiert wurde.
quelle