Как настроить графику в играх, чтобы компьютер не тормозил
И сохранить приличный вид локаций
Современные видеоигры становятся красивее, реалистичнее и… тяжелее.
В этой статье мы расскажем, какими опциями можно пожертвовать и не заметить разницы, а какие лучше трогать по минимуму, чтобы не испортить впечатление от игры некачественным визуалом.
Что вы узнаете из этого материала
Почему игра может тормозить
Производительность в видеоиграх принято мерить значениями FPS — frames per second. Это кадровая частота, то есть количество кадров в секунду. Чем выше FPS, тем плавнее картинка.
Во время игры значения FPS меняются: если нагрузка на компьютер увеличивается в более сложной игровой сцене, количество кадров в секунду падает. Человеческий глаз улавливает малейшие изменения в кадровой частоте: резкое снижение уровня мы воспринимаем как те самые «тормоза».
Объясню на примере. Предположим, вы исследуете игровой уровень, в котором ничего не происходит, — FPS стабильно высокая. Затем начинается динамичная сцена с кучей спецэффектов, и кадровая частота падает, потому что нагрузка на ПК резко повышается. Действие на экране становится более рваным и дерганным, это раздражает.
Чтобы избежать торможения, в играх принято ограничивать «потолок» FPS, даже если компьютер может время от времени выдавать более высокие значения. Глаз привыкает к определенной частоте кадров, поэтому низкая, но стабильная FPS приятнее, чем «плавающая».
Добиться стабильной FPS можно двумя способами: либо занизить настройки графики так, чтобы компьютер с легкостью выдавал 60 FPS, либо сделать их умеренно средними или даже высокими — но выставить ограничение в 30 FPS. В первом случае изображение будет плавным, но не слишком подробным, а во втором — более детализированным и четким, но одновременно и более дерганным.
негласный стандарт для количества кадров в секунду. Если игра ну очень требовательная, достаточно стабильных 30 FPS
Чем мощнее машина, тем больше FPS она успевает обрабатывать. Но требования игр растут с каждым годом: компьютеры, которые были самыми мощными несколько лет назад, уже не так хорошо работают с современным геймплеем. К примеру, на топовом для 2014 года ПК (i7 4770k, GTX 980, 16 ГБ ОЗУ) недавняя Cyberpunk 2077 может тормозить: чтобы этого избежать, игроку придется повозиться с настройками графики, которые позволят увеличить производительность.
30 FPS достаточно, если вы играете в сюжетную или кинематографичную игру: качество изображения будет выше, а игровой процесс не пострадает. Но некоторые игры рассчитаны минимум на 60 FPS — например, многопользовательские шутеры Counter-Strike или Call of Duty, где важна скорость реакции.
Выше 60 кадров в секунду поднимать графику нет смысла: большинство мониторов просто не смогут воспроизвести FPS выше. Дело в том, что у каждого дисплея есть еще и частота обновления экрана, которая зачастую равна 60 Гц: это означает, что картинка на дисплее обновляется 60 раз в секунду. Соответственно, если кадровая частота окажется выше частоты обновления экрана, на мониторе попросту не будет видно разницы.
Одни настройки графики ресурсоемкие, а другие — не очень. Более того, занижение некоторых параметров может практически не сказаться на качестве картинки, но убрать пресловутые «тормоза».
Например, опции для света, теней и отражений. Они сильно влияют на производительность, но их изменения не всегда заметны на экране — некоторые сцены всего лишь потеряют красивые блики и полутона.
Ниже я перечислил самые распространенные настройки графики в порядке их влияния на качество графики. Параметры с припиской «Без потерь» обычно высвобождают немало FPS, но картинку портят не сильно. А там, где указано «С заметными потерями» или «Выжать еще чуть-чуть», придется пойти на компромиссы.
Важно помнить, что советы могут подойти не для всех игр: в разных проектах графика работает по-разному. Эффект от смены параметров может оказаться как слабее, так и значительно сильнее. Чтобы быть точно уверенным в результате и не тратить много времени на настройку, можно воспользоваться специальным гайдом для конкретной игры — например, для Cyberpunk 2077.
Но готовые решения есть не для всех игр. Эта статья поможет настроить игру самостоятельно, учитывая возможности конкретного компьютера. Вот чем можно пожертвовать в угоду производительности, не потеряв в качестве, — или намеренно ухудшив изображение.
Технологии графики в современных играх, часть 3: Заря Past-Gen’а
Продолжаем глубокое погружение в океан графических фич.
В предыдущих двух частях (первая, вторая) мы коснулись тех технологий, которые на сегодняшний день считаются «cutting-edge» (на самом гребне волны). Какие-то — больше, какие-то — меньше. Но именно при их упоминании сердце графодрочера вожделенно содрогается.
В этот же раз на повестке дня — те «рядовые труженики» графического фронта, которым не уделяется того же внимания просто потому, что они уже давно стали стандартом. Но без них, тем не менее, того «nex-gen графона», в ожидании коего замер сейчас весь мир, попросту не было бы.
Короче говоря, сегодня речь пойдёт о технологиях, которые расцвели сразу же с приходом предыдущего поколения. Ну или где-то в начале.
Часть 3: Заря Past-Gen’а
Как водится, сразу же оговорюсь: граница между этой и предыдущей частями довольно размыта.
Я, исходя исключительно из собственного видения, концептуально отнёс часть технологий past-gen’а к его началу, а часть — к концу. Можешь с ходу затевать в комментах срач на тему «не-не-не, технология %SUBJECTNAME% должна была оказаться в предыдущей части».
Даже спорить не вижу смысла.
А начнём с того, что лучше всего символизирует «Зарю Past-Gen’а», буквально:
Lens Flares 
Прости, я так и не смог выбрать один кадр из опенинга ME2, поэтому первый поместил в заглавие всей статьи, а второй — сюда.
Огромное спасибо Василию Гальперову и Максиму Солодилову за то, что так вовремя выпустили этот разбор и тем самым избавили меня от необходимости перебирать старьё в поисках примеров.

