Что значит vsync. Зачем нужна вертикальная синхронизация в видеокартах

Наверняка многие любители компьютерных игр сталкивались с рекомендацией отключать в играх так называемую «вертикальную синхронизацию» или VSync в настройках видеокарты.

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

Первые компьютерные мониторы работали с фиксированными разрешениями и с фиксированными частотами развертки.
С появлением мониторов EGA появилась необходимость выбора различных разрешений, что обеспечивалось двумя режимами работы, которые задавались полярностью сигналов синхронизации изображения по вертикали.

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

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

Чтобы этого избежать, в видеокартах предусматривается режим предварительного опроса монитора о его вертикальной развертке, с которой и синхронизируется число кадров в секунду - всем знакомые fps.
Иными словами, при частоте вертикальной развертки 85 Гц число кадров в секунду в любых играх не будет превышать восьмидесяти пяти.

Частота вертикальной развертки монитора означает, сколько раз обновляется экран с изображением в секунду.
В случае с дисплеем на основе электронно-лучевой трубки, сколько бы кадров в секунду не позволял «выжать» из игры графический ускоритель, частота развертки физически не может быть выше установленной.

В жидкокристаллических мониторах не существует физического обновления всего экрана: здесь отдельные пиксели могут светиться или не светиться.
Однако сама технология передачи данных через видеоинтерфейс предусматривает, что на монитор от видеокарты передаются кадры с определенной скоростью.
Поэтому, с долей условности, понятие «развертки» применимо и к ЖК-дисплеем.

Откуда же появляются артефакты изображения?
В любой игре количество генерируемых кадров в секунду постоянно меняется, в зависимости от сложности картинки.
Поскольку частота развертки у монитора постоянная, рассинхронизация между fps, передаваемыми видеокартой, и скоростью обновления монитора приводит к искажению изображения, которое как бы разделяется на несколько произвольных полос: одна часть из них успевает обновиться, а другая - нет.

К примеру, монитор работает с частотой развертки 75 Гц, а видеокарта в какой-либо игре генерирует сто кадров в секунду.
Иными словами, графический ускоритель работает примерно на треть быстрее, чем система обновления монитора.
За время обновления одного экрана карта вырабатывает 1 кадр и треть следующего - в результате на дисплее прорисовывается две трети текущего кадра, а его треть заменяется третью кадра следующего.

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

Однако было бы в корне неправильным считать, что если видеокарте запретить генерировать более 75 кадров в секунду, то с выводом изображения на дисплей с частотой вертикальной развертки 75 Гц все было бы в порядке.
Дело в том, что в случае с обычной, так называемой «двойной буферизацией», кадры на монитор поступают из первичного кадрового буфера (front buffer), а сам рендеринг осуществляется во вторичном буфере (back buffer).

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

Вертикальная синхронизация как раз и решает эти проблемы: монитор опрашивается на предмет частоты развертки и копирование кадров из вторичного буфера в первичный запрещается до того момента, пока изображение не обновится.
Эта технология прекрасно работает, когда скорость генерации кадров в секунду превышает частоту вертикальной развертки.
Но как же быть, если скорость рендеринга кадров падает ниже частоты развертки?
К примеру, в некоторых сценах у нас число fps снижается со 100 до 50.

В этом случае происходит следующее.
Изображение на мониторе обновилось, первый кадр копируется в первичный буфер, а две трети второго «рендерятся» во вторичном буфере, после чего следует очередное обновление изображения на дисплее.
В это время видеокарта заканчивает обработку второго кадра, который она еще не может отправить в первичный буфер, и происходит очередное обновление изображение тем же самым кадром, который все еще хранится в первичном буфере.

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

Получается, что в случае с вертикальной синхронизацией и двойной буферизацией качественное изображение мы может получить только в том случае, когда число кадров в секунду равно одному из дискретной последовательности значений, рассчитываемых как соотношение частоты развертки к некоторому положительному целому числу.
К примеру, при частоте обновления 60 Гц число кадров в секунду должно быть равным 60 или 30 или 15 или 12 или 10 и т.д.

