Технология NVIDIA G-Sync: теория и практика

Теория и практика r.cgi?k_id=122257&k_pg=909&k_bk=15159&al

logo.jpg Содержание Введение Есть вещи, писать о которых не просто трудно, а очень трудно. Которые просто нужно один раз увидеть, чем сто раз услышать о них или прочитать в интернете. К примеру, невозможно описать какие-то природные чудеса, вроде величественного Гранд-Каньона или заснеженных Алтайских гор. Можно сто раз смотреть на красивые картинки с их изображением и любоваться видеороликами, но живых впечатлений всё это не заменит.

Тема плавности вывода кадров на монитор с применением технологии NVIDIA G-Sync тоже относится к таким темам — по текстовым описаниям изменения не кажутся такими уж существенными, но в первые же минуты за 3D-игрой на системе с видеокартой NVIDIA GeForce, подключенной к G-Sync-монитору, становится понятно, насколько большим является качественный скачок. И хотя с момента анонса технологии прошло уже больше года, технология не теряет актуальности, конкурентов у неё до сих пор нет (среди вышедших на рынок решений), а соответствующие мониторы продолжают выпускаться.

Компания NVIDIA уже довольно давно занимается вопросом улучшения восприятия пользователями графических процессоров GeForce видеоряда в современных играх путём повышением плавности рендеринга. Можно вспомнить технологию адаптивной синхронизации Adaptive V-Sync, которая является гибридом, сочетающим режимы с включенной и отключенной вертикальной синхронизацией (V-Sync On и V-Sync Off, соответственно). В случае, когда GPU обеспечивает рендеринг с частотой кадров менее частоты обновления монитора, синхронизация отключается, а для FPS, превышающего частоту обновления — включается.

Проблемы плавности при помощи адаптивной синхронизации решились не все, но всё же это был важный шаг в правильном направлении. Но почему вообще понадобилось делать какие-то специальные режимы синхронизации и даже выпускать программно-аппаратные решения? Что не так в технологиях, существующих уже десятки лет? Сегодня мы расскажем вам о том, как технология NVIDIA G-Sync помогает устранить все известные артефакты вывода изображения на экран, вроде разрывов изображения, неплавности видеоряда и увеличения задержек.

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

gsync.jpg На сегодняшний день, большинство ПК-игроков используют мониторы с частотой обновления 60 Гц — типичные ЖК-экраны, самые популярные сейчас. Соответственно, и при включенной синхронизации (V-Sync On), и при выключенной — всегда наблюдаются какие-либо недостатки, связанные с базовыми проблемами древних технологий, о которых мы поговорим далее: высокие задержки и рывки FPS при включенном V-Sync и неприятные разрывы изображения при выключенном.

А так как задержки и неплавность частоты кадров сильнее мешают игре и раздражают, редко кто из игроков включает синхронизацию вовсе. И даже некоторые модели мониторов с частотой обновления 120 и 144 Гц, появившиеся на рынке, не могут помочь устранить проблемы полностью, они их просто делают несколько менее заметными, обновляя содержимое экрана вдвое чаще, но все те же артефакты присутствуют: лаги и отсутствие той самой комфортной плавности.

И так как мониторы с G-Sync в паре с соответствующей видеокартой NVIDIA GeForce способны обеспечить не только высокую частоту обновления, но и устранить все эти недостатки, то приобретение подобных решений можно считать даже более важным, чем даже апгрейд на более мощный GPU. Но давайте разберёмся сначала с тем, почему вообще понадобилось делать что-то отличающееся от давно известных решений — в чём тут проблема?

Проблемы существующих методов видеовывода Технологии вывода изображения на экран с фиксированной частотой обновления появились ещё с тех времён, когда использовались мониторы на электронно-лучевых трубках (ЭЛТ). Большинство читателей должны их помнить — пузатенькие такие, как и древние телевизоры. Эти технологии изначально разрабатывались для показа телевизионного изображения с фиксированной частотой кадров, но в случае устройств для вывода динамически рассчитываемой на ПК 3D-картинки это решение вызывает большие проблемы, не решённые до сих пор.

