Что такое dof в сталкере
Что такое dof в сталкере
TEKTON Новостей: 296 |
Lass Новостей: 159 |
Han Viachko Новостей: 146 |
M0_ops Новостей: 134 |
Максим Яzон Новостей: 124 |
ud-25 Новостей: 116 |
Скелет Новостей: 116 |
SNORK комментариев: 1898 |
ud-25 комментариев: 1136 |
TEKTON комментариев: 839 |
влад1806 комментариев: 608 |
Vladislav комментариев: 567 |
gonome комментариев: 567 |
Максим Яzон комментариев: 455 |
Пользователей: |
Новых: 6 |
За час: 2 |
За месяц: 77 |
Всего: 47504 |
Приветствуем новичка: JefferyTef |
Администраторов: 1
Модераторов: 1
Журналистов: 2
Появился ещё один довольно симпатичный графический мод, делающий краски игры более насыщенными. Установка возможна на «Тени Чернобыля» версии 1.004, 1.005, 1.006.
Этот шейдер мод добавляет динамические глубины резкости (DOF), а также зум DOF, тех великих визуальных эффектов известно из новых игр, таких как CS, КС, Crysis и Far Cry 2. Это полностью совместимы большинство других модов.
Автор: Meltac (C) 2011
Этот небольшой мод добавляет динамические глубины резкости (DOF), а также зум DOF в режим рендеринга r2 (динамическое освещение).
Он построен на STALKER шейдеры MAX 1,02 по Kingo64, который построен на Sky4Ace шейдеры, которые включены
DOF только на большие расстояния, и статически.
— Протестировано с патчем 1,0005 и 1,0006. Должны также работать с 1,0004.
— Работает только с динамическим освещением / r2 режим рендеринга (r1 может следовать).
— Не работает в сочетании с любой другой мод шейдеров, однако, должны быть легко объединены в Sky4Ace шейдеров.
— Должен работать кроме того, что с любой другой мод, однако слияние файлов bind_stalker.script могут потребоваться.
— Открыть файл shaders/r2/ShaderSettings.txt в блокноте или любом другом текстовом редакторе.
— Под DOF можно задать все глубины резкости специфические настройки шейдеров. Все настройки прокомментировал.
— В игре используется r2_aa_kernel [значение] в консоли, чтобы выбрать используемый алгоритм размытия, где [значение] является:
для классического алгоритма: 0,3, а для Gaussian Blur: 0,7
Стремясь к небу не сбросит фокусное расстояние, что может привести к неправильной глубине полевые эффекты размытия.
Однако, стремясь любой объект (ничего, кроме неба) будет сброшен эффект правильно. На данный момент я не уверен,
ли это может быть исправлено с чистым код шейдеров вообще, или оно плохое поведение двигателя, которые могут быть исправлены
только скрипты (что было бы окончательно работать только для патча 1,0006).
Нет вопросов, кроме выше известных на данный момент.
Использование и об авторах:
Вы можете использовать, модифицировать и развернуть этот мод тех пор, пока вы даете кредиты авторов:
— Kingo64 для оригинальной игры STALKER шейдеры MAX (который в свою очередь шейдер компиляции, см. тех авторов)
— Meltac для этого динамического добавления глубины поля шейдеров.
Большое спасибо всем, кто помог развивающимся этот мод, особенно удивительным моддеров на GSC первым!
Скриншот:
Что такое dof в сталкере
Глубина резко изображаемого пространства (ГРИП), глубина резкости — расстояние вдоль оптической оси объектива между двумя плоскостями в пространстве предметов, в пределах которого объекты отображаются в сопряжённой фокальной плоскости субъективно резко.
Проще говоря, Глубину резкости используют что бы размыть фон или создать фокус на определённый объект на скриншоте.
Обычная глубина резкости используется для размытия фона, обычно ее используют на более открытых пространствах.
Глубина резкости имеет 2 настройки: Межузловое расстояние и начальное расстояние.
Ползунок начального расстояния отвечает за то, с какого расстояния начинается размытие, для примера я возьму 336,85.
Ползунок межузлового расстояния отвечает за расстояние между узлами (слоями) размытия.
Тоесть чем меньше межузловое расстояние, тем сильнее размывается фон с расстоянием.
Пример скриншота с межузловым расстоянием 8.
Пример скриншота с межузловым расстоянием 200.
Тут всё банально, объяснять не вижу смысла.
Пример скриншота с величиной размытия 1.
Пример скриншота с величиной размытия 10.
Пример скриншота со значением формы 1.
Пример скриншота со значением формы 0.
Пример скриншота со значением формы 0,5.
Радиалы отвечают за количество повторений смещения.
(мой мозг не может выдать должного определения данного понятия поэтому приведу банальный пример)
При значении формы 1, и значении радиалов в 20 объект фокуса на скриншоте будет смещаться вниз-вверх 20 раз
P.s большое количество радиалов не имеет смысла если количество проходов меньше количества радиалов.
Пример скриншота с радиалами значением в 64.
Пример скриншота с радиалами значением в 1.
Что такое dof в сталкере
Удобность влияет на точность стрельбы от бедра.
В формуле этот параметр имеет роль множителя, и при максимальной «удобности», перестаёт влиять на точность стрельбы, принимая значение единицы.
Удобность не влияет на скорость возврата перекрестия в исходное положение, также как и на чувствительность мыши.
Удобность влияет на точность стрельбы от бедра.
В формуле этот параметр имеет роль множителя, и при максимальной «удобности», перестаёт влиять на точность стрельбы, принимая значение единицы.
Удобность не влияет на скорость возврата перекрестия в исходное положение, также как и на чувствительность мыши.
Что такое dof в сталкере
Руководство о том как настраивать DOF и за что отвечает каждый ползунок
1,596 | уникальных посетителей |
35 | добавили в избранное |
Глубина резко изображаемого пространства (ГРИП), глубина резкости — расстояние вдоль оптической оси объектива между двумя плоскостями в пространстве предметов, в пределах которого объекты отображаются в сопряжённой фокальной плоскости субъективно резко.
Проще говоря, Глубину резкости используют что бы размыть фон или создать фокус на определённый объект на скриншоте.
Обычная глубина резкости используется для размытия фона, обычно ее используют на более открытых пространствах.
Глубина резкости имеет 2 настройки: Межузловое расстояние и начальное расстояние.
Ползунок начального расстояния отвечает за то, с какого расстояния начинается размытие, для примера я возьму 336,85.
Ползунок межузлового расстояния отвечает за расстояние между узлами (слоями) размытия.
Тоесть чем меньше межузловое расстояние, тем сильнее размывается фон с расстоянием.
Пример скриншота с межузловым расстоянием 8.
Пример скриншота с межузловым расстоянием 200.
В отличии от обычной глубины резкости имеет возможность размытия переднего плана и дополнительные настройки. Ползунок «величина размытия» отвечает, как ни странно, за величину размытия.
Ползунок «расстояние фокусировки» отвечает за расстояние до объекта на который будет фокусироваться камера.
Ползунок «проходов» отвечает за количество рендеров при прорисовке глубины резкости.
Ползунок «форма» отвечает за смещение фокусировки при прорисовке глубины резкости.
Ползунок «радиалов» отвечает за количество смещений при прорисовке глубины резкости.
Тут всё банально, объяснять не вижу смысла.
Пример скриншота с величиной размытия 1.
Пример скриншота с величиной размытия 10.
Пример скриншота со значением формы 1.
Пример скриншота со значением формы 0.
Пример скриншота со значением формы 0,5.
Радиалы отвечают за количество повторений смещения.
(мой мозг не может выдать должного определения данного понятия поэтому приведу банальный пример)
При значении формы 1, и значении радиалов в 20 объект фокуса на скриншоте будет смещаться вниз-вверх 20 раз
P.s большое количество радиалов не имеет смысла если количество проходов меньше количества радиалов.
Пример скриншота с радиалами значением в 64.
Пример скриншота с радиалами значением в 1.
Появился ещё один довольно симпатичный графический мод, делающий краски игры более насыщенными. Установка возможна на «Тени Чернобыля» версии 1.004, 1.005, 1.006.
Этот шейдер мод добавляет динамические глубины резкости (DOF), а также зум DOF, тех великих визуальных эффектов известно из новых игр, таких как CS, КС, Crysis и Far Cry 2. Это полностью совместимы большинство других модов.
Все необходимые ссылки находятся внутри архива.
Как скачивать с Turbobit бесплатно:
Что такое dof в сталкере
В игре есть абсолютная и относительная системы координат.
Чтобы задать положение элемента на экране, достаточно задать координаты его верхнего левого угла, длину и ширину. Все остальное сделает программа. Это и есть абсолютная система координат.
Теперь рассмотрим относительную систему координат.
Возьмем для примера счетчик НПС на карте. Счетчик состоит из текстуры ui_hud_map_counter и числового значения счетчика.
Как видите, текстура счетчика имеет свои координаты, а вот числовое значение счетчика берет отсчет не от верхнего угла экрана, а от верхнего угла текстуры, на которой он расположен. Теперь если мы изменим координаты текстуры счетчика, его числовое значение «последует» за текстурой.
Вот это и есть относительная система координат.
background – подложка для положения ГГ, а так же полоски выносливости, уровня шума и заметности ГГ
state_normal – нормальное положение
state_crouch – в приседе
state_creep – в полном приседе
state_climb – подъем по лестнице
state_run – в движении
state_sprint – бег
power_progress – шкала выносливости ГГ
luminosity_progress – шкала «видимости» ГГ
noise_progress – шкала издаваемого шума ГГ
level_frame – непосредственно сама миникарта
background – подложка карты
dist_text – дистанция до цели
compass – компас на миникарте
center – «точка» ГГ на миникарте
Список задействованных файлов и описание:
inventory_new.xml – содержит основные конфиги инвентаря
inventory_item.xml – описание и параметры предмета в инвентаре
af_params.xml – описание и параметры артефактов в инвентаре
Помимо конфигурационных файлов используются еще файлы текстур: ui_inventory.dds, ui_inventory2.dds. Набор текстур, представленный в данных файлах, расписаны в ui_inventory.xml и ui_inventory2.xml.
Рассмотрим более детально перечисленные файлы.
properties_box – подложка
main – окно инвентаря
belt_slots – слоты
back – сам инвентарь, окно описания и параметров предметов, иконка ГГ в полный рост, параметры костюма
bottom_static – «полоска» внизу экрана
dragdrop_bag – рюкзак, здесь
cell_width, cell_height – ширина и высота ячейки
rows_num – количество строк
cols_num – количество столбцов
af_params.xml
В этом файле описаны параметры артов. Каждый параметр имеет текстуру и текст.
Список задействованных файлов и описание:
carbody_new.xml – содержит основные конфиги окна обыска
carbody_item.xml – описание и параметры предмета в окне обыска
Рассмотрим более детально перечисленные файлы
static_icon – иконки ГГ и мертвого НПС/мутанта
our_bag_static – рюкзак ГГ
dragdrop_list_our – описание сетки рюкзака ГГ
others_bag_static –
dragdrop_list_other – описание сетки
frame_window – центральная часть окна обыска, состоящая из двух частей:
верхней, где показаны иконка предмета, его состояние, вес и цена, и нижней, где представлено описание предмета
descr_static – окно описания предмета
auto_static – надпись «Описание»
take_all_btn – секция кнопки «Взять все»
bottom_background – текстура полосы вверху окна обыска
top_background – текстура полосы внизу окна обыска
auto – секция, в которой описаны надписи «Вес», «Цена» и «Состояние»
static_name – название предмета
static_weight – числовое значение веса
static_cost – числовое значение цены
descr_list – описание предмета
image_static – иконка предмета
condition_progress – шкала состояния предмета
wpn_params – секция параметров оружия
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):