Если потенциальные возможности карты позволяют генерировать менее 60 и более 30 кадров в секунду, то реальная скорость рендеринга будет падать до 30 fps.

Вертикальная синхронизация (VSync : Vertical Synchronization) - это опциональный параметр поведения драйвера видеокарты. Включённая вертикальная синхронизация означает, что после отрисовки очередного кадра, во время переключения буферов (функция SwapBuffers() в ) драйвер будет ждать начала очередного обратного хода луча монитора, и только потом переключит экранные буферы.

Картинка на мониторах с электронно-лучевой трубкой отрисовывается лучом из электронов, который последовательно отрисовывает строки слева направо, потом возвращается в начало очередной строки (задержка горизонтальной синхронизации ), затем отрисовывает следующую строку и т.п. После того, как луч попал в правый нижний угол экрана, он возвращается в левый верхний угол (время, за которое он возвращается, называется задержкой вертикальной синхронизации ). (На самом деле, в цветных мониторах три луча - R, G, B, но принцип тот же.)

Зачем нужна вертикальная синхронизация? Дело в том, что время задержки вертикальной синхронизации обратного хода луча является идеальным для переключения экранных буферов. Если переключить буферы в любое другое время, то часть изображения на экране будет принадлежать старому кадру, а часть - новому. Из-за этого появятся артефакты «файтинга» между кадрами - может стать заметным неприятное дрожание, и даже при высоких анимация визуально не будет выглядеть плавной.

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

Ручное включение или отключение вертикальной синхронизации.

Включить или выключить vsync обычно можно в настройках драйвера видеокарты. Открываете Display Properties (правой кнопкой мыши кликаете по декстопу и выбираете пункт выпадающего меню Properties), выбираете последнюю закладку Settings, нажимаете кнопку Advanced, находите настройки для ожидания вертикальной синхронизации (Wait for Vertical Sync), отключаете или включаете.

Программное включение или отключение вертикальной синхронизации.

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

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

О вертикальной синхронизации

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

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

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

Но если контролер соответственно драйверу устанавливает необходимое число кадров, под установленное разрешение к чему вообще нужна вертикальная синхронизация? Всё не так просто. Довольно часты ситуации, когда кадровая частота генерации видеокарты очень высока, но мониторы ввиду своей технической ограниченности не способны правильно отобразить это число кадров , когда частота обновления монитора значительно ниже частоты генерации видеокарты. Это приводит к резким движения картинки, артефактам и полосам.

Не успевая показывать кадры из файла памяти при включенной «тройной буферизации», они быстро сменяют себя, накладывая следующие кадры. И здесь технология тройной буферизации почти неэффективна.

Технология же вертикальной синхронизации и призвана устранить эти дефекты .

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

Подключение вертикальной синхронизации

Абсолютное большинство игр имеет в себе эту функции в настройках графики непосредственно. Но случается когда такой графы нет, или же определённые дефекты наблюдаются при работе с графикой приложений, не включивших в себя настройки таких параметров.

В настройках каждой видеокарты можно включить технологию вертикальной синхронизации применительно ко всем приложениям или выборочно.

Как включить для NVidia?

Как и большинство манипуляций с картами NVidia выполняется через консоль управления NVidia. Там в графе управления параметрами 3D будет параметр синхроимпульса.

Его и следует перевести в положение, включено. Но в зависимости от видеокарты порядок будет иным.

Так в старых видеокартах параметр вертикальной синхронизации находится в главе глобальных параметров в той же графе управления параметрами 3D.

Видеокарты от ATI

Для настройки воспользуйтесь центром управления для вашей видеокарты. А именно центр управления Catalyst Control Center работает под управлением.NET Framework 1.1. Если у вас его нет, то и центр управления не запустится. Но не стоит переживать. В таком случаи есть альтернатива центру просто работа с классической панелью управления.