Даже самые современные ЖК-мониторы имеют фиксированную частоту обновления изображения на экране, хотя технологически ничто не мешает изменять картинку на них в любое время, с любой частотой (в разумных пределах, разумеется). Но ПК-игроки с давних времён ЭЛТ-мониторов вынуждены мириться с явно неидеальным решением проблемы синхронизации частоты кадров 3D-рендеринга и частоты обновления монитора. Вариантов вывода изображения до сих пор было совсем немного — два, и оба они имеют недостатки.

Корень всех проблем заключается в том, что при фиксированной частоте обновления картинки на мониторе, видеокарта отрисовывает каждый кадр за разное время — так получается из-за постоянно изменяющейся сложности сцены и нагрузки на графический процессор. И время рендеринга каждого кадра непостоянно, оно меняется каждый кадр. Немудрено, что при попытке вывести ряд кадров на монитор возникают проблемы синхронизации, ведь некоторые из них требуют куда больше времени на отрисовку, чем другие. В итоге, получается разное время подготовки каждого кадра: то 10 мс, то 25 мс, например. А существующие до появления G-Sync мониторы могли выводить кадры только через определённый промежуток времени — не раньше, не позже.

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

Естественно, что в отличие от консолей с их предсказуемым временем рендеринга кадров, ПК-игроки до сих пор серьёзно ограничены в возможности достижения плавного игрового ряда без ощутимых просадок и лагов. В идеальном (читай — невозможном в реальности) случае, обновление изображения на мониторе должно осуществляться строго после того, как графическим процессором рассчитан и подготовлен очередной кадр:

slide1.png Как видите, в этом гипотетическом примере GPU всегда успевает отрисовать кадр до того времени, как его нужно передать на монитор — время кадра всегда чуть меньше времени между обновлениями информации на дисплее, а в перерывах графический процессор немного отдыхает. Но в реальности то ведь всё совсем по-другому — время отрисовки кадров сильно отличается. Представьте, если GPU не успевает отрендерить кадр за отведённое время — тогда кадр необходимо или выводить позже, пропустив одно обновление изображения на мониторе (вертикальная синхронизация включена — V-Sync On), или выводить кадры по частям при отключенной синхронизации, и тогда на мониторе одновременно будут присутствовать куски из нескольких соседних кадров.

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

Эта проблема существует уже много лет и явно мешает комфорту при просмотре результата 3D-рендеринга, но до некоторых пор никто так и не удосуживался её решить. А решение то в теории довольно простое — нужно просто выводить информацию на экран строго тогда, когда GPU заканчивает работу над следующим кадром. Но давайте сначала ещё подробнее разберём на примерах, как именно работают существующие технологии вывода изображения, и какое решение предлагает нам компания NVIDIA в своей технологии G-Sync.

Недостатки вывода при отключенной синхронизации Как мы уже упоминали, абсолютное большинство игроков предпочитает держать синхронизацию выключенной (V-Sync Off), чтобы получить отображение отрисованных графическим процессором кадров на мониторе максимально оперативно и с минимальной задержкой между действием игрока (нажатия клавиш, команды от мыши) и их отображением. Для серьёзных игроков это необходимо для побед, да и для обычных в таком случае ощущения будут приятнее. Вот так работа с отключенным V-Sync выглядит схематично:

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

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

С отключенной синхронизацией кадры передаются на монитор абсолютно без оглядки на частоту и время его обновления, поэтому никогда не совпадают с частотой обновления монитора. Иными словами, с отключенным V-Sync на мониторах без поддержки G-Sync всегда будут наблюдаться такие разрывы картинки.

Речь не только о том, что игроку неприятно наблюдать дёргающиеся по всему экрану полосы, но и о том, что одновременная отрисовка частей различных кадров может дезинформировать мозг, что особенно заметно при динамичных объектах в кадре — игрок видит сдвинутые относительно друг друга части объектов. Мириться с этим приходится лишь потому, что отключение V-Sync обеспечивает минимальные задержки вывода на данный момент, но далеко не идеальное качество динамического изображения, как вы можете убедиться на следующих примерах (по клику доступны кадры в полном разрешении):

