Настраиваем видеокарту для игр | Введение
Грандиозная скидка на видеокарту GIGABYTE nVidia GeForce GTX 1070
С каждым годом системные требования к компьютерным играм становятся всё жёстче. И этот год не исключение: такие ААА-игры, как Assassin’s Creed Origins, заставляют сжимать кулаки даже обладателей вчерашних графических флагманов. Сегодня мало кто может позволить себе приобрести новую мощную видеокарту — несмотря на начавшееся снижение цен, они ещё намного превышают рекомендованные производителем. Модернизация графического ускорителя гарантирует вам прирост частоты кадров в самых последних играх класса ААА, но как быть, если стоимость актуальных моделей возросла до небес — как из-за активности майнеров, так и из-за дефицита микросхем памяти?
Время разобраться в настройках видеокарт, которые нередко доступны не только в драйверах, но и непосредственно в играх: некоторыми из них можно пожертвовать ради существенного повышения FPS, при этом качество картинки пострадает не так сильно, как вы думаете. Просто изменив настройки карты среднего класса, вы получите 30 кадров в секунду в разрешении 4K без покупки Nvidia GTX 1080 Ti или суперплавные 60 FPS в 1080p. Посмотрим, как этого добиться.
Настраиваем видеокарту для игр | Тени
Рендеринг теней — чрезвычайно ресурсоёмкая нагрузка для графического процессора и именно она наносит значительный ущерб частоте кадров. Возможно, вы не задумывались об этом, но такие распространённые методы динамического моделирования теней, как метод теневых карт (shadow mapping), нередко требует повторного рендеринга всей сцены полностью — не лучшая идея, если у вас каждый кадр на счету.
Вы вряд ли захотите полностью отказаться от теней, поскольку они создают глубину и реализм картинки, но разумным решением будет снизить настройки до минимальных, что существенно разгрузит графический процессор и поднимет частоту кадров. При этом, в зависимости от игры, вы можете даже не заметить принципиальной разницы в качестве изображения.
Ещё один популярный метод моделирования теней и освещённости — это фоновое затенение (аmbient occlusion). Как намекает название, он отвечает за распространение лучей подсветки, в частности, за то, как разные объекты в кадре блокируют и отражают свет от его источника на окружающие объекты. Существует много типов фонового затенения, и самые распространённые из них скрываются за аббревиатурами SSAO, HBAO+, HDAO и 3DAO.
Отключив фоновое затенение, вы пожертвуете мелкими деталями теней и окрашенными в цвет отражениями на объектах и персонажах игр, но взамен вы получите дополнительный прирост частоты кадров.
Настраиваем видеокарту для игр | Отражения
Отражения — один из ключевых способов создания реалистичного мира с эффектом погружения. Мало что способно испортить впечатление от картинки так же, как мутное отражение в зеркале или частичное отражение персонажа, как будто это какое-то привидение или вовсе вампир.
Как и в случае с тенями, динамическое моделирование отражений — чрезвычайно ресурсоёмкая задача, особенно если необходимо просчитывать отражения несколько раз в секунду с быстро меняющихся точек обзора. Динамические отражения особенно заметны при движении вдоль глянцевых поверхностей и на ярком свету, хотя это далеко не всегда необходимо. Хотите поиграть в Overwatch на стареньком ноутбуке? Без проблем, просто отключите динамические отражения.
Настраиваем видеокарту для игр | Суперсэмплинг
Суперсэмплинг (SSAA, избыточная выборка сглаживания)— это классический метод полноэкранного сглаживания (FSAA), при котором графический процессор изначально рассчитывает картинку с гораздо более высоким разрешением, чем установлено на вашем мониторе. На основе цветов исходных пикселей моделируются цвета субпикселей, в результате чего повышается качество изображения.
К сожалению, суперсэплинг это не только самый старый метод антиалиасинга, но и самый требовательный к ресурсам: расчёт полной сцены в кратно повышенном разрешении создаёт повышенную нагрузку как на сам графический процессор, так и на видеопамять. И если для владельцев систем с избыточной производительностью это не проблема, то для всех остальных более полезна прямая противоположность суперсэмплинга — сабсэмплинг. Эта опция, доступная в некоторых играх (в том числе, в Overwatch), позволяет рассчитывать картинку в более низком разрешении, чем установлено на мониторе, а затем масштабировать до штатной. Конечно, при этом страдает качество и чёткость картинки, которая становится “замыленной”, зато вы получаете очень существенный выигрыш в игровой производительности.
Настраиваем видеокарту для игр | Антиалиасинг
Существует множество типов антиалиасинга, то есть сглаживания, и хотя все они призваны устранять эффекты “зубчатости” на краях объектов, делают они это по-разному. Некоторые типы антиалиасинга значительно сильнее сказываются на производительности, и только вам решать, стоит ли их использовать.
Если в прошлом (до появления DirectX 8) основным методом антиалиасинга был упомянутый выше суперсэмплинг, то сегодня используются более изощрённые технологии, пусть и использующие отдельные алгоритмы SSAA. Все методы сглаживания условно делятся на три группы: пространственное, основанное на повышении частоты сэмплирования, временнОе, которое базируется на данных из множества кадров и частично сэпмлов, и постпроцессинг, при котором эффекты накладываются на уже полностью рассчитанную сцену. Между ними есть и масса других тонких отличий.
MSAA и SSAA (он же FSAA) — варианты пространственного сглаживания, а в которых для устранения эффекта “лесенки” используется повышение частоты сэмплирования. В SSAA предварительно суперсэмплируется полностью вся сцена, а затем интерполируется для вывода на экран, что отнимает максимум ресурсов. MSAA (множественная выборка сглаживания) обрабатывает только отдельные части кадра, которые, по её оценкам, требуют сглаживания. При этом используется сложный алгоритм на основе треугольников. MSAA не настолько точен, как некоторые другие типы сглаживания, зато требует намного меньше вычислительной мощности.
Методы постпроцессинга, такие как FXAA (нетребовательное быстрое сглаживание), накладывают пиксельные шейдеры на результирующий кадр уже после его рендеринга и не имеют дела с полигонами или границами. FXAA работает очень быстро, требует мало ресурсов и эффективно устраняет “гребёнку”, что сделало его одной из главных технологий сглаживания в играх на сегодняшний день. Впрочем, некоторые геймеры считают, что он слишком “замыливает” картинку.
Если вы предпочитаете очень чёткое и резкое изображение, то ваш выбор — это SMAA или “субпиксельное морфологическое сглаживание”. Это также постпроцессинговая технология, работающая аналогично FXAA, но использующая улучшенное распознавание границ и кромок объектов. Текстуры становятся чётче, картинка гораздо менее размыта, а влияние на производительность остаётся небольшим. SMAA можно назвать “золотой серединой” между точностью сглаживания и нагрузкой на ресурсы.
Наконец, фирменная технология временнОго сглаживания TXAA от Nvidia работает не с одним кадром, а с несколькими: она использует сэмплы из предыдущих кадров для фильтрации кадра текущего. Этот метод хорош для устранения “лесенки”, но в результате вы получаете картинку, которую многие также считают слишком “замыленной”.
Если вам не подошёл ни один из описанных методов, просто отключите сглаживание полностью. Поверьте, ничего страшного не случится.
Настраиваем видеокарту для игр | Анизотропная фильтрация
Анизотропная фильтрация — это решение главной проблемы реалистичности изображения, существовавшей в компьютерных играх более десятилетия назад: как заставить текстуры выглядеть естественно под разными углами. Если использовать столь же детализированные текстуры для фона, как и те, что выводятся на передний план, будет задействоваться слишком много вычислительных ресурсов. Поэтому в играх для создания трёхмерных миров применяются мини-карты, и хотя это устраняет избыточную нагрузку на процессор, возникают проблемы иного рода.
При загрузке множества мини-карт в перспективе, становится очевидной разница в масштабе и разрешении, появляются видимые искажения, в результате чего фоновое изображение распадается на отдельные сегменты. Для устранения этого эффекта и была придумана анизотропная фильтрация, которая работала гораздо лучше, чем применяемая в этих целях ранее билинейная и трилинейная фильтрация. В отличие от предшественников, она позволяет сохранять чёткость удалённых текстур в перспективе, и это её важнейшее преимущество.
К счастью, современные видеокарты прекрасно реализуют анизотропную фильтрацию, так что её отключение даст минимальный прирост частоты кадров, заметить который невооружённым глазом просто не получится. Так что её стоит оставить включённой — например на коэффициенте 4x или 8x.
Настраиваем видеокарту для игр | Постобработка
К методам постпроцессинга относятся все эффекты, которые накладываются на картинку уже после первичного рендеринга. К ним относятся эффекты, которые используют всю информацию кадра, либо те, что улучшают лишь отдельные его свойства. По отдельности такие фильтры практически не влияют на производительность, однако если отключить или установить на минимум все эффекты постобработки, можно добиться значительного увеличения частоты кадров.
В распоряжении разработчика есть целый набор фильтров, предназначенных исключительно для создания эффектов киносъёмки, делая картинку более эстетичной. Motion Blur (эффект смазывания при быстром перемещении камеры), глубина резкости, Lens Flare (эффект блика от попадания солнечных лучей в объектив камеры) и хроматические аберрации — все они имитируют эффекты аппаратной кинокамеры. Кому-то нравятся эти эффекты, кто-то их терпеть не может, но только некоторые из них заметно влияют на производительность в видеоиграх.
При наложении эффекта, имитирующего глубину резкости, размывается фоновое изображение, особенно когда вы приближаете какие-то элементы игры. Отключение этого эффекта может повысить частоту кадров, но крайне незначительно. Стоит проверить, как это работает в каждой конкретной игре, и если разница минимальна, то можно его оставить.
Motion Blur смазывает изображение объектов при быстром перемещении. Этот эффект часто используется для снижения влияния низкой частоты кадров на общее впечатление от игры, но если вы намерены добиться стабильной скорости 60 кадров в секунду, имеет смысл его отключить.
Эффект “объёмных лучей” имитирует туман или дымку, сквозь которую прорываются несколько источников света. Он работает очень убедительно, но обходится высокой ценой, поскольку для его реализации необходимо обрабатывать каждый кадр, так что это очевидный кандидат на отключение. А вот всякого рода “сумеречные лучи”, “световые столбы” и “лучи света” практически не влияют на производительность, но выглядят красиво, так что их вполне можно оставить.
Фирменный эффект Nvidia Hairworks придаёт визуальную мягкость локонам волос Геральта из “Ведьмака”, но если вам не нужен пример того, как поседеть с достоинством, лучше отключить эту особенно требовательную функцию у видеокарт Nvidia. Аналогичный “волосяной симулятор” TressFX у AMD пожирает намного меньше ресурсов, но его также стоит отключить, есть вы уже собрались выжать максимум FPS.
Настраиваем видеокарту для игр | Расстояние и поле зрения
Здесь всё элементарно: чем больше объектов находятся на экране, тем больше ресурсов уходит на их рендеринг и обработку. Поле зрения — это перспектива мира, который вы видите на дисплее, и чем оно шире, тем больше объектов захватывается “периферийным зрением”. Расстояние — это виртуальный игровой горизонт, чем он дальше, тем большая перспектива просматривается игроком.
К счастью, в большинстве современных многопользовательских игр потенциальные отличия в качестве прорисовки и разнице в нагрузке при изменении расстояния и поля зрения сведены к минимуму на этапе разработки. Но если вы намерены идти до конца, то сделайте поле зрения как можно уже, а горизонт как можно ближе — если, конечно, при этом вам будет удобно играть.
Настраиваем видеокарту для игр | Чего можно добиться?
Чтобы проиллюстрировать, насколько высоко влияние описанных настроек на потенциальную частоту кадров, мы взяли две игры Overwatсh и Middle Earth: Shadows of War и запустили их на системе, состоящей из процессора Intel Core i7 8700K, видеокарты Nvidia GeForce GTX 1070, 16 Гбайт оперативной памяти DDR4-3200 и SSD-накопителя.
До внесения каких-либо изменений в настройки Ultra игра Overwatch шла со средней частотой 121 кадров в секунду на разрешении 1440p. Затем мы отключили фоновое затенение, установили минимальный уровень динамических отражений, минимальный уровень сглаживания FXAA и минимальный уровень детальности теней. Результат впечатлил: 196 кадров в секунду. Мы не трогали ни разрешение, ни настройки текстур, ни поле зрения. На самом деле, существенно повысить частоту кадров может одно только отключение отражений.
В игре Shadows of War мы установили минимальный уровень фонового затенения, средний уровень подсветки, низкий уровень сглаживания FXAA, средний уровень детальности теней и отключили эффект “смазывающей камеры” motion blur. В результате частота кадров выросла с посредственных 30 до гораздо более вдохновляющих 76 кадров в секунду.
Разумеется, это далеко не все возможные настройки, которые можно поменять в играх, чтобы выжать максимум из имеющейся видеокарты, мы просто подсказали направление, в котором стоит действовать. Каждый может найти оптимальный баланс между производительностью и качеством картинки, а простора для экспериментов здесь предостаточно.