Для доступа к настройкам перейдите в пункт 3D, расположенный в меню слева. Там будет раздел Wait for Vertical Refresh. Изначально технология вертикальной синхронизации по умолчанию используется внутри приложения.

Переведение кнопки в левую сторону полностью отключит эту функцию, а вправо принудительно включит ее. Вариант по умолчанию здесь самый разумный , так как дает возможность непосредственно через настройки игры настраивает синхронизацию.

Подведем итоги

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

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

Выбирая включать или не включать, вертикальную синхронизацию пользователь делает выбор, между качеством и производительностью. Включив он получает более плавную картинку, но меньшее число кадров в секунду.

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

Эта таинственная графа в параметрах многих игр оказалась не так проста, как казалась. И сейчас выбор применять ее или нет, остается лишь за вами и вашими целями в играх.

Развенчиваем мифы о производительности видеокарт | Включать или не включать V-Sync – вот в чём вопрос

При оценке видеокарт первым параметром, который хочется сравнить, является быстродействие. Насколько самые современные и самые быстрые решения обгоняют предыдущие продукты? Всемирная сеть пестрит данными тестирований, проведёнными тысячами онлайн-ресурсов, которые пытаются ответить на этот вопрос.

Итак, давайте начнём с изучения быстродействия и факторов, которые стоит учесть, если вы действительно желаете узнать, насколько быстра конкретная видеокарта.

Миф: частота кадров – это индикатор уровня графической производительности

Начнём с фактора, который нашим читателям, скорее всего, уже известен, но многие по-прежнему имеют неправильное представление о нём. Здравый смысл подсказывает, что пригодной для игры считается частота кадров 30 FPS и выше. Некоторые люди считают, что и меньшие значения сойдут для нормального геймплея, другие настаивают, что даже 30 FPS – это слишком мало.

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

Всё просто: качество игрового опыта важнее, чем высокий показатель средней частоты кадров. Стабильность подачи кадров – ещё один крайне важный фактор. Представьте себе поездку по шоссе с постоянной скоростью 100 км/ч и ту же поездку со средней скоростью 100 км/ч, при которой много времени уходит на переключение передач и торможение. В назначенное место вы приедете в одно время, но вот впечатления от поездки будут сильно различаться.

Так что давайте на время отложим вопрос "Какой уровень производительности будет достаточным?" в сторону. Мы вернёмся к нему после того, как обсудим другие важные темы.

Представляем вертикальную синхронизацию (V-sync)

Мифы: Необязательно иметь частоту кадров выше 30 FPS, поскольку человеческий глаз не видит разницу. Значения выше 60 FPS на мониторе с частотой обновления 60 Гц необязательны, поскольку картинка уже отображается 60 раз в секунду. V-sync всегда нужно включать. V-sync всегда нужно выключать.

Как на самом деле отображаются визуализированные кадры? Почти все ЖК-мониторы работают таким образом, что изображение на экране обновляется фиксированное количество раз в секунду, как правило, 60. Хотя есть модели способные обновлять картинку на частоте 120 и 144 Гц. Данный механизм называется частота обновления и измеряется в герцах.

Расхождение между меняющейся частотой кадров видеокарты и фиксированной частотой обновления монитора может стать проблемой. Когда частота кадров выше частоты обновления, за одно сканирование могут отображаться несколько кадров, что приводит к артефакту под названием "разрыв экрана". На изображении выше цветные полосы подчёркивают отдельные кадры из видеокарты, которые по готовности вывелись на экран. Это может сильно раздражать, особенно в активных шутерах от первого лица.

