Виды теней в играх. Улучшаем графику в любой игре (SweetFX и ENB)

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

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

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

Способ 1: ручная настройка

Для ручной настройки параметров видеокарты мы воспользуемся программным обеспечением, которое устанавливается вместе с драйвером. Называется софт просто: «Панель управления Nvidia» . Получить доступ к панели можно с рабочего стола, кликнув по нему ПКМ и выбрав нужный пункт в контекстном меню.

  1. В первую очередь находим пункт «Регулировка настроек изображения с просмотром» .

    Здесь переключаемся на настройку «Согласно 3D приложению» и нажимаем кнопку «Применить» . Этим действием мы включаем возможность управления качеством и производительностью непосредственно той программой, которая использует видеокарту в данный момент времени.

  2. Теперь можно переходить к глобальным настройкам параметров. Для этого переходим в раздел «Управление параметрами 3D» .

    На вкладке «Глобальные параметры» мы видим длинный список настроек. О них и поговорим подробнее.


  3. По завершению всех настроек следует нажать на кнопку «Применить» . Теперь данные глобальные параметры можно перенести в любую программу (игру). Для этого переходим на вкладку «Программные настройки» и выбираем нужное приложение в выпадающем списке (1).

    Если игра отсутствует, то жмем на кнопку «Добавить» и ищем соответствующий исполняемый файл на диске, например, «worldoftanks.exe» . Игрушка добавится в список и для нее мы выставляем все настройки в положение «Использовать глобальный параметр» . Не забываем нажать на кнопку «Применить» .

По наблюдениям, такой подход позволяет повысить производительность в некоторых играх до 30%.

Способ 2: автоматическая настройка

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


Совершив данные действия в Nvidia GeForce Experience, мы сообщаем видеодрайверу максимально оптимизированные настройки, подходящие к конкретной игре.

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

Анизотропная фильтрация . Когда некая текстура отображается на дисплее не в своем истинном размере, в нее добавляются либо убираются пиксели. Это и называется фильтрацией. Другими словами фильтрация убирает ступенчатость и размытие изображения. Самый продвинутый вид фильтрации – это анизотропная фильтрация. Имеет настройку степени фильтрации (2х, 4х, 8х, 16х). Чем выше степень, тем реалистичнее выглядит картинка. Вполне достаточно степени 4х и 8х, а еще лучше ставить на максимум. Выключать фильтрацию не имеет смысла, т.к. она никак не влияет на количество кадров в современных видеокартах.

2 шаг

Anti-Aliasing (Сглаживание). Сглаживание работает так. Просчет кадров происходит в увеличенном разрешении до вывода на экран. После этого результат уменьшается до нужных размеров. В результате «лесенка» по краям картинки становиться не такой заметной. Чем выше степень сглаживания (2х, 4х, 8х, 16х, 32х) – тем лучше изображение. Отключать Anti-Aliasing бессмысленно по той же причине, что и предыдущую настройку.

3 шаг

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

4 шаг

Тесселяция . Эта опция повышает количество полигонов в несколько раз, что способствует увеличению детализации изображения. Для использования тесселяции игра должна поддерживать DirectX 11. Лучше устанавливать варианты moderate либо normal. На слабых видеокартах возможны артефакты изображения. Если комп нормальный, можете не выключать.

Вопрос одного из пользователей

Доброго времени суток. Можно ли как-то повысить производительность видеокарты NVIDIA (GeForce), то бишь увеличить FPS? Видеокарта у меня уже довольно старая, а запустить парочку игр - желание не преодолимое ...

Здравствуйте!

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

Чтобы увеличить количество FPS (это кол-во кадров в секунду, чем выше этот параметр - тем лучше!), выдаваемое видеокартой, можно прибегнуть к разным способам: разогнать видеокарту, уменьшить качество графики в настройках игры, задать оптимальные параметры драйвера видеокарты (с прицелом на производительность ). Вот о тонкой настройки видеокарты, я и напишу пару строк в этой статье...

Примечание! Возможно вам будут интересны следующие статьи по теме:

  • ускорение видеокарты AMD -
  • ускорение видеокарты IntelHD -
  • как узнать и повысить FPS в играх - несколько способов:

Тонкая настройка драйвера видеокарты NVIDIA // для повышения производительности

Важная заметка!

Многие пользователи трактуют и понимают понятие "производительность" совсем по разному. В этой статье я буду отталкиваться от параметра FPS (именно в нем мерить производительность). Чем выше FPS - тем выше производительность!

Чтобы измерить текущее количество FPS в вашей игре - рекомендую воспользоваться программой FRAPS (о ней я рассказывал в этой статье: ).

Задайте в настройках FRAPS кнопку для показа количества FPS - и в верхнем углу экрана, после запуска игры, вы увидите значение этого параметра. Кстати, рекомендую его запомнить, чтобы сравнить с показателем, который будет после нашей настройки видеокарты...

