Что такое VSync в играх и стоит ли его включать?

17 февраля
Просмотров: 95

В видеоиграх в настройках графики часто есть переключатель под названием «VSync», но что делает VSync и стоит ли его включать? Я изучу плюсы и минусы технологии VSync, чтобы помочь вам решить, когда она является лучшим вариантом.

Что такое VSync (вертикальная синхронизация)?

VSync (сокращение от vertical synchronization — вертикальная синхронизация) — это технология, используемая в дисплеях и видеокартах для синхронизации частоты обновления дисплея с частотой кадров видеокарты. Это гарантирует, что каждый видео кадр отображается на экране в нужное время без разрывов изображения (screen tearing) или микрозадержек (stuttering).

Когда частота обновления и частота кадров не синхронизированы, дисплей может показывать часть одного кадра и часть другого кадра одновременно, что приводит к разрыву изображения. Это может произойти, когда частота кадров выше частоты обновления, заставляя дисплей показывать несколько кадров одновременно, или когда частота обновления выше частоты кадров, заставляя дисплей пропускать кадры.

Для демонстрации вот видеоклип, который я снял с верхнего левого угла своего экрана во время игры в Doom Eternal с полностью отключенным VSync. Видео было снято с использованием замедленной съемки на моем iPhone, чтобы вы могли четко увидеть линии разрыва изображения (screen tearing).

У графического процессора (GPU) есть несколько «буферов» памяти, которые хранят и обрабатывают графические данные. «Передний» (front) и «задний» (back) буферы — это два из этих буферов, используемых в технике «двойной буферизации».

Передний буфер — это часть памяти GPU, видимая на дисплее. Он содержит данные изображения, которое в данный момент отображается на экране. Когда GPU рендерит новый кадр, он сохраняет данные в задний буфер, который не виден на экране.

Разрыв изображения происходит, когда буфер «переключается» (flipped) в середине цикла обновления экрана. При включенном VSync GPU ждет начала следующего обновления экрана, прежде чем отправить содержимое заднего буфера на дисплей.

Снижает ли VSync FPS?

Следует знать, что VSync действительно снижает частоту кадров, и это происходит несколькими способами. Основной способ заключается в том, что вертикальная синхронизация предотвращает рендеринг вашим GPU большего количества кадров, чем частота обновления экрана. Другими словами, монитор с частотой 60 Гц не получит более 60 кадров в секунду.

Кроме того, VSync с двойной буферизацией имеет серьезный недостаток. Если устройство, подключенное к дисплею, не может производить кадры с достаточной скоростью, текущий кадр будет сохраняться на два обновления, снижая FPS до половины частоты обновления.

Тройная буферизация — это похожая техника, но с дополнительным буфером. Этот третий буфер используется для хранения промежуточного кадра, который рендерится GPU, в то время как передний буфер отображается на экране, а задний буфер ожидает следующего кадра.

Тот новый кадр, который готов к переключению в передний буфер на момент начала обновления дисплея, отправляется туда. Это уменьшает резкость снижения частоты кадров, когда ваш GPU не всегда успевает за частотой обновления дисплея, так как почти всегда доступен новый кадр. Однако тройная буферизация немного увеличивает задержку ввода (latency), поэтому она не пользуется популярностью у любителей многопользовательских онлайн-игр.

«Адаптивный» VSync пытается устранить недостатки этих методов VSync, адаптируя синхронизацию между частотой обновления и частотой кадров в зависимости от производительности видеокарты. Когда частота кадров выше частоты обновления, Adaptive VSync ведет себя как включенный VSync и синхронизирует частоту обновления с частотой кадров, чтобы предотвратить разрывы и задержки.

Однако, когда частота кадров ниже частоты обновления, Adaptive VSync ведет себя как выключенный VSync и позволяет видеокарте рендерить и отображать кадры как можно быстрее, без каких-либо ограничений. Это может улучшить частоту кадров и уменьшить задержку ввода, не вызывая разрывов или задержек.

VSync и дисплеи с переменной частотой обновления (VRR)

В дополнение к технологиям VSync, которые мы обсудили, технологии переменной частоты обновления (Variable Refresh Rate, VRR) также могут играть роль в улучшении вашего игрового опыта. Если у вас есть дисплей с VRR, использующий HDMI VRR, AMD FreeSync или NVIDIA G-Sync, то он может динамически изменять свою частоту обновления, чтобы соответствовать частоте кадров GPU.

Это решает практически все проблемы, которые есть у других форм VSync в отношении задержки ввода или снижения частоты кадров. Однако, если ваш GPU может производить больше кадров, чем максимальная частота обновления дисплея, вы все равно можете активировать VSync в сочетании с технологией VRR.

Если ваша частота кадров падает ниже минимальной частоты обновления вашего дисплея с поддержкой VRR, вам всегда понадобится функция компенсации низкой частоты кадров (Low Frame Compensation, LFC). Не все дисплеи с VRR включают эту функцию, поэтому обращайте на нее внимание при покупке.

Когда следует включать VSync?

Когда включать VSync, зависит от ваших личных предпочтений. Вертикальная синхронизация может обеспечить плавный и захватывающий опыт, но у нее также могут быть некоторые недостатки. Отключение VSync может улучшить частоту кадров и отзывчивость, но также может вызвать визуальные артефакты, такие как разрывы. Способны ли вы мириться с уровнем видимых разрывов — это личное решение, и достаточно легко попробовать каждую игру с включенной и выключенной функцией.

Некоторые игроки могут предпочесть отключать VSync при игре в игры, требующие точного расчета времени и координации, такие как шутеры от первого лица, стратегии в реальном времени или киберспортивные дисциплины.

В однопользовательских играх, которые не зависят от низкого уровня задержки ввода, обычно лучше всего включать VSync. Однако мы не рекомендуем когда-либо использовать VSync с двойной буферизацией, если нет другого доступного варианта. VSync с тройной буферизацией — лучший вариант, а адаптивный VSync — еще лучше, если это возможно. В большинстве современных игр есть по крайней мере тройная буферизация VSync, даже если это не указано явно.

С новыми технологиями, такими как VRR, адаптивная синхронизация и более совершенные версии VSync, недостатки традиционного VSync практически исчезли. Так что если у вас есть доступ к этим новым технологиям, не стесняйтесь их использовать!

Комментарии
Ваш комментарий:
Имя:
Отправляя форму, я даю согласие на обработку персональных данных.
— Поля, обязательные для заполнения
Читайте еще
На этом сайте используются файлы cookie. Продолжая просмотр сайта, вы разрешаете их использование. Подробнее. Закрыть