На изображении ниже показан ещё один артефакт, часто появляющийся на экране, но трудно фиксируемый. Поскольку данный артефакт связан с работой дисплея, на скриншотах его не видно, а вот невооружённым глазом он хорошо заметен. Чтобы его поймать, нужна высокоскоростная видеокамера. Утилита FCAT, которую мы использовали для захвата кадра в Battlefield 4 , показывает разрыв, но не эффект гоустинга.

Разрыв экрана очевиден на обоих изображениях из BioShock Infinite. Однако на панели Sharp с частотой обновления 60 Гц он проявляется гораздо явнее, чем на мониторе Asus с частотой обновления 120 Гц, поскольку частота обновления экрана VG236HE вдвое выше. Данный артефакт является самым явным свидетельством того, что в игре не включена вертикальная синхронизация, или V-sync.

Второй проблемой на изображении BioShock является эффект гоустинга, который хорошо заметен в нижней части левого изображения. Этот артефакт связан с задержкой вывода изображения на экран. Если коротко: отдельные пиксели недостаточно быстро меняют цвет, и так появляется данный тип послесвечения. Этот эффект в игре проявляется гораздо ярче, чем показано на изображении. Время отклика от серого к серому у панели Sharp слева составляет 8 мс, и при быстрых движениях изображение кажется размытым.

Вернёмся к разрывам. Вышеупомянутая вертикальная синхронизация – это довольно старое решение проблемы. Оно заключается в синхронизации частоты, на которой видеокарта подаёт кадры, с частотой обновления монитора. Поскольку несколько кадров одновременно больше не появляется, разрывов тоже не наблюдается. Но если на максимальных графических настройках вашей любимой игры частота кадров упадёт ниже 60 FPS (или ниже значения частоты обновления вашей панели), то эффективная частота кадров будет скакать между кратными значениями частоты обновления, как показано ниже. Это ещё один артефакт под названием притормаживание.

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

Так включать или не включать V-sync?

Предположим, вы принадлежите к большинству и используете обычный дисплей с частотой обновления 60 Гц:

  • Если вы играете в шутеры от первого лица и/или у вас наблюдаются проблемы с воспринимаемой задержкой ввода, и/или ваша система не может постоянно поддерживать минимум 60 FPS в игре, и/или вы тестируете видеокарту, то вертикальную синхронизацию нужно выключать.
  • Если ни один из вышеперечисленных факторов вас не касается, и вы наблюдаете заметные разрывы экрана, то вертикальную синхронизацию нужно включить.
  • Если вы не уверены, лучше оставить V-sync выключенной.
Если вы используете игровой дисплей с частотой обновления 120/144 Гц (если у вас есть один из таких дисплеев, вполне вероятно, что вы купили его как раз из-за высокой частоты обновления):
  • Включать вертикальную синхронизацию следует только в старых играх, в которых геймплей проходит на частоте кадров выше 120 FPS, и вы постоянно сталкиваетесь с разрывами экрана.

Обратите внимание, что в некоторых случаях эффект снижения частоты кадров из-за V-sync не проявляется. Такие приложения поддерживают тройную буферизацию, хотя данное решение не очень распространено. Также в некоторых играх (например, The Elder Scrolls V: Skyrim), V-sync активирована по умолчанию. Принудительное отключение посредством модификации некоторых файлов приводит к проблемам с игровым движком. В таких случаях лучше оставить вертикальную синхронизацию включённой.

G-Sync, FreeSync и будущее

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

Однако с ростом различий в задержке ввода их влияние на геймплей растёт. Представьте себе профессионального геймера, чью реакцию можно сравнить с реакцией лучших пилотов, то есть 150 мс. Задержка ввода на 50 мс означает, что человек будет реагировать на 30% медленнее (это четыре кадра на дисплее с частой обновления 60 Гц) своего оппонента. На профессиональном уровне это весьма заметная разница.

Для простых смертных (включая наших редакторов, показавших результат 200 мс в визуальном тесте) и для тех, кому больше нравится играть в Civilization V, а не в Counter Strike 1.6, всё немного иначе. Вполне вероятно, вы вообще можете игнорировать задержку ввода.