Проблемы этого спрайтового метода настолько очевидны, что даже озвучивать их нет смысла.
С приходом же past-gen’а появилась возможность делать натуральные, киношные блики на линзах. Чем разработчки, разумеется, тут же не преминули воспользоваться.
Рассказывать про Lens flares особенно нечего (если не касаться физики и того, как и откуда именно они берутся). Так что вот тебе просто пачка великолепных примеров: 










On-lens grime/dirt
Общественная реакция
Не могу обойти стороной этот аспект.
Признаться, я сам периодически грешу этим. Конечно, стараюсь сдерживать свою любовь к фларам. Но всё равно в нашей команде моё универсальное предложение их в качестве любого геймплейного эфффекта — дежурная шутка.
Как говорится на SG, и горжусь!
Тем не менее, технология сама по себе — просто восхитительна. Главное — знать меру, и тогда она становится незаменимым художественно-выразительным средством, которое позволяет привнести в картинку потрясающую живописность.
А рука об руку с фларами идёт их младший брат:
Sun Shafts / God-Rays 
Это такой эффект, который виден, когда пар или туман просвечивается лучами, пробивающимися, например, через листву. Короче, когда между игроком и источником света есть какое-то дырявое препятствие, а в воздухе висят какие-то мелкие частицы.
На самом деле, с реальной волюметрикой (объёмные явления вроде того же тумана) этот эффект не имеет ничего общего. И на деле является небольшой модификацией Zoom Blur, о котором я рассказывал в предыдущей части.
Но он создаёт именно такую видимость чего-то объёмного и оттого придаёт картинке реализм.
Если его использовать отдельно (как на картинке в заглавии) — это смотрится несколько странно. Потому что просвечивание атмосферы есть, а её самой — нет.
Но зато если добавить ещё эффект тумана по глубине — будет бальзам на душу и радость для глаз геймера. 
Если мне не изменяет память, громче всех кричали про добавление этой технологии в свою игру CryTek, во время анонса какого-то из Far Cry’ев.
Но на сегодняшний день она уже давно мэйнстрим, и 




Ну и, раз уж заикнулся про атмосферу…
Z-Depth Fog 
По-русски — туман по карте глубины.
Сразу же, чтоб оценить важность эффекта — вот один и тот же кадр, с туманом и без: 

Как видишь, сабж хоть чуть-чуть — но должен быть всегда: хоть на панорамном пейзаже, хоть в камерном помещении. Его отсутствие резко бросается в глаза и создаёт ощущение, что мы находимся в безжизненном вакууме.
Дело в том, что в воздухе всегда что-то есть. Даже сейчас в твоей комнате — есть хотя бы пыль и испарившаяся вода. Их может быть ничтожно мало, но какие-то частицы в воздухе есть всегда. Они настолько мелкие, что никогда не осядут и будут витать в атмосфере вечно.
При относительно мелких размерах помещения эффект от них даже не виден. Но стоит выглянуть за окно — и сразу можно заметить, что здания на горизонте гораздо более бледные, чем поблизости. Причём, так обстоят дела не только в городах, коптящих атмосферу смогом, а вообще везде, где есть воздух.
Так что для убедительной картинки наличие этого эффекта критически важно.
Сейчас я уже и припомнить-то не могу, какая игра первой его опробовала (боюсь, речь вообще о всяких там DOMM 1 и 2), да это и не важно. 

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

