Фактически, причина, по которой Aero может предотвратить разрыв, не вызывая VSYNC в приложении, заключается в том, что он является оконным менеджером композитинга. Он рисует рабочий стол и все окна асинхронно относительно любого работающего приложения.
То есть, когда вы включаете композитинг в Windows Vista / 7 (он всегда включен в Windows 8), он будет рисовать все окна, используя копию последнего изображения, которое было поменяно местами. Композитор (Microsoft называет его DWM, Desktop Window Manager) комбинирует все с включенным VSYNC, и поскольку он рисует, используя копию последнего полностью замененного изображения переднего буфера для каждого окна, он никогда не отображает частично нарисованные кадры. Однако он имеет неприятный побочный эффект - он не позволяет действительно старому программному обеспечению, которое было разработано так, чтобы работать исключительно в переднем буфере, работать правильно, но современное программное обеспечение этого не делает.
В двух словах, DWM добавляет дополнительный уровень защиты от разрывов. Тот, который позволит любому приложению, работающему в системе, рисовать со скоростью, независимо от частоты обновления дисплея, и при этом предотвращать разрыв. В такой системе, в оконном режиме, единственное, для чего хорошо использовать VSYNC в OpenGL или Direct3D, - это фактически снизить нагрузку на CPU/GPU.
Вот почему был создан адаптивный VSYNC, идея которого заключается не в том, чтобы наказывать приложения, которые не могут поддерживать частоту обновления дисплея, принудительно устанавливая их в более низкий коэффициент частоты обновления (например, 60 Гц -> 30, 20, 15, 10, 12). , 6, 5, 4, 3, 2, 1), но для ограничения приложений, которые рисуют быстрее, чем монитор может отображать изображения из-за чрезмерного использования ресурсов процессора / графического процессора.