Вот некоторые факторы, которые могут ухудшить показатель задержки ввода при прочих равных условиях:

  • Игра на HDTV (особенно если отключён режим игры) или игра на ЖК-дисплее со средствами обработки видео, которые нельзя отключить. Упорядоченный список показателей задержек ввода различных дисплеев можно найти в базе данных DisplayLag .
  • Игра на ЖК-дисплеях, использующих панели IPS с более высоким временем отклика (обычно 5-7 мс G2G), вместо панелей TN+Film (1-2 мс GTG) или ЭЛТ-дисплеев (самые быстрые из доступных).
  • Игра на дисплеях с низкой частотой обновления. Новые игровые дисплеи поддерживают 120 или 144 Гц.
  • Игра при низкой частоте кадров (30 FPS – это один кадр каждые 33 мс; 144 FPS – один кадр каждые 7 мс).
  • Использование USB-мышки с низкой частотой опроса. Время цикла на частоте 125 Гц составляет около 6 мс, что в среднем даёт задержку ввода около 3 мс. В то же время, частота опроса игровой мыши может доходить до 1000 Гц, при этом задержка ввода в среднем составит 0,5 мс.
  • Использование клавиатуры низкого качества (как правило, задержка ввода клавиатуры составляет 16 мс, но в дешёвых моделях может быть и выше).
  • Активация V-sync, особенно в сочетании с тройной буферизацией (существует миф, что Direct3D не включает тройную буферизацию. На самом деле, Direct3D учитывает опцию нескольких фоновых буферов, но немногие игры её используют). Если вы технически подкованы, можете ознакомиться с рецензией Microsoft (англ.) по этому поводу.
  • Игра с высоким временем предварительной визуализации. По умолчанию очередь в Direct3D составляет три кадра или 48 мс при частоте 60 Гц. Это значение может увеличиваться до 20 кадров для большей "плавности" и понижаться до одного кадра для повышения отзывчивости за счёт повышения колебаний времени кадра и, в некоторых случаях, общей потери в показателях FPS. Нулевого параметра не существует. Ноль просто сбрасывает настройки на исходное значение, равное трём кадрам. Если вы технически подкованы, можете ознакомиться с рецензией Microsoft (англ.) по этому поводу.
  • Высокая задержка интернет-соединения. Хотя это не совсем относится к определению задержки ввода, оно всё же заметно на неё влияет.

Факторы, которые не влияют на задержку ввода:

  • Использование клавиатуры с разъёмом PS/2 или USB (смотрите дополнительную страницу в нашем обзоре "Five Mechanical-Switch Keyboards: Only The Best For Your Hands" (англ.)).
  • Использование проводного или беспроводного сетевого соединения (проверьте пинг вашего маршрутизатора, если не верите; пинг не должен превышать 1 мс).
  • Использование SLI или CrossFire. Более длинные очереди визуализации, необходимые для реализации этих технологий, компенсируются более высокой пропускной способностью.

Вывод: задержка ввода важна только для "быстрых" игр и действительно играет значимую роль на профессиональном уровне.

На задержку ввода влияют не только технология дисплея и видеокарта. Железо, настройки железа, дисплей, настройки дисплея и настройки приложения – всё это вносит свою лепту в данный показатель.

Развенчиваем мифы о производительности видеокарт | Мифы о видеопамяти

Видеопамять отвечает за разрешение и настройки качества, но не увеличивает скорость

Производители часто используют видеопамять в качестве маркетингового инструмента. Поскольку геймеров убедили, что больше – значит лучше, мы часто видим видеокарты начального уровня, объём оперативной памяти у которых значительно больше, чем нужно на самом деле. Но энтузиасты знают, что самое важное – это баланс, причём во всех комплектующих ПК.