Ситуацию это исправило, но не сильно.
Потом кто-то догадался модифицировать карту глубины в соответствии с экспоненциальным угасанием (поблизости сцена очень быстро окрашивается в туман, а дальше разница всё меньше и меньше). 

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


Glow / Bloom 
Лично я — просто обожаю glow-эффект. Из всех возможных — он у меня на втором месте. Сразу за оптикал фларами.
Вселенная ТРОНа — одна из моих самых любимых. И не в последнюю очередь — из-за glow. Я от него настолько тащусь, что. Я.
Сам.
Прошёл.
Полностью.
«TRON: Evolution»
… без читов и трейнеров.
… и просмотрел весь мультсериал «TRON: Uprising».
В качестве примера я взял какой-то там wallpaper, и понятия не имею, откуда он. В любом случае, спасибо автору (кем бы он ни был).
Это самый простой алгоритм glow-эффекта.
Ещё проще можно сделать, если в самом начале не делить исходное изображение на 2 части, а взять оригинал в качестве основного компонента (100% исходника) и слегка затемнённую версию (40%) — в качестве рассеянного (размываемого) компонента. Очевидно, что после сборки итоговая яркость станет больше, чем была первоначально (140%), но обычно разработчики это учитывают и делают исходный рендер чуть темнее, чем нужно в итоге.
Например, именно так было сделано в 

Как нетрудно заметить, glow, когда он накладывается на всю картинку, придаёт ей этакой сказочности.
А если конкретнее — «затуманенности». Потому что так явно свет рассеивается только в тумане, причём довольно густом. Так что совмещать эти 2 эффекта — как говорится, сам бог послал. 
Дальше — больше. Если уж мы используем туман, то «делить» исходную картинку на чёткую и рассеиваемую составляющую — можно по карте глубины. Тогда то, что дальше в тумане — сильнее размоется чем то, что ближе.
Наконец, можно вообще произвольно крутить две этих части для достижения желаемого эффекта.
Как ты уже мог догадаться, в таком случае нам очень пригодится HDR-рендеринг: с его помощью при разделении изображения мы сможем сохранить яркости выше 1, да и размоются они гораздо натуральнее. А если всё это ещё и приправить сверху Sun Shafts (и фларами по вкусу), то 
Но это — у добросовестных разработчиков. А нерадивые — идут на хитрость и под вывеской «HDR» — на самом деле рендерят самым первым способом (100%+40%), просто не везде, а по специально сделанной маске.
Отсюда — и пересвет при включении этого типа-HDR: 

К слову, так уж повелось, что честной glow или простой glow на весь экран — так и называется. А вот когда glow’ятся не все объекты, или степень этого эффекта пропорциональна яркости пикселя (т.е., «на лету» генерируется карта glow по яркости) — это bloom.
В результате — «настоящий» glow придаёт натуральности, а bloom — добавляет яркости в и без того яркие места. Т.е., пересвечивает картинку. 
Так что, как говорится, опасайтесь подделок!
Но даже если учитывать такую непорядочность отдельных игроделов, я всё равно люблю Glow. Ведь он внёс свою лепту в те шедевры, 