В левом углу экрана FRAPS показывает желтыми цифрами количество кадров в секунду - то есть FPS!

Как войти в панель управления NVIDIA

Первое, что нужно сделать - это войти в панель управления и настроек NVIDIA (GeForce). Сделать это можно разными путями: например, самый простой, это щелкнуть в любом месте рабочего стола правой кнопкой, и во всплывшем контекстном меню выбрать нужную ссылку (см. скриншот ниже).

Как войти в панель управления NVIDIA // GeForce - Способ №1: с рабочего стола

Еще один способ - это зайти в панель управления Windows, затем открыть раздел "Оборудование и звук" , в этом разделе должна быть заветная ссылка (см. скрин ниже).

Способ №2 - через панель управления Windows // панель управления NVIDIA

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

утилиты для поиска и обновления драйверов -

Быстрая настройка NVIDIA с упором на производительность

В панели управления видеокартой откройте раздел "Параметры 3D/Регулировка настроек изображения" , далее поставьте ползунок в режим "Пользовательские настройки с упором на производительность" и двиньте его до конца в левую часть (см. показательный скриншот ниже).

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

Глобальные параметры

Гораздо более продуктивно настроить видеокарту поможет раздел "Управление параметрами 3D" , где все основные параметры можно задать в ручном режиме.

Для повышения FPS в играх, нужно задать следующее:

  1. Анизотропная фильтрация : влияет на производительность видеокарты очень сильно, поэтому ее отключаем.
  2. Сглаживание прозрачности : помогает сделать в играх более качественную картинку воды (например). Ресурсов "ест" прилично, поэтому так же отключаем. Да и вообще, все сглаживания можно отключить !
  3. Тройная буферизация : выключаем;
  4. Вертикальная синхронизация (V-Sync) : параметр, в некоторых играх, влияет очень сильно на количество выдаваемых кадров, поэтому выключаем;
  5. Включить масштабируемые текстуры : нет;
  6. Ограничение расширения : выключаем;
  7. Режим управления электропитанием : ставим режим максимальной производительности;
  8. Максимальное количество заранее подготовленных кадров : 1;
  9. Ускорение нескольких дисплеев/смешанных ГП : Режим однодисплейной производительности;
  10. Фильтрация текстур (анизотропная оптимизация по выборке): выключаем;
  11. Фильтрация текстур (отрицательное отклонение УД): привязка;
  12. Фильтрация текстур (качество): ставим ползунок на производительность;
  13. Фильтрация текстур (трилинейная оптимизация): выключаем;
  14. Фильтрация текстур (анизотропная оптимизация фильтрацией): выключаем;
  15. Вертикальный синхроимпульс : ставим адаптивный;
  16. Потоковая оптимизация : выключаем;
  17. PhysX : ЦП.

Замечание! Некоторые режимы и параметры, перечисленные выше, могут отсутствовать в ваших настройках (либо называться несколько иначе ("трудности" перевода )). Все зависит от модели вашей видеокарты и версии драйвера (пример, как выглядит эта вкладка, показан на скриншоте ниже).

Панель управления NVIDIA: глобальные настройки

После введенных настроек не забудьте их сохранить, в некоторых случаях желательно перезагрузить компьютер, и только потом переходить к тестам (замеру FPS). Довольно часто производительность видеокарты вырастает существенно: до 15-20% (согласитесь, что без разгона и каких-то не было рискованных дел - ускорить на такой процент, весьма не плохо)!

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

Программные настройки

Если у вас тормозит какая-то конкретная игра (а с остальными все в норме) - то есть смысл изменять не глобальные параметры, а параметры для отдельно взятого приложения! Дабы в настройках NVIDIA для этого есть специальная вкладка. Таким образом, с низким качеством графики у вас будет запускаться какая-то одна конкретная игра, а не все.

Сами параметры в этой вкладке нужно задавать аналогично тем, которые я приводил чуть выше.

Панель управления NVIDIA: программные настройки

Чтобы ускорить работу игр на вашем компьютере, дополнительно посоветую следующее:

На этом у меня всё, за дельные советы и дополнения - отдельное мерси. Удачи!

Теперь же поговорим о еще одном эффекте, который позволяет серьезно улучшить реалистичность картинки - о Ambient Occlusion (AO), или о затенении.

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

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

Но тут возникает вопрос - а как это рассчитать-то? Увы - алгоритма, дающего 100% точное рассеяние света в real-time, нет, однако есть множество хорошо приближенных к реальности алгоритмов, отлаженных настолько, что они спокойно используются в видеоиграх.

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