В широком смысле видеопамять относится к дискретному GPU и задачам, которые он обрабатывает, независимо от системной памяти, установленной в материнскую плату. На видеокартах используются несколько технологий оперативной памяти, самые популярные из которых – это DDR3 и GDDR5 SDRAM.

Миф: видеокарты с 2 Гбайт памяти быстрее моделей с 1 Гбайт

Не удивительно, что производители оснащают недорогие графические ускорители большим объёмом памяти (и получают более высокую прибыль), поскольку многие люди верят, что больший объём памяти прибавит скорости. Давайте разберёмся в этом вопросе. Объём видеопамяти видеокарты не влияет на её быстродействие, если вы не выбираете игровые настройки, которые используют весь доступный объём памяти.

Но для чего тогда нужна дополнительная видеопамять? Чтобы ответить на этот вопрос, необходимо выяснить для чего она используется. Список упрощённый, но полезный:

  • Прорисовка текстур.
  • Поддержка буфера кадров.
  • Поддержка буфера глубины ("Z Buffer").
  • Поддержка других ресурсов, которые требуются для визуализации кадра (карты теней и др.).

Конечно, размер текстур, которые загружаются в память, зависит от игры и настроек детализации. Например, пакет текстур высокого разрешения в Skyrim включает 3 Гбайт текстур. Большинство игр динамически загружают и выгружают текстуры при необходимости, однако не все текстуры должны находиться в видеопамяти. А вот текстуры, которые должны визуализироваться в конкретной сцене, должны быть в памяти.

Фрейм-буфер используется для хранения изображения в том виде, в котором оно визуализируется перед тем или во время того, как отправляется на экран. Таким образом, необходимый объём видеопамяти зависит от выходного разрешения (изображение в разрешении 1920x1080 пикселей по 32 бита на пиксель "весит" около 8,3 Мбайт, а 4K-изображение в разрешении 3840x2160 пикселей по 32 бита на пиксель – уже около 33,2 Мбайт) и количества буферов (минимум два, реже три и больше).

Особые режимы сглаживания (FSAA, MSAA, CSAA, CFAA, но не FXAA или MLAA) эффективно повышают количество пикселей, которые должны быть визуализированы, и пропорционально увеличивают общий объём требуемой видеопамяти. Сглаживание на базе рендеринга оказывает особенно больше влияние на потребление памяти, которое возрастает с ростом размера выборки (2x, 4x, 8x и т.д.). Дополнительные буферы также занимают видеопамять.

Таким образом, видеокарта с большим объёмом графической памяти позволяет:

  1. Играть на более высоких разрешениях.
  2. Играть на более высоких параметрах качества текстур.
  3. Играть при более высоких уровнях сглаживания.

Теперь разрушаем миф.

Миф: вам нужно 1, 2, 3, 4 или 6 Гбайт видеопамяти для игр на (вставьте родное разрешение вашего дисплея).

Самый важный фактор, который нужно учесть при выборе объёма оперативной памяти, - это разрешение, на котором вы будете играть. Естественно, более высокое разрешение требует больше памяти. Вторым важным фактором является использование упомянутых выше технологий сглаживания. Другие графические параметры имеют меньшее значение в отношении объёма требуемой памяти.

Прежде чем мы перейдём к самим измерениям, позвольте вас предупредить. Есть особый тип видеокарт класса high-end с двумя GPU (AMD Radeon HD 6990 и Radeon HD 7990 , а также Nvidia GeForce GTX 590 и GeForce GTX 690 ), которые оснащаются определённым количеством памяти. Но в результате использования конфигурации из двух GPU данные, по сути, дублируются, разделяя эффективный объём памяти надвое. Например, GeForce GTX 690 с 4 Гбайт ведёт себя, как две карты по 2 Гбайт в SLI. Более того, когда вы добавляет вторую карту в конфигурацию CrossFire или SLI, видеопамять массива не удваивается. Каждая карта оставляет за собой только свой объём памяти.

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