Anti-Aliasing (AA) 
Тема, на самом деле, объёмная. И до третьей части я её откладывал в том числе потому, что опасался, как бы на неё одну не ушла отдельная статья… в итоге почти так и получилось.
К тому же, по-человечески разобраться с АА без некоторой нудной теории — невозможно. А это напрочь выбивается из общего формата/стиля всей серии.
Поэтому конкретно эту тему — я вынес в отдельную мини-статью.
Как видишь, эта часть получилась очень тёплой, светлой, ламповой.
Как и те воспоминания, которые остались у многих из нас от предыдущего поколения. И не важно, играешь ты на ПК или консолях — технологии везде одни и те же, разница лишь количественная, а не качественная.
За сим — я призываю всех оставить в прошлом платформенные холивары.
Вместо этого — лучше искренне поблагодарить всех тех графических Кулибиных, которым мы обязаны за сегодняшний уровень графона.
Ностальгически вспомнить любимые игры предыдущего поколения. Прокрутить в памяти судьбы дорогих тебе персонажей, в последний раз ощутив их присутствие в своём сердце. Может быть, пустить скупую мужскую слезу по дням минувшим. Ведь такими мы их уже больше не увидим.
И направить взор в будущее, в предвкушении того, что день грядущий нам готовит. Какими графическими выкрутасами разработчики игр будут ублажать наши глаза. Какими персонажами будут содрогать наши сердца. Какими историями будут восхищать наши умы.
Некст-ген сулит нам новые горизонты, и далеко не только в плане графона.
Fog (Туман)
Описание
Эффект тумана зависит от трех основных компонент:
1. Цвет тумана (C).
2. Плотность (g).
3. Расстояние (d).
Поскольку объекты находящиеся в дали должны больше поддаваться эффекту тумана, ввели коэффициент d, т.е. расстояние. Окончательный цвет вершины получают интерполированием цвета тумана и текущем цветом: Lerp(Cfog, Ccurrent, f)
Вычислять Cfinal надо только в том случае, если вы используете пиксельный шейдер:
Иначе это сделает за нас direct3d9 установкой следующих стейтов:
или с помощью OpenGL:
Линейный туман
Основное уравнение:
f = (Zfogend – d)/(Zfogend – Zfogstart)
В таком случае частицы тумана распределяются равномерно от точки Zfogstart и до точки Zfogend. d – представляет глубину, или расстояние от видового вектора до начала появления тумана. Вот простенький шейдер для линейного тумана:
Стоит уделить внимание строчке:
В ней мы получаем вершину в пространстве камеры, и затем берем z координату этого вектора, что бы получить расстояние d. Это более грубый и дешевый способ расчета расстояния.
Второй способ состоит в вычислении расстояния между позицией вершины и видовым вектором:
Экспоненциальный (квадратичный) туман
Представьте, что луч можно разбить на множество отрезков, где каждый отрезок имеет свою единичную длину. С каждым продвижением этого луча, интенсивность отрезка уменьшается на коэффициент g, в свою очередь следующий отрезок также будет сокращен на g и т.д. Поэтому такое поведение легко смоделировать с помощью экспоненциальной функции.
Основное уравнение для экспоненциального тумана:
f = exp(-d*g)
для экспоненциального квадратичного тумана:
f = exp(-(d*g)*(d*g) )
Dof что это в играх
Depth Of Field (DOF) — Глубина Резко Изображаемого Пространства (ГРИП) или Глубина Резкости — одномерная величина, определяющая разницу между максимальным и минимальным расстоянием до наблюдателя, которое определяется наблюдателем как резкое. Термин пришёл в компьютерную графику из фотографии, где резкое изображение получается на тех участках, где световое пятно от точки в пространстве меньше зерна светочувствительного элемента, в следствии чего у наблюдателя возникает ощущение «резкости».
На самом деле, в оптике возможно только одно расстояние, при котором точка в пространстве передаётся в виде точки на светочувствительный элемент, так что «глубина» резкости на самом деле физически не существует и является следствием несовершенства техники и глаза наблюдателя.
Частным случаем ГРИП является гиперфокал, когда в область резко изображаемого пространства попадает всё, начиная с определённого расстояния до бесконечности.
Основными техниками для получения эффекта ограниченной ГРИП в компьютерной графике являются следующие:
Релизация ГРИП методом накопляющего буфера.
Что такое Depth Of Field (DOF) — Глубина Резко Изображаемого Пространства?
Разрешение экрана
Думаю, с понятием разрешения знакомы уже более-менее все игроки, но на всякий случай вспомним основы. Все же, пожалуй, главный параметр графики в играх.
Изображение, которое вы видите на экране, состоит из пикселей. Разрешение — это количество пикселей в строке, где первое число — их количество по горизонтали, второе — по вертикали. В Full HD эти числа — 1920 и 1080 соответственно. Чем выше разрешение, тем из большего количества пикселей состоит изображение, а значит, тем оно четче и детализированнее.
Влияние на производительность
Очень большое.Увеличение разрешения существенно снижает производительность. Именно поэтому, например, даже топовая RTX 2080 TI неспособна выдать 60 кадров в 4K в некоторых играх, хотя в том же Full HD счетчик с запасом переваливает за 100. Снижение разрешения — один из главных способов поднять FPS. Правда, и картинка станет ощутимо хуже.
В некоторых играх (например, в Titanfall) есть параметр так называемого динамического разрешения. Если включить его, то игра будет в реальном времени автоматически менять разрешение, чтобы добиться заданной вами частоты кадров.
Вертикальная синхронизация
Если частота кадров в игре существенно превосходит частоту развертки монитора, на экране могут появляться так называемые разрывы изображения. Возникают они потому, что видеокарта отправляет на монитор больше кадров, чем тот может показать за единицу времени, а потому картинка рендерится словно «кусками».
Вертикальная синхронизация исправляет эту проблему. Это синхронизация частоты кадров игры с частотой развертки монитора. То если максимум вашего монитора — 60 герц, игра не будет работать с частотой выше 60 кадров в секунду и так далее.
Есть и еще одно полезное свойство этой опции — она помогает снизить нагрузку на «железо» — вместо 200 потенциальных кадров ваша видеокарта будет отрисовывать всего 60, а значит, загружаться не на полную и греться гораздо меньше.
Впрочем, есть у Vsync и недостатки. Главная — очень заметный «инпут-лаг», задержка между вашими командами (например, движениями мыши) и их отображением в игре.
Поэтому играть со включенной вертикальной синхронизацией в мультипеере противопоказано. Кроме того, если ваш компьютер «тянет» игру при частоте ниже, чем заветные 60 FPS, Vsync может автоматически «лочиться» уже на 30 FPS, что приведет к неслабым таким лагам.
Лучший способ бороться с разрывами изображения на сегодняшний день — купить монитор с поддержкой G-Sync или FreeSync и соответствующую видеокарту Nvidia или AMD. Ни разрывов, ни инпут-лага.
Влияние на производительность
В общем и целом — никакого.
Сглаживание(Anti-aliasing)
Если нарисовать из квадратных по своей природе пикселей ровную линию, она получится не гладкой, а с так называемыми «лесенками». Особенно эти лесенки заметны при низких разрешениях. Чтобы устранить этот неприятный дефект и сделать изображения более четким и гладким, и нужно сглаживание.
Здесь и далее — слева изображение с отключенной графической опцией (или установленной на низком значении), справа — с включенной (или установленной на максимальном значении).
Технологий сглаживания несколько, вот основные:
Влияние на производительность
От ничтожного (FXAA) до колоссального (SSAA). В среднем — умеренное.
Качество текстур
Один из самых важных параметров в настройках игры. Поверхности всех предметов во всех современных трехмерных играх покрыты текстурами, а потому чем выше их качество и разрешение — тем четче, реалистичнее картинка. Даже самая красивая игра с ультра-низкими текстурами превратится в фестиваль мыловарения.
Влияние на производительность
Если в видеокарте достаточно видеопамяти, то практически никакого. Если же ее не хватает, вы получите ощутимые фризы и тормоза. 4 гигабайт VRAM хватает для подавляющего числа современных игр, но лучше бы в вашей следующей видеокарте памяти было 8 или хотя бы 6 гигабайт.
Анизотропная фильтрация
Анизотропная фильтрация, или фильтрация текстур, добавляет поверхностям, на которые вы смотрите под углом, четкости. Особенно ее эффективность заметна на удаленных от игрока текстурах земли или стен.
Чем выше степень фильтрации, чем четче будут поверхности в отдалении.
Этот параметр влияет на общее качество картинки довольно сильно, но систему при этом практически не нагружает, так что в графе «фильтрация текстур» советуем всегда выставлять 8x или 16x. Билинейная и трилинейная фильтрации уступают анизотропной, а потому особенного смысла в них уже нет.
Влияние на производительность
Тесселяция
Технология, буквально преображающая поверхности в игре, делающая их выпуклыми, рельефными, натуралистичными. В общем, тесселяция позволяет отрисовывать гораздо более геометрически сложные объекты. Просто посмотрите на скриншоты.
Влияние на производительность
Зависит от игры, от того, как именно движок применяет ее к объектам. Чаще всего — среднее.
Качество теней
Все просто: чем выше этот параметр, тем четче и подробнее тени, отбрасываемые объектами. Добавить тут нечего. Иногда в играх также встречается параметр «Дальность прорисовки теней» (а иногда он «вшит» в общие настройки). Тут все тоже понятно: выше дальность — больше теней вдалеке.
Влияние на производительность
Зависит от игры. Чаще всего разница между низкими и средними настройками не столь велика, а вот ультра-тени способны по полной загрузить ваш ПК, поскольку в этом случае количество объектов, отбрасывающих реалистичные тени, серьезно вырастает.
Глобальное затенение (Ambient Occlusion)
Один из самых важных параметров, влияющий на картинку разительным образом. Если вкратце, то AO помогает имитировать поведения света в трехмерном мире — а именно, затенять места, куда не должны попадать лучи: углы комнат, щели между предметами и стенами, корни деревьев и так далее.
Существует два основных вида глобального затенения:
SSAO (Screen space ambient occlusion). Впервые появилось в Crysis — потому тот и выглядел для своего времени совершенно фантастически. Затеняются пиксели, заблокированные от источников света.
HBAO (Horizon ambient occlusion). Работает по тому же принципу, просто количество затененных объектов и зон гораздо больше, чем при SSAO.
Влияние на производительность
Глубина резкости (Depth of Field)
То самое «боке», которое пытаются симулировать камеры большинства современных объектов. В каком-то смысле это имитация особенностей человеческого зрения: объект, на который мы смотрим, находится в идеальном фокусе, а объекты на фоне — размыты. Чаще всего глубину резкости сейчас используют в шутерах: обратите внимание, что когда вы целитесь через мушку, руки персонажа и часть ствола чаще всего размыты.
Впрочем, иногда DoF только мешает — складывается впечатление, что у героя близорукость.
Влияние на производительность
Целиком и полностью зависит от игры. От ничтожного до довольно сильного (как, например, в Destiny 2).
Bloom (Свечение)
Этот параметр отвечает за интенсивность источников света в игре. Например, с включенным Bloom, свет, пробивающийся из окна в помещение, будет выглядеть куда ярче. А солнце создавать натуральные «засветы». Правда, некоторые игры выглядят куда реалистичнее без свечения — тут нужно проверять самому.
Влияние на производительность
Чаще всего — низкое.
Motion Blur (Размытие в движении)
Motion Blur помогает передать динамику при перемещениях объекта. Работает он просто: когда вы быстро двигаете камерой, изображение начинает «плыть». При этом главный объект (например, руки персонажа с оружием) остается четким.
На сайте PC Gamer появился интересный разбор графических настроек в компьютерных играх, где подробно рассказано обо всех популярных инструментах, фильтрах и механизмах обработки изображения. Мы перевели его на русский язык, чтобы вы могли сами настраивать свои игры, избавляться от лагов и любоваться красивой графикой.
Итак, сегодня мы с вами разберемся, что означают те или иные графические настройки в компьютерных играх.
У Nvidia и AMD есть программное обеспечение для автоматической настройки графики согласно техническим характеристикам вашего компьютера. Со своей задачей программы справляются неплохо, но часто ручная настройка приносит куда больше пользы. Все-таки, мы ПК-бояре, у нас должна быть свобода выбора!
Если вы новичок в области игровой графики, это руководство создано специально для вас. Мы расшифруем основные пункты любого меню «Настройки графики» в ваших играх и объясним, на что они влияют. Эта информация поможет вам избавиться от лагов и фризов в любимой игре, не лишаясь красивой картинки. А владельцы мощных компьютеров поймут, как настроить самую сочную и привлекательную графику, чтобы записывать крутые видео и делать зрелищные скриншоты.
Начнем с фундаментальных понятий, а затем пройдемся по тонким настройкам в рамках нескольких разделов, посвященных анизотропной фильтрации, сглаживанию и постобработке. Для написания этого гайда мы пользовались информацией, полученной от профессионалов: Алекса Остина, дизайнера и программиста Cryptic Sea, Николаса Вайнинга, технического директора и ведущего программиста Gaslamp Games и от представителей Nvidia. Сразу отметим, что статью мы пишем простыми словами, опуская подробные технические детали, чтобы вам было легче понять механизмы работы разных технологий.
Содержание
ОСНОВЫ
Разрешение
Пиксель — основная единица цифрового изображения. Это цветовая точка, а разрешение — количество столбцов и рядов точек на вашем мониторе. Самые распространенные разрешения на сегодня: 1280×720 (720p), 1920×1080 (1080p), 2560×1440 (1440p) и 3840 x 2160 (4K или «Ultra-HD»). Но это для дисплеев формата 16:9. Если у вас соотношение сторон 16:10, разрешения будут слегка отличаться: 1920×1200, 2560×1600 и т.д. У ультрашироких мониторов разрешение тоже другое: 2560×1080, 3440×1440 и т.д.
Кадры в секунду (frames per second, FPS)
Если представить, что игра — это анимационный ролик, то FPS будет числом изображений, показанных за секунду. Это не то же самое, что частота обновления дисплея, измеряемая в герцах. Но эти два параметра легко сравнивать, ведь как монитор на 60 Гц обновляется 60 раз за секунду, так и игра при 60 FPS выдает именно столько кадров за тот же отрезок времени.
Чем сильнее вы загрузите видеокарту обработкой красивых, наполненных деталями игровых сцен, тем ниже будет ваш FPS. Если частота кадров окажется низкой, они будут повторяться и получится эффект подтормаживания и подвисания. Киберспортсмены охотятся за максимальном возможными показателями FPS, особенно в шутерах. А обычные пользователи зачастую довольствуются играбельными показателями — это где-то 60 кадров в секунду. Однако, мониторы на 120-144 Гц становятся более доступными, поэтому потребность в FPS тоже растет. Нет смысла играть на 120 герцах, если система тянет всего 60-70 кадров.
Так как в большинстве игр нет встроенного бенчмарка, для измерения кадров в секунду используется стороннее программное обеспечение, например, ShadowPlay или FRAPS. Однако, некоторые новые игры с DX12 и Vulkan могут некорректно работать с этими программами, чего не наблюдалось со старыми играми на DX11.
Апскейлинг и даунсэмплинг
В некоторых играх есть настройка «разрешение рендеринга» или «rendering resolution» — этот параметр позволяет поддерживать постоянное разрешение экрана, при этом настраивая разрешение, при котором воспроизводится игра. Если разрешение рендеринга игры ниже разрешения экрана, оно будет увеличено до масштабов разрешения экрана (апскейлинг). При этом картинка получится ужасной, ведь она растянется в несколько раз. С другой стороны, если визуализировать игру с большим разрешением экрана (такая опция есть, например, в Shadow of Mordor), она будет выглядеть намного лучше, но производительность станет заметно ниже (даунсэмплинг).
Производительность
На производительность больше всего влияет разрешение, поскольку оно определяет количество обрабатываемых графическим процессором пикселей. Вот почему консольные игры с разрешением 1080p, часто используют апскейлинг, чтобы воспроизводить крутые спецэффекты, сохраняя плавную частоту кадров.
Мы использовали наш Large Pixel Collider (суперкомпьютер от сайта PC Gamer), включив две из четырех доступных видеокарт GTX Titan, чтобы продемонстрировать, как сильно разрешение влияет на производительность.
Тесты проводились в бенчмарке Shadow of Mordor:
1980х720 (½ родного разрешения)
2560х1440 (родное разрешение)
5120х2880 (x2 родного разрешения)
Вертикальная синхронизация и разрывы кадров
Когда цикл обновления дисплея не синхронизирован с циклом рендеринга игры, экран может обновляться в процессе переключения между готовыми кадрами. Получается эффект разрыва кадров, когда мы видим части двух или более кадров одновременно.
Одним из решений этой проблемы стала вертикальная синхронизация, которая почти всегда присутствует в настройках графики. Она не позволяет игре показывать кадр, пока дисплей не завершит цикл обновления. Это вызывает другую проблему — задержка вывода кадров, когда игра способна показать большее количество FPS, но ограничена герцовкой монитора (например, вы могли бы иметь 80 или даже 100 кадров, но монитор позволит показывать только 60).
Адаптивная вертикальная синхронизация
Бывает и так, что частота кадров игры падает ниже частоты обновления монитора. Если частота кадров игры превышена, вертикальная синхронизация привязывает ее к частоте обновления монитора и она, например, на дисплее с 60 Гц не превысит 60 кадров. А вот когда частота кадров падает ниже частоты обновления монитора, вертикальная синхронизация привязывает ее к другому синхронизированному значению, например, 30 FPS. Если частота кадров постоянно колеблется выше и ниже частоты обновления, появляются подтормаживания.
Чтобы решить эту проблему, адаптивная вертикальная синхронизация от Nvidia отключает синхронизацию каждый раз, когда частота кадров падает ниже частоты обновления. Эту функцию можно включить в панели управления Nvidia — она обязательна для тех, кто постоянно включает вертикальную синхронизацию.
Технологии G-sync и FreeSync
Новые технологии помогают разобраться со многими проблемами, которые зачастую основаны на том, что у дисплеев фиксированная частота обновления. Но если частоту дисплея можно было бы изменять в зависимости от FPS, пропали бы разрывы кадров и подтормаживания. Такие технологии уже есть, но для них нужны совместимые видеокарта и дисплей. У Nvidia есть технология G-sync, а у AMD — FreeSync. Если ваш монитор поддерживает одну из них и она подходит к установленной видеокарте, проблемы решены.
Сглаживание (Anti-aliasing, антиалиасинг)
Инструментов для этого достаточно, но легче объяснить на примере суперсэмплинга (SSAA). Эта технология отрисовывает кадры с более высоким разрешением, чем у экрана, а затем сжимает их обратно до его размера. На предыдущей странице вы могли видеть эффект от сглаживания при уменьшении частоты в Shadow of Mordor с 5120х2880 до 1440p.
Взгляните на пиксель черепичной крыши. Он оранжевого цвета. Тут же и пиксель голубоватого неба. Находясь рядом, они создают жесткий зубчатый переход от крыши к небу. Но если визуализировать сцену с четырехкратным разрешением, вместо одного пикселя оранжевой крыши на этом же месте будут четыре пикселя. Некоторые из них будут оранжевыми, некоторые «небесными». Стоит взять значение всех четырех пикселей, как получится нечто среднее — если по такому принципу построить всю сцену, переходы станут мягче и «эффект лестницы» пропадет.
Такова суть технологии. Но, она требует от системы очень много ресурсов. Ей приходится отрисовывать каждый кадр с разрешением в два или более раз больше, чем оригинальное разрешение экрана. Даже в случае с нашими топовыми видеокартами суперсэмплинг с разрешением 2560х1440 кажется нецелесообразным. К счастью, есть альтернативы:
Мультисэмплинг (MSAA): Эффективнее суперсэмплинга, но все еще прожорлив. В старых играх он был стандартом, а его суть объясняется в видео, которое вы увидите ниже.
Усовершенствованный мультисэмплинг (CSAA): более эффективная версия MSAA от Nvidia для ее видеокарт.
Усовершенствованный мультисэмплинг (CFAA): тоже апгрейд MSAA, только от компании AMD для ее карточек.
Метод быстрого приближения (FXAA): вместо анализа каждого отдельного пикселя, FXAA накладывается в качестве фильтра постобработки на всю сцену целиком после ее рендеринга. FXAA также захватывает места, которые пропускаются при включении MSAA. Хотя сам метод быстрого приближения тоже пропускает много неровностей.
Морфологический метод (MLAA): он свойственен видеокартам AMD и тоже пропускает этап рендеринга. MLAA обрабатывает кадр, выискивая алиасинг и сглаживая его. Как нам объяснил Николас Вайнинг: «Морфологическое сглаживание работает с морфологией (паттернами) неровностей на краях моделей; оно вычисляет оптимальный способ удаления лесенок для каждого вида неровностей путем разбиения краев и зубцов на небольшие наборы морфологических операторов. А затем использует специальные типы смешивания для каждого отдельного набора». Включить MLAA можно в панели управления Catalyst.
Улучшенное субпиксельное морфологическое сглаживание (SMAA): еще один вид постобработки, в котором сочетаются детали MLAA, MSAA и SSAA. Такой метод можно совмещать со SweetFX, а многие современные игры поддерживают его изначально.
Временное сглаживание (TAA или TXAA): TXAA изначально разрабатывалась для графических процессоров Nvidia уровня Kepler и более поздних. Но затем появились не настолько специфические формы временного сглаживания, которые обычно обозначаются, как TAA. При таком способе следующий кадр сравнивается с предыдущим, после чего обнаруживаются и устраняются неровности. Происходит это при поддержке разных фильтров, которые уменьшают «ползающую лесенку» в движении.
Николас Вайнинг объясняет: «Идея TAA заключается в ожидании того, что два идущих друг за другом кадра будут очень похожи, ведь пользователь в игре двигается не настолько быстро. Поэтому раз объекты на экране переместились несильно, мы можем получить данные из предыдущего кадра, чтобы дополнить участки, нуждающиеся в сглаживании».
Многокадровое сглаживание (MFAA): появилось с релизом графических процессоров Maxwell от Nvidia. Тогда как MSAA работает с устойчивыми шаблонами, MFAA позволяет их программировать. Представители Nvidia подробно объясняют технологию в видео ниже (о нем мы уже говорили раньше и очень скоро вы его увидите).
Суперсэмплинг с глубоким обучением (DLSS): новейшая технология Nvidia, доступная лишь в некоторых играх и с видеокартами GeForce RTX. По словам компании: «DLSS использует нейронную сеть для определения многомерных особенностей визуализированной сцены и интеллектуального объединения деталей из нескольких кадров для создания высококачественного финального изображения. DLSS использует меньше сэмплов, чем TAA, при этом избегая алгоритмических трудностей с прозрачностями и другими сложными элементами сцен».
Другими словами, DLSS справляется с задачей лучше и эффективнее, чем TAA, но технологию нужно отдельно готовить к каждой игре. Если не обучить ее должным образом, многие места окажутся размытыми.
Что означают цифры?
В настройках сглаживания вы часто видите значения: 2x, 4x, 8x и т.д. Эти цифры рассказывают о количестве используемых образцов цвета и, как правило, чем больше число, тем точнее будет сглаживание (при этом оно потребует больше системных ресурсов).
Но есть исключения. Так, CSAA пытается достичь сглаживания на уровне MSAA с меньшим количеством образцов цвета. Поэтому 8xCSAA фактически использует только четыре образца цвета. Есть и 8QxCSAA — этот способ сглаживания увеличивает количество образцов цвета до восьми, чтобы повысить точность.
Производительность
Мы использовали бенчмарк Batman: Arkham City, чтобы протестировать несколько старых методов сглаживания: MSAA, FXAA и TXAA. Результаты, как и ожидалось, показывают, что FXAA требует меньше всего ресурсов, в то время как MSAA и TXAA сильно влияют на среднюю частоту кадров.
Результаты тестирования сглаживания в Batman: Arkham City (на двух Nvidia GTX Titan SLI):





