Однако тут мы получаем очередную проблему - отрисовка геометрии происходит постепенно, поэтому заграждающий фактор также в процессе отрисовки может серьезно меняться. Можно, конечно, рассчитать AO на этапе загрузки сцены, но тогда затенение не коснется динамических объектов (персонажей, машин и т.д.) - а это нехорошо. И тут приходит идея использовать для отрисовки затенения экранное пространство (Screen Space), что в итоге выливается в простейший алгоритм AO - SSAO.

SSAO

Этот алгоритм появился еще в Crysis 10 лет назад. Его суть проста: после построения геометрии у нас остается Z-буфер, или буфер глубины, который включает в себя абсолютно всю информацию о геометрии сцены - а значит никаких проблем сделать AO нет.

Хотя, конечно, кого я обманываю - проблемы есть, и самая серьезная - недостаточная производительность современных видеокарт: для того, чтобы получить более-менее неплохую карту затенения, для каждого фрагмента сцены нужно обсчитывать порядка 200-250 направлений, что позволяет «закопать» любой GPU. Поэтому делается хитрее - используется 8-32 «луча», направленные на выбранный фрагмент сцены, которые каждый раз поворачиваются на случайное значение. В итоге получается терпимое качество картинки с не очень большими затратами на расчеты:

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

HBAO и HBAO+

Nvidia не была бы Nvidia, если бы не стала развивать затенение дальше, представив в 2008 году HBAO - Horizon Based Ambient Occlusion. От SSAO это затенение отличалось тем, что оно основано на физической модели, где аппроксимируется интеграл освещенности фрагмента сцены со значениями выборки буфера глубины. Итоговое качество оказывается выше SSAO при большом числе выборок, но мы опять же упираемся в производительность. Поэтому HBAO рендерится обычно в более низком разрешении, что приводит к мерцанию картинки.

Проблема мерцания была исправлена в HBAO+ простым методом, который сейчас активно использует Sony в 4К играх на PlayStation 4 Pro: для рассчета HBAO+ используется шахматный рендеринг, то есть для обработки затенения используется часть предыдущего кадра и половина нового: это требует меньше затрат GPU, но при этом позволяет рендерить затенение в исходном разрешении, что и убирает мерцание.

HDAO

AMD в стороне не остались, и стали использовать собственное затенение (которое, к слову, также работает и на Nvidia) - HDAO (High Definition AO). Увы - AMD не делится алгоритмом, однако известно, что в его основе лежит Gather4 - технология, которая собирает 4 текселя в один регистр. То есть, как и с HBAO, по сути происходит рендеринг в пониженном разрешении. В итоге, в среднем картинка с HBAO и HDAO сравнима по качеству, но опять же - все достаточно сильно зависит от игры: к примеру, в Far Cry 3 с HDAO трава выглядит красивее:

VXAO

С выходом DX12 Nvidia представила принципиально новое затенение - VXAO (Voxel Accelerated Ambient Occlusion). Его суть в том, что оно работает уже не с пикселями и текселями (то есть 2D-объектами), а с вокселями - аналогом пикселя в 3D. И теперь мы используем не Z-буфер, а воксельное построение сцены, поэтому алгоритм состоит из трех пунктов: вокселизация, постобработка вокселей и трассировка конуса. Вокселизация выполняется путем рендеринга треугольных сеток в трехмерную текстуру, и поэтому ее производительность сильно зависит от общего количества треугольников, размера этих треугольников и количества вызовов рисования, необходимых для их рендеринга. Постобработка объединяет проходы, такие как очистка, фильтрация и понижающие выборки вокселей, а ее производительность зависит от общего количества вокселей, созданных во время вокселизации. Типичное время после обработки составляет 0,5 - 1,5 мс. И, наконец, трассировка конуса выполняется в пространстве экрана, поэтому его производительность зависит от разрешения экрана и скорости затенения. Итоговое качество картинки оказывается в куда лучше, чем с HBAO+:


На этом все. Советы для игроков простые: если компьютер хорошо тянет игру без AO, то можно попробовать включить SSAO или HBAO - обычно это снижает fps не более чем на 10%. Если же и с ними производительность отличная - можно попробовать HBAO+ и HDAO. Ну и для самых топовых видеокарт современности можно порекомендовать набирающее обороты VXAO - оно крайне требовательно к ресурсам (в том числе и к видеопамяти), поэтому даже в FHD оно будет доступно лишь пользователям старших Nvidia GTX 900ой и 1000ой линейки, а также владельцам старших AMD RX, Fury и Vega.

Дисклеймер

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

Определение "Уязвимых" мест вашего железа

Основываясь на системных требованиях можно определить слабые места вашей системы(если они есть).

Какие роли играют различные устройства компьютера в играх:

(В данном разделе будут приведены грубые примеры для более краткого и понятного объяснения)

Процессор