tearing1_small.jpgtearing2_small.jpg

На примерах выше, снятых при помощи программно-аппаратного комплекса FCAT, вы можете убедиться, что реальное изображение на экране может быть составлено из кусков нескольких соседних кадров — причём иногда и неравномерно, когда от одного из кадров берётся узкая полоска, а соседние занимают оставшуюся (заметно большую) часть экрана.

Ещё нагляднее проблемы с разрывом изображения заметны в динамике (если ваша система и/или браузер не поддерживает проигрывание роликов MP4/H.264 в разрешении 1920×1080 пикселей с частотой обновления 60 FPS, то вам придётся скачать их и просмотреть локально, используя медиаплеер с соответствующими возможностями):

Тег video не поддерживается, скачайте видео.

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

slide4.png В этом примере первый кадр (Draw 1) отрисовывается графическим процессором в экранный буфер быстрее, чем его время обновления в 16,7 мс — и раньше, чем изображение будет передано монитору (Scan 0/1). GPU тут же начинает работу над следующим кадром (Draw 2), который и разрывает картинку на мониторе, содержащую ещё половину предыдущего кадра.

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

Плюсы и минусы вертикальной синхронизации При включении традиционной вертикальной синхронизации (V-Sync On), информация на мониторе обновляется только тогда, когда работа над кадром полностью закончена графическим процессором, что исключает разрывы в изображении, ведь кадры выводятся на экран исключительно целиком. Но, так как монитор обновляет содержимое только в определённые промежутки времени (в зависимости от характеристик устройства вывода), то эта привязка приносит уже другие проблемы.

Большинство современных ЖК-мониторов обновляют информацию с частотой 60 Гц, то есть 60 раз в секунду — примерно каждые 16 миллисекунд. И с включенной синхронизацией время вывода изображения жёстко привязано к частоте обновления монитора. Но, как мы знаем, частота рендеринга кадров на GPU всегда переменная, и время отрисовки каждого кадра отличается в зависимости от постоянно изменяющейся сложности 3D-сцены и настроек качества.

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

Хотя всё это происходит достаточно быстро, но увеличение задержки визуально легко заметно, и совсем не только профессиональными игроками. А так как время рендеринга кадров всегда переменное, то включение привязки к частоте обновления монитора вызывает рывки при выводе динамического изображения, ведь кадры выводятся то быстро (равно частоте обновления монитора), то вдвое-втрое-вчетверо медленнее. Рассмотрим схематичный пример такой работы:

slide2.png На иллюстрации показано, как кадры выводятся на монитор при включенной вертикальной синхронизации (V-Sync On). Первый кадр (Draw 1) отрисовывается графическим процессором быстрее, чем 16,7 мс, поэтому GPU не переходит к работе над отрисовкой следующего кадра, и не разрывает изображение, как в случае V-Sync Off, а ожидает полного вывода первого кадра на монитор. И уже только после этого начинает отрисовывать следующий кадр (Draw 2).

А вот работа над вторым кадром (Draw 2) занимает больше времени, чем 16,7 мс, поэтому после их истечения на экран выводится визуальная информация из предыдущего кадра, и он показывается на экране ещё 16,7 мс. И даже после того, как GPU заканчивает работу над следующим кадром, он не выводится на экран, так как монитор имеет фиксированную частоту обновления. В целом, приходится ждать 33,3 мс для вывода второго кадра, и всё это время добавляется к задержке между действием игрока и окончанием вывода кадра на монитор.

К проблеме временного лага прибавляется ещё и разрыв в плавности видеоряда, заметный по дёрганности 3D-анимации. Очень наглядно проблема показана в коротком видеоролике:

Тег video не поддерживается, скачайте видео.