Вертикальная синхронизация может быть откорректирована в настройках драйвера видеокарты от любого производителя (Intel, AMD, NVidia). Если в первых версиях данная возможность была опциональной, то есть для ее активации требовалось использование вспомогательных программ или внесение изменений в реестр операционной системы, то впоследствии она была вынесена отдельным пунктом.

Доступная корректировка

В системах от «Майкрософт» доступ к данной настройке очень прост и, как правило, стандартен. Необходимо нажать правую кнопку мышки на любом свободном участке рабочего стола и выбрать «Разрешение экрана» (Win 7-8). Если в отобразившемся окошке нажать ссылку «Дополнительные параметры», то в группе верхних вкладок обязательно будет присутствовать панель управления видеоадаптером. Выбрав ее, пользователь увидит меню настроек драйвера, в одном из пунктов которого присутствует «вертикальная синхронизация». Точное расположение и название указать нельзя, так как это зависит от разработчика, но ошибиться, тем не менее, невозможно. Так, это может быть «Vsync», «Синх. по вертикали», «Синхронизация» и пр. Хотя обычно параметр может принимать одно из двух значений, иногда встречаются решения с тремя. Например, вертикальная синхронизация ATI допускает не только варианты «Разрешить/Запретить», но и режим «Авто».

В этом случае выбор предоставляется драйверу и работающему приложению. Однако смысл остается тем же самым, разве что управление предоставляется программе, а не человеку.

Производительности много не бывает

Любители виртуальных баталий знают, что правильно выставленная вертикальная синхронизация в играх во многих случаях может значительно поднять частоту кадров, выводимых видеоадаптером на экран монитора. Фактически это означает, что иногда таким способом удается отсрочить необходимость покупки новой видеокарты (хотя, конечно, чудес ждать не стоит). Именно поэтому мы рекомендуем выставить такой режим, при котором вертикальная синхронизация запрещена. Такое решение объясняется просто: ценители идеальной картинки вряд ли будут бороться за каждый лишний «fps» и читать о синхронизации, так как в их компьютерах установлены мощные видеоадаптеры, ну а владельцам «слабых» видеокарт более интересен сам игровой процесс, а не «тормозящие» красоты графики. Страшные полосы на изображениях, которыми любят пугать различные информационные ресурсы, в действительности практически незаметны.

Тайна, которой нет

Несмотря на то, что повышение производительности «из воздуха» на первый взгляд кажется чем-то невероятным, на самом деле все очевидно. В выводе видеосигнала на экран принимают участие два ключевых компонента: видеокарта и электроника монитора.

Последний, как известно, кроме прочего, характеризуется частотой кадровой развертки (у бюджетных ЖК чаще всего это 60 Гц). Она указывает, как много полных «экранов» может быть отображено за одну секунду. Видеоадаптер также передает на монитор не непрерывный поток данных, а последовательность сформированных кадров. Нетрудно понять, что пока электроника устройства отображения в состоянии вывести на экран все переданные кадры, проблем не возникает.

Некоторые нюансы

Если же вычислительная мощь видеопроцессора настолько велика, что количество кадров превышает возможности монитора, то начинаются срывы синхронизации (на экран могут выводиться картинки, сформированные из двух ближайших кадров). Это проявляется в единичных горизонтальных полосах на движущемся изображении: картинка словно склеена из двух частей. При этом об идеально «гладком» кадре можно забыть. Для решения этого вопроса можно приобрести монитор, частота кадровой развертки которого будет превышать 100 Гц (современные системы), или включить синхронизацию в драйвере. При этом видеоадаптер начнет контролировать кадры экрана: подача на вывод каждого последующего будет происходить лишь по окончании отрисовки предыдущего. Недостаток очевиден: видеокарта будет простаивать, ожидая завершения работы монитора. Собственно, название параметра в данном случае говорит само за себя: «синхронизация» от «синхронно», когда две частоты равны.