"Руководитель" вашего компьютера который "говорит" каждому устройству как работать.
Например: процессор посылает кол-во ресурсов который нужно сгенерировать и "зарисовать" видеокарте,затем когда видеокарта сделала свое дело, "обработанные ресурсы" возвращаются процессору и тот распределяет их.
Если в общем, то процессор обсчитывает расположение и взаимодействие объектов в играх.
Тут важна мощность ядер,а не их количество.

Оперативная память

Сюда складываются временные ресурсы ваших устройств на "про запас".
Например:Видеокарта сделала четкую текстуру человека во время загрузки уровня.Пока вы далеко от "владельца" этой текстуры,то будет использована более простая текстура для повышения производительности.Когда вы подойдете поближе-процессор быстро выгрузит эту самую текстуру из ОЗУ.
Тут важно общее количество гигов ОЗУ

Видеокарта

Самая важное устройство требуемое для игр.
Видеокарта берет на себя самую "грязную" работу в играх.
1)Зарисовывает текстуры
2)Высчитывает физику (не всегда)
3)Выводит картинку на экран
4)Обрабатывает шейдеры
и много других не мало важных вещей
К слову,все что вы видите на своем мониторе - это и есть труды вашей видеокарты.
Тут важны несколько параметров
1)Графический процессор видеокарты (он же GPU)
2)Объем временной видеопамяти

Постоянная память

В ПЗУ находятся все файлы игры требуемые для нормальной игры.

Базовые настройки,которые присутствуют во всех играх

Разрешение экрана

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

Режим отображения

Яркость игры

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

Поле зрения

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

Вертикальная синхронизация

Непредсказуемая мадмуазель,о которой спорят в интернете по сей день.
Нужна для устранения разрывов в изображении путем подготовки кадров.
Дело в том,что вертикальная синхронизация может либо помочь вашей проблеме,либо усугубить ситуацию.
Тут зависит от того,как разработчики запилили V-sync под игровой движок.
Поэкспериментируете с этой настройкой.

Ограничение FPS

Всегда ставить 60 кадров,потому что FPS связан с движком игры и влияет на физику.При очень высоком значении,физика может "сходить с ума"

Детализация текстур

Этот параметр отвечает за качество всех текстур в игре.
Я считаю что этот параметр приоритетным,так как сильно и часто бросается в глаза и влияет на впечатление от игры . Если у вас мало временной памяти в видеокарте(<2 GB),то рекомендуется ставить низкие/средние настройки графики
Низкие VS Ультра↓

Детализация персонажей

Этот параметр отвечает за 2 настройки:
1)Дальность прорисовки четких текстур (Например:30,70,150 метров)
2)Определение для самого параметра "Четкие текстуры" (Например:низкое,среднее,высокое качество текстуры)
На далеком расстоянии от вас модели персонажей иметь простые текстуры (или же текстуры низкого качества),при приближение на определенное настройкой расстояние текстуры начнут прорисовываться до заданного настройкой качества.
Требует временную память видеокарты и ОЗУ.
Я считаю что данной настройкой можно пожертвовать ,я не думаю что во время игры вы будете разглядывать каждую морщинку персонажа.
Низкие VS Ультра↓

Детализация воды

Этот параметр отвечает за 3 настройки
1)Пена (эффект волн при взаимодействии с водой)
2)Блики
3)Отражения
Я считаю что этот параметр можно смело ставить на очень низкий ,так как с водой во время игры вы встречаетесь редко,а также вода сделана не убого поэтому глаза резать не будет.
Требует мощной видеокарты (из за "Пены")
Очень низкие VS Ультра↓

Детализация окружения

Детализация теней


1)Дальность прорисовки теней
2)Точность прорисовки теней
Я считаю что тени на ультра и высоких выглядят неправдоподобно.Это можно исправить при помощи технологии NVIDIA PCSS,но она в дизоноред не встроена:с
можно ставить на низкие или средние ,потому что не режут глаза.
Тени требовательны к видеокарте
Очень низкие VS Ультра↓

Качество декалей

Этот параметр отвечает за несколько настроек
1)Количество одновременно прорабатываемых декалей
2)Время до исчезновения декалей
Можно ставить на любой настройке по вашему вкусу. Любите когда при боевке остаются много мелких деталей от стен,крови,снарядов.
Требует ресурсы видеокарты
Очень низкие VS Ультра↓

Сглаживание

Данный параметр будет трудно отобразить на скриншотах,так как стим снижает разрешение скриншота. Разрешение игры - 1980x1080,Разрешение скриншота - 1904 × 1001 ¯\_(ツ)_/¯
Устраняет "ступенчатость" картинки
Крайне рекомендую ставить TXAA с резкостью <15.Влияет на впечатление от игры,с этой настройкой мир становится реалистичнее.
FXAA-никак не влияет на производителность
TXAA-идет по коэффициенту в зависимости от полузнка "резкость"




Top