А ведь даже мощнейшие графические процессоры в требовательных современных играх не всегда могут обеспечить достаточно высокую частоту кадров, превышающую типичную частоту обновления мониторов в 60 Гц. И, соответственно, не дадут возможности комфортной игры с включенной синхронизацией и отсутствием проблем вроде разрыва картинки. Особенно если речь о таких играх, как сетевая игра Battlefield 4, весьма требовательные Far Cry 4 и Assassin«s Creed Unity в высоких разрешениях и максимальных игровых настройках.

То есть, выбор у современного игрока невелик — или получай отсутствие плавности и увеличенные задержки, или довольствуйся неидеальным качеством картинки с разорванными кусками кадров. Конечно, в реальности всё выглядит далеко не так уж плохо, ведь как-то же мы играли всё это время, правда? Но во времена, когда стараются достичь идеала и в качестве и в комфорте, хочется большего. Тем более, что у ЖК-дисплеев есть принципиальная технологическая возможность выводить кадры тогда, когда на это укажет графический процессор. Дело за малым — связать GPU и монитор, и такое решение уже есть — технология NVIDIA G-Sync.

Технология G-Sync — решение проблем в исполнении NVIDIA Итак, большинство современных игр в варианте с выключенной синхронизацией вызывают разрывы картинки, а с включенной — неплавную смену кадров и увеличенные задержки. Даже при высокой частоте обновления традиционные мониторы не позволяют избавиться от этих проблем. Вероятно, выбор между двумя далеко не идеальными вариантами вывода кадров в 3D-приложениях за много лет настолько надоел работникам компании NVIDIA, что они решили избавиться от проблем, дав игрокам принципиально новый подход к обновлению информации на дисплее.

Разница между технологией G-Sync и существующими методами вывода изображения на дисплеи заключается в том, что время и частота вывода кадров в случае варианта NVIDIA определяется графическим процессором GeForce, и она является динамически изменяемой, а не фиксированной, как это было ранее. Иными словами, в этом случае полное управление выводом кадров берёт на себя GPU — как только он заканчивает работу над очередным кадром, он выводится на монитор, без задержек и разрывов изображения.

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

Естественно, G-Sync работает не волшебным образом, и для работы технологии со стороны монитора требуется добавление специальной аппаратной логики в виде небольшой платы, которую поставляет NVIDIA.

gsync_pcb.jpg Компания работает с производителями мониторов, чтобы те включили платы G-Sync в их модели игровых дисплеев. Для некоторых моделей есть даже вариант апгрейда руками самого пользователя, но такой вариант дороже, да и не имеет смысла, ведь проще сразу купить G-Sync-монитор. От ПК же достаточно присутствия в его конфигурации любой из современных видеокарт NVIDIA GeForce, ну и установленного G-Sync-оптимизированного видеодрайвера — подойдёт любая из свежих версий.

При задействовании технологии NVIDIA G-Sync, после окончания обработки очередного кадра 3D-сцены, графический процессор GeForce посылает специальный сигнал в плату контроллера G-Sync, встроенную в монитор, а та указывает монитору, когда нужно обновить изображение на экране. Это позволяет достичь просто идеальной плавности и отзывчивости при игре на ПК — вы можете убедиться в этом, просмотрев коротенький видеоролик (обязательно при 60 кадрах в секунду!):

Тег video не поддерживается, скачайте видео.

Давайте посмотрим, как выглядит работа конфигурации с включенной технологией G-Sync, по нашей схеме:

slide5.png Как видите, всё очень просто. Включение G-Sync привязывает частоту обновления монитора к окончанию рендеринга каждого кадра на графическом процессоре. GPU полностью контролирует работу: как только он заканчивает просчёт кадра, изображение тут же выводится на G-Sync-совместимый монитор, и в итоге получается не фиксированная частота обновления дисплея, а изменяемая — ровно как частота кадров GPU. Это устраняет проблемы с разрывом изображения (ведь оно всегда содержит информацию из одного кадра), минимизирует рывки в частоте кадров (монитор не ждёт больше времени, чем кадр физически обрабатывается на GPU) и снижает задержки вывода относительно метода с включенной вертикальной синхронизацией.

Надо сказать, что подобного решения игрокам явно не хватало, новый метод синхронизации GPU и монитора NVIDIA G-Sync реально очень сильно сказывается на комфорте игры на ПК — появляется та самая почти идеальная плавность, которой не было до сих пор — в наше то время сверхмощных видеокарт! С момента анонса технологии G-Sync, старые методы вмиг стали анахронизмом и апгрейд до G-Sync-монитора, способного на изменяемую частоту обновления до 144 Гц, кажется очень привлекательным вариантом, позволяющим наконец-то избавиться от проблем, лагов и артефактов.

Есть ли у G-Sync недостатки? Конечно, как и у любой технологии. Например, у G-Sync есть неприятное ограничение, которое заключается в том, что она обеспечивает плавный вывод кадров на экран при частоте от 30 FPS. А выбранная частота обновления для монитора в режиме G-Sync устанавливает верхнюю планку скорости обновления содержимого экрана. То есть, при выставленной частоте обновления 60 Гц максимальная плавность будет обеспечиваться на частоте 30–60 FPS, а при 144 Гц — от 30 до 144 FPS, но не менее нижней границы. И при переменной частоте (к примеру, от 20 до 40 FPS), результат уже не будет идеальным, хотя и заметно лучше традиционного V-Sync.

Но самым главным недостатком G-Sync является то, что это — собственная технология компании NVIDIA, к которой нет доступа у конкурентов. Поэтому, в начале уходящего года компания AMD анонсировала аналогичную технологию FreeSync — также заключающуюся в динамическом изменении кадровой частоты монитора в соответствии с подготовкой кадров от GPU. Важное отличие в том, что разработка AMD открытая и не требует дополнительных аппаратных решений в виде специализированных мониторов, так как FreeSync преобразовалась в Adaptive-Sync, ставшей опциональной частью стандарта DisplayPort 1.2a от небезызвестной организации VESA (Video Electronics Standards Association). Получается, что компания AMD умело воспользуется разработанной конкурентом темой себе во благо, так как без появления и популяризации G-Sync никакого FreeSync бы у них не было, как нам думается.

Интересно, что технология Adaptive-Sync является также частью стандарта VESA embedded DisplayPort (eDP), и уже применяется во многих компонентах для дисплеев, в которых используется eDP для передачи сигнала. Ещё одно отличие от G-Sync — участники VESA могут использовать Adaptive-Sync без необходимости какой-либо оплаты. Впрочем, весьма вероятно, что NVIDIA в будущем также будет поддерживать и Adaptive-Sync, как часть стандарта DisplayPort 1.2a, ведь такая поддержка не потребует от них особых усилий. Но и от G-Sync компания не откажется, так как считает приоритетными собственные решения.

Первые мониторы с поддержкой Adaptive-Sync должны появиться в первом квартале 2015 года, они будут иметь не только порты DisplayPort 1.2a, но и специальную поддержку Adaptive-Sync (не все мониторы с поддержкой DisplayPort 1.2a смогут этим похвастать). Так, компания Samsung в марте 2015 года планирует вывести на рынок линейки мониторов Samsung UD590 (23,6 и 28 дюймов) и UE850 (23,6, 27 и 31,5 дюймов) с поддержкой разрешения UltraHD и технологии Adaptive-Sync. Компания AMD уверяет, что мониторы с поддержкой этой технологии будут до $100 дешевле аналогичных устройств с поддержкой G-Sync, но их сложно сравнивать, так как все мониторы разные и выходят в разное время. К тому же, на рынке уже есть и не такие уж дорогие G-Sync-модели.

Наглядная разница и субъективные впечатления Выше мы описали теорию, а теперь пришло время показать всё наглядно и описать свои ощущения. Мы протестировали технологию NVIDIA G-Sync на практике в нескольких 3D-приложениях, используя видеокарту Inno3D iChill GeForce GTX 780 HerculeZ X3 Ultra и монитор Asus PG278Q, поддерживающий технологию G-Sync. На рынке продаётся несколько моделей мониторов с поддержкой G-Sync от разных производителей: Asus, Acer, BenQ, AOC и других, а для монитора модели Asus VG248QE можно даже купить набор для модернизации его для поддержки G-Sync собственными силами.

Самой младшей моделью видеокарты для использования технологии G-Sync является GeForce GTX 650 Ti, с исключительно важным требованием разъёма DisplayPort на борту. Из других системных требований отметим операционную систему как минимум Microsoft Windows 7, применение хорошего кабеля DisplayPort 1.2, а также рекомендуется использование качественной мыши с высокой чувствительностью и частотой опроса. Технология G-Sync работает со всеми полноэкранными 3D-приложениями, использующими графические API OpenGL и Direct3D при запуске в операционных системах Windows 7 и 8.1.

Для работы подойдёт любой современный драйвер, который можно скачать с сайта NVIDIA — G-Sync уже более года поддерживается всеми драйверами компании. При наличии всех требуемых компонентов, потребуется лишь включить G-Sync в драйверах, если это ещё не сделано, и технология будет работать во всех полноэкранных приложениях — и только в них, исходя из самого принципа работы технологии.

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

driver1_sm.png …а также — выбрать соответствующий пункт на странице «Управлении параметрами 3D» в параметре «Вертикальный синхроимпульс» глобальных параметров 3D. Там же можно и отключить использование технологии G-Sync в тестовых целях или при появлении каких-либо проблем (забегая вперёд — за время нашего тестирования таковых нами не было обнаружено).

driver2_sm.png Технология G-Sync работает на всех поддерживаемых мониторами разрешениях, вплоть до UltraHD, но в нашем случае мы использовали родное разрешение 2560×1440 пикселей при 144 Гц. В своих сравнениях с текущим положением дел, использовался режим с частотой обновления 60 Гц и отключенной технологией G-Sync, чтобы эмулировать поведение типичных мониторов без поддержки этой технологии, присутствующих у большинства игроков. Большинство из которых использует Full HD-мониторы, способные максимум режим на 60 Гц.

Обязательно надо упомянуть, что хотя при включенном G-Sync обновление экрана будет на идеальной частоте — когда этого «хочет» графический процессор, оптимальным режимом всё же будет рендеринг с частотой кадров порядка 40–60 FPS — это наиболее подходящая частота кадров для современных игр, не слишком маленькая, чтобы упереться в нижний предел 30 FPS, но и не требующая снижения настроек. К слову, именно к такой частоте стремятся в программе GeForce Experience компании NVIDIA, предоставляя соответствующие настройки для популярных игр в одноименном ПО, прилагаемом в комплекте с драйверами.

Кроме игр, мы также опробовали и специализированное тестовое приложение от NVIDIA — G-Sync Pendulum Demo. Это приложение показывает удобную для оценки плавности и качества 3D-сцену с маятником, позволяет имитировать разную частоту кадров и выбирать режим отображения: V-Sync Off/On и G-Sync. При помощи данного тестового ПО очень легко показать разницу между различными режимами синхронизации — например, между V-Sync On и G-Sync:

Тег video не поддерживается, скачайте видео.

Приложение Pendulum Demo позволяет протестировать разные способы синхронизации в различных условиях, оно имитирует точную частоту кадров 60 FPS для сравнения V-Sync и G-Sync в идеальных для устаревшего способа синхронизации условиях — в этом режиме разницы между методами просто не должно быть. А вот режим 40–50 FPS ставит V-Sync On в неудобное положение, когда задержки и неплавная смена кадров видны невооруженным взглядом, так как время рендеринга кадра превышает период обновления при 60 Гц. При включении же G-Sync всё становится идеально.

Что касается сравнения режимов с отключенной V-Sync и включенным G-Sync, то и тут приложение NVIDIA также помогает увидеть разницу — при частотах кадров между 40 и 60 FPS разрывы картинки видны чётко, хотя лагов меньше, чем при V-Sync On. И даже неплавный видеоряд относительно G-Sync режима заметен, хотя в теории этого не должно быть — возможно, так сказывается восприятие мозгом «разорванных» кадров.

Ну, а с включенным G-Sync любой из режимов тестового приложения (постоянная частота кадров или изменяемая — не важно) всегда обеспечивается максимально плавный видеоряд. Да и в играх все проблемы традиционного подхода к обновлению информации на мониторе с фиксированной частотой обновления порой заметны чуть ли не ещё сильнее — в данном случае, вы можете наглядно оценить разницу между всеми тремя режимами на примере игры StarCraft II (просмотр ранее сохранённой записи):

Тег video не поддерживается, скачайте видео.

Если ваша система и браузер поддерживает проигрывание формата видеоданных MP4/H.264 с частотой 60 FPS, то вы наглядно увидите, что в режиме отключенной синхронизации заметны явные разрывы картинки, при включении V-Sync наблюдаются рывки и неплавность видеоряда. Всё это пропадает при включении NVIDIA G-Sync, при которой нет ни артефактов на изображении, ни увеличения задержек, ни «рваного» темпа смены кадров.

Конечно же, G-Sync — это не волшебная палочка, и от задержек и притормаживаний, вызванных не самим процессом вывода кадров на монитор с фиксированной частотой обновления, данная технология не избавит. Если в самой игре есть проблемы с плавностью вывода кадров и большие рывки в FPS, вызванные загрузкой текстур, обработкой данных на CPU, неоптимальной работой с видеопамятью, отсутствием оптимизации кода и т. д., то они останутся на месте. Более того, они станут заметны даже ещё сильнее, так как вывод остальных кадров будет идеально плавным. Впрочем, на практике на мощных системах проблемы встречается не слишком часто, и G-Sync реально улучшает восприятие динамического видеоряда.

Так как новая технология вывода NVIDIA воздействует на весь конвейер вывода, то она теоретически может вызвать артефакты и неравномерность в частоте кадров, особенно если игра искусственно ограничивает FPS на какой-либо отметке. Вероятно, такие случаи если и есть, то настолько редки, что мы их даже не заметили. Зато отметили явное улучшение комфорта при игре — при игре за монитором с задействованной технологией G-Sync складывается такое впечатление, что ПК стал настолько мощнее, что способен к постоянной частоте кадров не меньше 60 FPS без каких-либо просадок.

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

В играх таких жанров, как стратегии реального времени и подобных, вроде StarCraft II, League of Legends, DotA 2 и т. д., преимущества технологии G-Sync отлично видны, как можно убедиться по примеру из видеоролика выше. Кроме этого, такие игры всегда требуют стремительных действий, не терпящих задержек и неплавности в частоте кадров, а плавный скроллинг играет довольно важную роль в комфорте, которому сильно мешают разрывы картинки при V-Sync Off, задержки и лаги при V-Sync On. Так что технология G-Sync идеально подойдёт для игр подобного типа.

Ещё больше распространены шутеры от первого лица, вроде Crysis 3 и Far Cry 4, они заодно являются и весьма требовательными к вычислительным ресурсам, и при высоких настройках качества игроки в них зачастую получают частоту кадров как раз около 30–60 FPS — идеальный вариант для применения G-Sync, реально значительно улучшающей комфорт при игре в таких условиях. Традиционный же метод вертикальной синхронизации очень часто заставит выводить кадры с частотой всего лишь 30 FPS, увеличивая лаги и рывки.

Примерно то же самое касается игр с видом от третьего лица, вроде сериалов Batman, Assassin«s Creed и Tomb Raider. Эти игры также используют новейшие графические технологии и требуют довольно мощных GPU для достижения высокой частоты кадров. При максимальных настройках в этих играх и отключении V-Sync часто получается FPS порядка 30–90, что&nb

Полный текст статьи читайте на iXBT