Сглаживание

Сгла́живание (англ.  anti-aliasing ) — технология, используемая для устранения эффекта «зубчатости», возникающего на краях одновременно выводимого на экран множества отдельных друг от друга плоских или объёмных изображений. Сглаживание было придумано в 1972 году в Массачусетском технологическом институте в Architecture Machine Group, которая позже стала основной частью Media Lab.

Гайд. За что отвечают настройки графики в играх и как они влияют на FPS

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

Изображение, которое вы видите на экране, состоит из пикселей. Разрешение — это количество пикселей в строке, где первое число — их количество по горизонтали, второе — по вертикали. В 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)

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

Здесь и далее — слева изображение с отключенной графической опцией (или установленной на низком значении), справа — с включенной (или установленной на максимальном значении).

Технологий сглаживания несколько, вот основные:

  • Суперсэмплинг (SSAA) — самое эффективное сглаживание, но вместе с тем — жутко требовательное к ресурсам. Работает оно просто: ваша видеокарта рендерит картинку в гораздо более высоком разрешении, чем задано в настройках, а потом «ужимает» его обратно. Чем выше это значение, тем лучше сглаживание и тем выше нагрузка на компьютер. Грубо говоря, при значении SSAA 4X ваш ПК будет вынужден за одно и то же время обсчитать одну и ту же сцену четыре раза, а не один.
  • MSAA — мультисемплинг. По эффективности схож с SSAA, но работает совершенно по-другому (объяснить его простыми словами довольно сложно, но это, пожалуй, и не нужно), а потому менее требователен к ресурсам. Если компьютер позволяет, именно это сглаживание стоит пробовать включать в первую очередь. Картинка лишь едва-едва потеряет в четкости, зато лесенки почти исчезнут.
  • FXAA (Быстрое сглаживание) — более простой способ сглаживания. На всю картинку попросту накидывается размытие. Вообще не влияет на производительность, но добавляет в изображение очень много «мыла». В большинстве случаев уж лучше терпеть «лесенки», но тут кому как.
  • TXAA («Временное сглаживание») / MLAA («Морфологическое сглаживание») — то же самое, что MSAA, но еще эффективнее. Первый тип поддерживается видеокартами Nvidia, второй — AMD. Если в игре есть один из этих вариантов, лучше всего использовать именно его. Почти идеальный баланс между эффективностью и производительностью.

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

От ничтожного (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 помогает передать динамику при перемещениях объекта. Работает он просто: когда вы быстро двигаете камерой, изображение начинает «плыть». При этом главный объект (например, руки персонажа с оружием) остается четким.

Графическое «шлифование» линий

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

Такая технология «antialiasing», создана еще в 1972 году в Массачусетском технологическом институте. Изначально разработка Architecture Machine Group предназначалась для более комфортного (для пользователя) отображения текста.

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

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

  • математическую трехмерную модель обрабатывает видеокарта (описывает и создает и размещает образы, задействованные в изображении);
  • на них накладываются текстуры, детали, тени, видеоэффекты;
  • готовая трехмерная модель подвергается рендеригну, вследствие чего формируется двумерное изображение для очередного кадра.

Antialiasing можно производить как на стадии создания трехмерного пространственного образа, так и на плоской картинке, подготовленной видеокартой к отправке на экран. На что влияет выбранный способ обработки не трудно догадаться. В первом случае задействуются практически ресурсы GPU и VRAM, но ведь они для этого и предназначены. Исходя из этого, различают следующие технологии сглаживания:

Краткий обзор по сглаживанию в играх

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

JhMxDvoPZ20

Что такое сглаживание? Наиболее простой ответ дает Википедия.
Сглаживание (anti-aliasing, AA, антиалязинг, антиалайзинг и тд) — технология, используемая для устранения эффекта «зубчатости», возникающего на краях одновременно выводимого на экран множества отдельных друг от друга плоских, или объёмных изображений. Сглаживание было придумано в 1972 в Массачусетском технологическом институте в Architecture Machine Group.
Что бы вам не пришлось много читать, сразу приведу основные варианты сглаживаний. Точно так же они обычно обозначаются и в играх.
SSAA, MSAA, CSAA, NFAA, FXAA, DLAA, MLAA, SMAA, TXAA.

Начну с самого крутого, правильного качественного и самого «жрущего» сглаживания – SSAA или по-другому — Super-Sampling. Простой пример потребляемых ресурсов этим методом сглаживания: для разрешения 1280×1024 с SSAA 4x необходим экранный буфер такого же размера, как при разрешении 2560×2048 без SSAA. Размытие картинки – НЕТ. Еще этот метод сглаживания называют FSAA. Рекомендую применять владельцам только самых топовых ПК (видеокарт).

MSAA – улучшенный вариант суперсемплинга (SSAA). Практически такой же по качеству, но требующий меньшее количество ресурсов видеокарты, по сравнению с SSAA. Размытие картинки – очень незначительное, практически не уловимое. И хотя этот метод сглаживания требует меньше ресурсов, чем его первый собрат, этот вариант АА так же рекомендуется владельцам топовых видеокарт.

CSAA – разработка NVIDIA. Усовершенствованный (немного) MSAA. Качество картинки примерно на уровне MSAA 8x, но по ресурсам ест как MSAA 4x. Размытие картинки – незначительное, практически не уловимое. Из последних игр, в которых его использовал – Star Wars Battlefront (DICE).

FXAA – известен своим низким требованиям к видеосистеме. Сглаживает вполне прилично, я бы сказал хорошо. Но есть один недостаток, который заметен, скажем, при сравнении с MSAA – «замыливание» картинки. Оно больше, чем среднее. Подойдет для тех, кто не терпит лесенки, но не может себе позволить предыдущие алгоритмы сглаживания.

MLAA – малоизвестный алгоритм сглаживания. Единственный алгоритм, который работает за счет процессора, а не видеокарты. Он не зависит от сложности сцены, так что можно гарантировать отсутствие «подтормаживаний» в любой момент. Intel позиционирует MLAA как конкурента MSAA. Если судить объективно, MSAA работает немного медленней, но и качественней. По сравнению MLAA с FXAA первый будет медленнее, но при этом качество картинки – без заметного «замыливания».

SMAA – смесь FXAA и MLAA. По скорости находится между FXAA и MSAA. По качеству – картинку практически не блюрит.

TXAA – новый алгоритм сглаживания. Сочетает преимущества MSAA и FXAA. Разработка NVIDIA. Сглаживает ОЧЕНЬ качественно. TXAA 4x = MSAA 8x. Хотя порой первый даже лучше. НО. TXAA «мылит» картинку. «Блюрит» ее. И если сравнивать с MSAA – последний выглядит лучше.

Итог: чОткий, но самый древний алгоритм сглаживания – SSAA. MSAA – очень хороший по качеству, но ест заметно много ресурсов. CSAA – практически такой же по качеству, но ресурсов ест меньше. FXAA – если видеокарта не позволяет, но «сглаживать» хочется, то этот вариант для вас. MLAA – на него можете забить. SMAA – нормальный вариант, можете его опробовать. TXAA – сглаживает очень хорошо. Очень. Но блюр очень раздражает. Поэтому могу рекомендовать этот алгоритм, если вам плевать на «замыливание».

Кстати. В разрешении 4k сглаживание порой вовсе не требуется. Либо можно применить самое простое CSAA или MSAA 2x. Не более. Интересно, как сложится картина лет через 5-7, когда 4k разрешение приобретет массовость. Я специально не стал приводить примеры комбинирования разных методов сглаживания, что бы не вызвать у вас путаницы. Достаточно этих алгоритмов, что бы вы могли определиться, какое сглаживание подходит для вашей системы и для вашего восприятия.

Копирование любых материалов сайта допускается только с разрешения Администратора сайта (профиль, e-mail) и со ссылкой на источник.

Постобработка готовых кадров

Но совсем необязательно применять сглаживание к объемным 3D моделям. Ведь аналогичную обработку можно выполнить уже после рендеринга.

  • Для обладателей слабого компьютерного железа NVidia предложило довольно эффективное решение FXAA (Fast approXimate anti-aliasing). Если верить названию, работает оно достаточно быстро, что достигается обработкой уже готовых изображений. Для контурных линий применяются математические методы обработки цвета, которые позволяют получить ярко выраженное сглаживание. Иногда даже черезчур «гладкое», ведь недостатком данного способа является чрезмерное размыливание картинки. Но все-таки получаемый результат делает изображение более приятным, чем до обработки.

FXAA

  • Тем, у кого вообще графическая карта не предназначена для современных игр, но имеется мощный CPU, компания Intel предлагает свой аналог вышеописанного способа MLAA . Обработка происходит медленнее, но зато разработчикам удалось избавиться от заметного размыливания.

MLAA

  • Учитывая тенденцию с повышению fps видеопотока, специалисты из NVidia создали специально для этих условий технологию MFAA (Multiframe Sampled Anti-Aliasing). Чтобы ускорить обработку кадров здесь используется уникальный и простой алгоритм. Внутри пикселя, через которые проходит линия контура, создается две условные точки. И в зависимости от взаимного расположения линии и маркеров устанавливается цветовое значение.

Multiframe Sampled Anti-Aliasing

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

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

За что отвечают настройки графики в играх, и как они влияют на FPS. Часть 2

То, насколько правдоподобно симулируется освещение в игре. Если это единственный подобный параметр в игре, то именно в эту настройку заложили уйму других, будь-то и объемный свет, и рассеивание лучей, и отражения, а иногда даже глобальное затенение. Освещение — это, пожалуй, вообще едва ли не самое основное из всего, что влияет на красоту картинки: оно делает ее объемной, натуралистичной, правдоподобной. Но и ресурсов все это дело «кушает» тоже немало. Именно поэтому, например, Nvidia так расхваливает свои новые RTX-видеокарты — они изначально разработаны под Ray Tracing — метод рендеринга, предполагающий правдоподобную симуляцию каждого луча.

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

Зависит от движка, но почти во всех современных играх — очень сильное. Симулировать свет — это очень непросто, так что врубайте «ультра» только если у вас действительно мощная видеокарта.

Качество эффектов (Effects Quality)

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

Читайте также:  No bootable partition in table что делать

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

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

…Качество шейдеров (Shader Quality)

Шейдеры — это специальные программы для вашей видеокарты, исполняемые ее процессором. Грубо говоря, это такие «инструкции» от игры вашей GPU, по которым та понимает, как именно нужно отрисовывать тот или иной эффект. Чаще всего шейдеры используются для улучшения освещения, затенения, создания эффектов преломления лучей в воде (помните, как взрывала мозг та самая «шейдерная водичка из Half-Life 2: Lost Coast?), отражений, рассеиваний и так далее. Так что да, эта опция работает в тандеме с другими параметрами: качеством освещения и качеством теней. Существует три вида шейдеров: вершинные, геометрические и пиксельные, но игры, где можно отрегулировать качество каждого из них отдельно, встречаются невероятно редко.

Соответственно, чем выше качество шейдеров, тем лучше описанные выше эффекты, красивее тени и свет, реалистичнее геометрия — и тем сильнее нагрузка на видеокарту. Именно на видеокарту — потому что шейдеры считаются только GPU.

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

Чаще всего — высокое. Например, в GTA V это один из самых «тяжелых» параметров в игре — снизив качество шейдеров с «Ультра» на средниее значение, вы получите прирост больше, чем в 15 FPS. Но бывает и так, что снижение этого параметра почти ничего не дает, как, например, в Mass Effect Anromeda.

TXAA/TAA

Temporal Anti-Aliasing был разработан Nvidia, и работает не только с резкими переходами пикселей, а и с дрожью объектов. С использование прошлых методов MSAA и SMAA, в этом варианте сглаживание реализовано достаточно эффективно. Дрожание объектов устраняется за счет использовании нескольких предыдущих кадров. В медитативных играх такое сглаживание требует мало ресурсов видеокарты, но если сцены будут динамичными, потребление возрастет моментально.

Схожее с первым методом, сглаживание Dynamic Super Resolution реализовано простым запуском игры в большом разрешении, чем у монитора, вместо отрисовки каждого кадра отдельно. Вдобавок вы сможете играя, к примеру, на 1080p, создавать скриншоты в 4K. Но есть проблема, которая в некоторых играх поначалу собьет с толку – интерфейс и чувствительность могут быть не оптимизированы под DSR, а значит, интерфейс может уменьшиться, как и скорость указателя.

CSAA x8

Динамическое отражение

Эта настройка во многом зависит от игры, в которую вы играете, а также от того, что для вас важно с точки зрения качества изображения. Динамические отражения являются параметрами, влияющими на отображения игроков и других движущихся объектов в лужах и на блестящих поверхностях. Это чрезвычайно усиливает производительность графики. Тем не менее, динамические отражения не всегда замечаются, а отключив их, вы увеличите ваши кадры в секунду от 30 до 50%.

Сравнение качества сглаживания в разных сценах

Теперь рассмотрим несколько примеров разных видов сглаживания для сравнения.

Оптимизация видеоигр – что это на самом деле такое

Стоит только начать обсуждение новой игры для ПК, как неотвратимо всплывет слово «оптимизация». Deus Ex: Mankind Divided? «Похоже, что эту игру ВООБЩЕ не оптимизировали», — пишет кто-то из игроков в Steam. Metro: Last Light? «Если коротко, то оптимизация выполнена ужасно», — пишет другой.

Жалобы на плохую оптимизацию, как правило, идут бок о бок с фразами наподобие «у меня эта игра тормозит». Но связана ли производительность с ошибками программистов, которые не смогли эффективно написать код? Как понять, игра на самом деле плохо оптимизирована или для нее просто не хватает мощности вашего ПК?

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

Что такое оптимизация, и чем её измерить?

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

Вот простой пример. Допустим, вам необходимо вычислить следующее:

Если вместо этого мы определим:

d = b*c, и запишем a = d + d + d

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

Так как же нам рассуждать об оптимизации, сохранив хоть какую-то объективность? Вот какое определение дали мне в QLOC:

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

Дин Секулич из Croteam оптимизирует игры уже 20 лет и уверен, что «с одной стороны, невозможно сравнить, насколько оптимизированы разные игры», но с другой? всегда можно составить мнение, визуально оценив качество двух разных игр и уровень производительности, который ими достигнут. Однако он также отмечает, что «есть много всего скрытого от глаз», влияющего на поведение игры.

Что же это? Понимание того, что такое оптимизация и что на неё влияет, подразумевает получение ответа на этот вопрос. Мы начнем с оценки того, как на производительность могут влиять те визуальные эффекты, которые дают наибольшую нагрузку на современные аппаратные средства.

Современные эффекты и производительность

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

Качество изображения

Возможно, самый простой параметр, который заметно влияет на производительность и позволяет сравнивать уровень оптимизации, это разрешение экрана. Вполне естественно сравнивать игры на одинаковом разрешении, поскольку этот параметр состоит всего из двух чисел (к примеру, 1920×1080) и доступен для настройки практически в каждой игре. Важный факт, который часто упускается из виду: с изменением разрешения меняется количество выводимых пикселей — 4k дает нагрузку примерно в четыре, а не в два раза больше, чем 2k.

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

  • Чистые методы работы с экранным пространством, такие как FXAA или SMAA (1x). Работают с уже сгенерированным изображением. На этапе постобработки производится попытка выявить и устранить артефакты визуализации, к примеру, «лесенки».
  • Методы временного сглаживания. Делают движения более плавными, генерируя изображение с наложением предыдущего кадра и выводят промежуточный результат.
  • Множественная выборка сглаживания или мультисэмплинг (MSAA). На разных этапах визуализации пиксели на гранях полигонов генерируются на основе нескольких предварительных виртуальных моделей.
  • Избыточная выборка сглаживания или суперсэмплинг. На разных этапах визуализации все пиксели генерируются на основе нескольких предварительных виртуальных моделей.
  • Комбинации из вышеописанных методов (к примеру, TXAA)

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

Освещение и тени

Поверхности и окружающая атмосфера напрямую зависят от освещения, которое относится к основам 3D графики и одновременно является ее Священным Граалем. Постоянно разрабатываются всё более сложные эффекты, благодаря которым достижимо современное качество изображения, однако улучшение картинки часто достигается за счет огромного ущерба производительности.

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

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

Рассеянное затенение впервые было представлено в Crysis и само по себе требовало немалых ресурсов. В наши дни использование этого эффекта больше не вызывает проблем с производительностью. Однако новые графические техники, такие как воксельное рассеянное затенение или затенение отдаленных пространств, всё еще достаточно требовательны к производительности.

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

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

Прочие визуальные эффекты

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

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

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

Особенности оптимизации

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

Стандартные настройки и системные требования

Предустановленные графические настройки — привычные «низкие», «средние», «высокие», «очень высокие», «ультра» — практически никогда не соответствуют друг другу в разных играх, однако они крайне важны: их используют игроки, которые не хотят углубляться в тонкости индивидуальной настройки.
В Croteam «средние» предустановки определяются на ранней стадии разработки игры и зависят от текущего и прогнозируемого уровня развития аппаратных средств, а будущие графическое оформление и дизайн выполняются с учетом этого стандарта. Ближе к выпуску техническая команда определяет настройки для каждой предустановки, стараясь на каждом уровне сбалансировать качество картинки и производительность.

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

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

Игрокам не всегда до конца известно, каким образом определяются системные требования. В то время как

каждый разработчик использует собственные стандарты, в Croteam «минимальные» требования означают, что игра должна хорошо работать на низких настройках, и если эти требования не соблюдены, техническая поддержка не предоставляется. «Рекомендуемые» же системные требования подразумевают, что игра должна хорошо работать («не на средних, а на высоких», как сказал мне Дин) c разрешением 1080p.

Как оценивать оптимизацию игры

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

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

Поднялся громкий вой на Dying Light, как на «ужасно не оптимизированный порт на ПК» из-за того, что она не соответствовала (произвольно выбранным) стандартам на максимальных настройках графики. Как выяснилось, ползунок настройки дальности прорисовки, установленный на минимум, в первоначальной версии игры определял более высокую дальность прорисовки, чем на консоли. В сущности, люди были недовольны тем, что разработчик подразумевал, что в ранних патчах игрокам придется устанавливать ползунок дальности прорисовки на 55% от максимального значения.

Выглядела бы игра более «оптимизированной», если бы этот простой шаг был сделан до релиза? Я в этом уверен. При этом была бы она на самом деле «лучше оптимизирована»? Разумеется, нет. Dying Light – не только хороший пример того, как сложно оценить качество оптимизации, но и того, что должны учитывать разработчики при определении доступных настроек графики.

Похожая история недавно произошла с Deus Ex: Mankind Divided, в которой важное значение имеет настройка MSAA (до 8x). Поскольку в игре используется отложенное освещение и затенение – универсальная техника визуализации, которая делает намного менее эффективной простую реализацию MSAA с аппаратным ускорением — MSAA давала большую нагрузку на производительность, которой от нее никто не ожидал. И снова, игра выглядела бы более «оптимизированной» в том случае, если бы не предоставляла такую настройку, при чем, опять же, проблема с оптимизацией совсем не в этом.

Игра редко представляет из себя монолитную сущность, которая либо оптимизирована, либо нет. Не оптимизированы могут быть отдельные эффекты, в отличие от игры в целом. Это особенно распространено при использовании нововведений: когда в оригинальной Crysis впервые было использовано рассеянное затенение, оно было плохо оптимизировано по сравнению с современными реализациями. Кроме того, первая реализация воксельного рассеянного затенения в Rise of the Tomb Raider – в целом хорошо оптимизированной и красивой игры – может оказаться хуже грядущих реализаций.

Metro 2033 стала одной из первых игр, где были широко использованы объемные лучи, и позиционировалась она как духовный приемник Crysis в том, что касается производительности на высоких настройках. Это же актуально и для недавнего и последующего использования теней с контактным уплотнением. Тем не менее, я считаю, что необходимо экспериментировать с внедрением новых возможностей, несмотря на то, что первые реализации не всегда можно использовать из-за их нагрузки на производительность. Благодаря этому процесс развития игровой разработки не стоит на месте, и появляются хорошо оптимизированные визуальные эффекты. Прелесть платформы ПК заключается в том, что эффект, который был «не оптимизирован» в 2010 году, может быть использован по максимуму в 2016-м, и игра будет выглядеть лучше даже на средней аппаратной конфигурации.

Разумеется, существуют игры, которые действительно плохо оптимизированы. Обычно за ними стоит одно и то же: недостаток ресурсов, попытка небольшого разработчика откусить больше, чем он может прожевать, или просто низкие технические навыки. Когда игра тормозит на настройках по умолчанию даже на самом мощном ПК, или в простой 2D игре fps падает до 20 кадров в секунду даже на современной консоли, тогда никакой самый глубокий анализ не приведет к утешительным выводам. В большинстве случаев, однако, оценка становится намного сложнее, и я надеюсь, что, как я надеюсь, было хорошо проиллюстрировано в этом разделе.

Читайте также:  Программы для общения в играх

Трудности оптимизации

Сам процесс создания оптимального кода (в том значении, которое используется в информатике, что упоминалось ранее) достаточно трудоемок. Для Дина Секулича «худший кошмар оптимизации» это «смотреть на данные профайлера и видеть, что выполнение верхней функции занимает 3% времени». Для понимания того, что имеется ввиду, скажу, что профайлер — это инструмент, который позволяет программисту увидеть, сколько времени у программы уходит на выполнение каждой функции, обычно он сортирует итоговый список по убыванию времени выполнения.

Когда верхняя функция занимает 3% времени, это означает, что если вам удастся вдвое сократить время ее выполнения — для чего могут потребоваться титанические усилия — в целом программа ускорится на 1,5%. Из-за того, что подобные ситуации возникают постоянно, оптимизация готового кода превращается в поэтапный и трудоемкий процесс.

В QLOC портируют игры с использованием самых разных технологий, поэтому с каждым проектом возникают новые задачи. «Это может быть по-настоящему сложно для одной игры, и намного проще для другой».

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

За исключением тех случаев, когда игровой движок полностью поддерживает новый низкоуровневый интерфейс, использование такого интерфейса сразу же после появления в QLOC считается неоправданным или «дающим небольшое улучшение производительности, которое может быть сведено на нет, когда портирование завершено».

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

Оптимизация касается не только графики!

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

Как говорят в команде разработчиков QLOC, «Для нас оптимизация также во многом касается исправления неудачных решений с управлением, повышения комфорта игрового процесса, улучшения пользовательского интерфейса, усовершенствования системы сохранений и загрузки, улучшения работы с сетью и даже исправления старых ошибок в первоначальном коде». Могу себе представить, что есть немало людей, которые могут по достоинству оценить подобный подход, и которые, в свое время, помучались с ускорением мыши, задержками ввода или кричащим пользовательским интерфейсом в других портированных играх – я сам о таком частенько писал.

Оптимизация касается не только графики!

Оптимизация касается не только графики!

Подводя итог

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

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

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

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

Настройки графики в играх: на что они влияют?

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

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

http://itc.ua/files/pics/pp-01s.jpghttp://itc.ua/files/pics/pp-01s.jpg http://itc.ua/files/pics/pp-02s.jpghttp://itc.ua/files/pics/pp-02s.jpg

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

Учитывая объем обрабатываемых данных (а в сцене может быть множество 32-битовых текстур высокого разрешения), анизотропная фильтрация особенно требовательна к пропускной способности памяти. Уменьшить трафик можно в первую очередь за счет компрессии текстур, которая сейчас применяется повсеместно. Ранее, когда она практиковалась не так часто, а пропуская способность видеопамяти была гораздо ниже, анизотропная фильтрация ощутимо снижала количество кадров. На современных же видеокартах она почти не влияет на fps.

Анизотропная фильтрация имеет лишь одну настройку коэффициент фильтрации (2x, 4x, 8x, 16x). Чем он выше, тем четче и естественнее выглядят текстуры. Обычно при высоком значении небольшие артефакты заметны лишь на самых удаленных пикселах наклоненных текстур. Значений 4x и 8x, как правило, вполне достаточно для избавления от львиной доли визуальных искажений. Интересно, что при переходе от 8x к 16x снижение производительности будет довольно слабым даже в теории, поскольку дополнительная обработка понадобится лишь для малого числа ранее не фильтрованных пикселов.

Шейдеры
Шейдеры это небольшие программы, которые могут производить определенные манипуляции с 3D-сценой, например, изменять освещенность, накладывать текстуру, добавлять постобработку и другие эффекты.

Шейдеры делятся на три типа: вершинные (Vertex Shader) оперируют координатами, геометрические (Geometry Shader) могут обрабатывать не только отдельные вершины, но и целые геометрические фигуры, состоящие максимум из 6 вершин, пиксельные (Pixel Shader) работают с отдельными пикселами и их параметрами.

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

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

Parallax mapping
Parallax mapping это модифицированная версия известной техники bumpmapping, используемой для придания текстурам рельефности. Parallax mapping не создает 3D-объектов в обычном понимании этого слова. Например, пол или стена в игровой сцене будут выглядеть шероховатыми, оставаясь на самом деле абсолютно плоскими. Эффект рельефности здесь достигается лишь за счет манипуляций с текстурами.

http://itc.ua/files/pics/pp-03v.jpg

http://itc.ua/files/pics/pp-03v.jpg

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

Parallax mapping существенно экономит вычислительные ресурсы компьютера, поскольку при использовании объектов-аналогов со столь же детальной 3D-структурой производительности видеоадаптеров не хватало бы для просчета сцен в режиме реального времени.

Эффект чаще всего применяется для каменных мостовых, стен, кирпичей и плитки.

Anti-Aliasing
До появления DirectX 8 сглаживание в играх осуществлялось методом SuperSampling Anti-Aliasing (SSAA), известным также как Full-Scene Anti-Aliasing (FSAA). Его применение приводило к значительному снижению быстродействия, поэтому с выходом DX8 от него тут же отказались и заменили на Multisample Аnti-Аliasing (MSAA). Несмотря на то что данный способ давал худшие результаты, он был гораздо производительнее своего предшественника. С тех пор появились и более продвинутые алгоритмы, например CSAA.

http://itc.ua/files/pics/pp-04s.jpghttp://itc.ua/files/pics/pp-04s.jpg http://itc.ua/files/pics/pp-05s.jpghttp://itc.ua/files/pics/pp-05s.jpg

Учитывая, что за последние несколько лет быстродействие видеокарт заметно увеличилось, как AMD, так и NVIDIA вновь вернули в свои ускорители поддержку технологии SSAA. Тем не менее использовать ее даже сейчас в современных играх не получится, поскольку количество кадров/с будет очень низким. SSAA окажется эффективной лишь в проектах предыдущих лет, либо в нынешних, но со скромными настройками других графических параметров. AMD реализовала поддержку SSAA только для DX9-игр, а вот в NVIDIA SSAA функционирует также в режимах DX10 и DX11.

Принцип работы сглаживания очень прост. До вывода кадра на экран определенная информация рассчитывается не в родном разрешении, а увеличенном и кратном двум. Затем результат уменьшают до требуемых размеров, и тогда «лесенка» по краям объекта становится не такой заметной. Чем выше исходное изображение и коэффициент сглаживания (2x, 4x, 8x, 16x, 32x), тем меньше ступенек будет на моделях. MSAA в отличие от FSAA сглаживает лишь края объектов, что значительно экономит ресурсы видеокарты, однако такая техника может оставлять артефакты внутри полигонов.

Раньше Anti-Aliasing всегда существенно снижал fps в играх, однако теперь влияет на количество кадров незначительно, а иногда и вовсе никак не cказывается.

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

alt=”http://itc.ua/files/pics/pp-07s.jpg” width=”320″ height=”239″ />http://itc.ua/files/pics/pp-07s.jpg alt=”http://itc.ua/files/pics/pp-07s.jpg” width=”320″ height=”239″ />http://itc.ua/files/pics/pp-07s.jpg

На первый взгляд, тесселяцию можно спутать с Parallax mapping. Хотя это совершенно разные эффекты, поскольку тесселяция реально изменяет геометрическую форму предмета, а не просто симулирует рельефность. Помимо этого, ее можно применять практически для любых объектов, в то время как использование Parallax mapping сильно ограничено.

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

Чтобы игра могла использовать тесселяцию, ей требуется видеокарта с поддержкой DirectX 11.

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

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

http://itc.ua/files/pics/pp-08s.jpg

http://itc.ua/files/pics/pp-08s.jpg

Если частота обновления монитора составляет 60 Гц, и видеокарта успевает просчитывать 3D-сцену как минимум с таким же количеством кадров, то каждое обновление монитора будет отображать новый кадр. Другими словами, с интервалом 16,66 мс пользователь будет видеть полное обновление игровой сцены на экране.

Следует понимать, что при включенной вертикальной синхронизации fps в игре не может превышать частоту вертикальной развертки монитора. Если же число кадров ниже этого значения (в нашем случае меньше, чем 60 Гц), то во избежание потерь производительности необходимо активировать тройную буферизацию, при которой кадры просчитываются заранее и хранятся в трех раздельных буферах, что позволяет чаще отправлять их на экран.

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

Post-processing
Это общее название всех эффектов, которые накладываются на уже готовый кадр полностью просчитанной 3D-сцены (иными словами, на двухмерное изображение) для улучшения качества финальной картинки. Постпроцессинг использует пиксельные шейдеры, и к нему прибегают в тех случаях, когда для дополнительных эффектов требуется полная информация обо всей сцене. Изолированно к отдельным 3D-объектам такие приемы не могут быть применены без появления в кадре артефактов.

High dynamic range (HDR)
Эффект, часто используемый в игровых сценах с контрастным освещением. Если одна область экрана является очень яркой, а другая, наоборот, затемненной, многие детали в каждой из них теряются, и они выглядят монотонными. HDR добавляет больше градаций в кадр и позволяет детализировать сцену. Для его применения обычно приходится работать с более широким диапазоном оттенков, чем может обеспечить стандартная 24-битовая точность. Предварительные просчеты происходят в повышенной точности (64 или 96 бит), и лишь на финальной стадии изображение подгоняется под 24 бита.

http://itc.ua/files/pics/pp-09s.jpghttp://itc.ua/files/pics/pp-09s.jpg http://itc.ua/files/pics/pp-10s.jpghttp://itc.ua/files/pics/pp-10s.jpg

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

Bloom
Bloom нередко применяется совместно с HDR, а еще у него есть довольно близкий родственник Glow, именно поэтому эти три техники часто путают.

http://itc.ua/files/pics/pp-11.jpg

http://itc.ua/files/pics/pp-11.jpg

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

Film Grain
Зернистость артефакт, возникающий в аналоговом ТВ при плохом сигнале, на старых магнитных видеокассетах или фотографиях (в частности, цифровых изображениях, сделанных при недостаточном освещении). Игроки часто отключают данный эффект, поскольку он в определенной мере портит картинку, а не улучшает ее. Чтобы понять это, можно запустить Mass Effect в каждом из режимов. В некоторых «ужастиках», например Silent Hill, шум на экране, наоборот, добавляет атмосферности.

Motion Blur
Motion Blur эффект смазывания изображения при быстром перемещении камеры. Может быть удачно применен, когда сцене следует придать больше динамики и скорости, поэтому особенно востребован в гоночных играх. В шутерах же использование размытия не всегда воспринимается однозначно. Правильное применение Motion Blur способно добавить кинематографичности в происходящее на экране.

http://itc.ua/files/pics/pp-12.jpghttp://itc.ua/files/pics/pp-12.jpg http://itc.ua/files/pics/pp-13.jpghttp://itc.ua/files/pics/pp-13.jpg

Эффект также поможет при необходимости завуалировать низкую частоту смены кадров и добавить плавности в игровой процесс.

SSAO
Ambient occlusion техника, применяемая для придания сцене фотореалистичности за счет создания более правдоподобного освещения находящихся в ней объектов, при котором учитывается наличие поблизости других предметов со своими характеристиками поглощения и отражения света.

Screen Space Ambient Occlusion является модифицированной версией Ambient Occlusion и тоже имитирует непрямое освещение и затенение. Появление SSAO было обусловлено тем, что при современном уровне быстродействия GPU Ambient Occlusion не мог использоваться для просчета сцен в режиме реального времени. За повышенную производительность в SSAO приходится расплачиваться более низким качеством, однако даже его хватает для улучшения реалистичности картинки.

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

Cel shading
Игры с эффектом Cel shading начали делать с 2000 г., причем в первую очередь они появились на консолях. На ПК по-настоящему популярной данная техника стала лишь через пару лет. С помощью Cel shading каждый кадр практически превращается в рисунок, сделанный от руки, или фрагмент из мультика.

http://itc.ua/files/pics/pp-14.jpg

http://itc.ua/files/pics/pp-14.jpg

В похожем стиле создают комиксы, поэтому прием часто используют именно в играх, имеющих к ним отношение. Из последних известных релизов можно назвать шутер Borderlands, где Cel shading заметен невооруженным глазом.

Особенностями технологии является применение ограниченного набора цветов, а также отсутствие плавных градиентов. Название эффекта происходит от слова Cel (Celluloid), т. е. прозрачного материала (пленки), на котором рисуют анимационные фильмы.

Depth of field
Глубина резкости это расстояние между ближней и дальней границей пространства, в пределах которого все объекты будут в фокусе, в то время как остальная сцена окажется размытой.

http://itc.ua/files/pics/pp-15.jpg

http://itc.ua/files/pics/pp-15.jpg

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

Читайте также:  Невозможно отформатировать флешку что делать

Лицезреть эффект глубины резкости в гипертрофированной форме можно на некоторых фотографиях. Именно такую степень размытия часто и пытаются симулировать в 3D-сценах.

В играх с использованием Depth of field геймер обычно сильнее ощущает эффект присутствия. Например, заглядывая куда-то через траву или кусты, он видит в фокусе лишь небольшие фрагменты сцены, что создает иллюзию присутствия.

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

Чтобы выяснить, как включение тех или иных опций сказывается на производительности, мы воспользовались игровым бенчмарком Heaven DX11 Benchmark 2.5. Все тесты проводились на системе Intel Core2 Duo e6300, GeForce GTX460 в разрешении 1280Ч800 точек (за исключением вертикальной синхронизации, где разрешение составляло 1680Ч1050).

Как уже упоминалось, анизотропная фильтрация практически не влияет на количество кадров. Разница между отключенной анизотропией и 16x составляет всего лишь 2 кадра, поэтому рекомендуем ее всегда ставить на максимум.

Сглаживание в Heaven Benchmark снизило fps существеннее, чем мы того ожидали, особенно в самом тяжелом режиме 8x. Тем не менее, поскольку для ощутимого улучшения картинки достаточно и 2x, советуем выбирать именно такой вариант, если на более высоких играть некомфортно.

Тесселяция в отличие от предыдущих параметров может принимать произвольное значение в каждой отдельной игре. В Heaven Benchmark картинка без нее существенно ухудшается, а на максимальном уровне, наоборот, становится немного нереалистичной. Поэтому следует устанавливать промежуточные значения moderate или normal.

Для вертикальной синхронизации было выбрано более высокое разрешение, чтобы fps не ограничивался вертикальной частотой развертки экрана. Как и предполагалось, количество кадров на протяжении почти всего теста при включенной синхронизации держалось четко на отметке 20 или 30 кадров/с. Это связано с тем, что они выводятся одновременно с обновлением экрана, и при частоте развертки 60 Гц это удается сделать не с каждым импульсом, а лишь с каждым вторым (60/2 = 30 кадров/с) или третьим (60/3 = 20 кадров/с). При отключении V-Sync число кадров увеличилось, однако на экране появились характерные артефакты. Тройная буферизация не оказала никакого положительного эффекта на плавность сцены. Возможно, это связано с тем, что в настройках драйвера видеокарты нет опции принудительного отключения буферизации, а обычное деактивирование игнорируется бенчмарком, и он все равно использует эту функцию.

Если бы Heaven Benchmark был игрой, то на максимальных настройках (1280Ч800; AA 8x; AF 16x; Tessellation Extreme) в нее было бы некомфортно играть, поскольку 24 кадров для этого явно недостаточно. С минимальной потерей качества (1280Ч800; AA 2x; AF 16x, Tessellation Normal) можно добиться более приемлемого показателя в 45 кадров/с.

http://itc.ua/files/pics/pp-16.jpg

http://itc.ua/files/pics/pp-16.jpg

Восприятие картинки в современных играх, сглаживание

Всем доброго времени суток. В последнее время, когда играю во многие современные тайтлы, очень сильно устают глаза. В пример я могу привести игры от первого лица, такие, как Borderlands 3, The Outer Worlds. Все время какое-то странное напряжение на глаза, тяжело смотреть, тяжело фокусироваться на чем-то, как будто вся картинка слишком размытая, или пересвеченная что ли.

При этом, в старых играх от первого лица такой проблемы нет и не было. Во всяких Half-Life 2, Portal, Call Of Duty Modern Warfare 1-3, Oblivion и так далее (список можно перечислять долго).

Если в настройках отключить сглаживание вообще, то объекты начинают идти “лесенками”, но при этом картинка становится гораздо более четкой и легковосприимчивой для меня. В том же Skyrim Enhanced Edition, я вообще не мог нормально смотреть вдаль на LODы, пока не отключил сглаживание.

В чем проблема – современные игры слишком изобилуют всякими трудновоспринимаемыми эффектами? Или я просто старею, зрение портится?

Можно ли что-то еще включить/отключить, чтобы облегчить восприятие картинки?

Комментарий удален по просьбе пользователя

Как вообще хроматичечквя аберация и глубина резкости влияют на картинку, мой глсл6разницы заметить не может

Хроматическая абберация края объектов слегка размывает, раскладывая цвет на красный синий жёлтый, а глубина резкости размывает задний/передний фон, на котором не сфокусирована камера

Что-что но абберация еще как влияет. Особенно вырвиглазная, которая была в ДайнлЛайте и Резиденте7.

Спасибо тут увидел

Комментарий удален по просьбе пользователя

Как же я тебя понимаю, повальная мода на ТАА сглаживание убивает желание играть в современные тайтлы. Уж лучше лесенки, чем мыльцо.

Есть короче костыль в виде фильтра резкости от нвидиа. Недавно в Fallout 4 покрутил и стало выглядеть намного лучше, лучше, чем выкручивать MSAA и смотреть как фэпэсы драматично летят вниз.

Резкость не исправляет всех проблем ТАА. Основная проблема, это мыльцо во время движения и гостинг.

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

Комментарий удален по просьбе пользователя

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

аналогично, размытие в движении просто мыло, но вот с лесенками играть малоприятно

Для меня лесенки вполне норм, я их редко замечаю

верно. на размытие было прикольно посмотреть ровно один раз – когда вышел первый NFS Underground, запущенный на DX9. всё. потом это уже нигде нужно не было

С возрастом, к 40, стал восприимчив к частоте обновления картинки. Раньше было пофигу 30 или 60, сейчас 60 ощутимее приятнее глазу.

тут наверное к фпс,а не обновлению картинки? потому что разницу между 30гц и 60 только слепой не заметит

Да, фпс. Когда писал, в голове каша какая-то была.

Это возрастная каша, когда игрок видит размытие, он пугается и пытается сделать все четким. Да и мониторы непригодны в качестве ТВ, а игры разрабатываются под гейминг на консолях.

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

Комментарий удален по просьбе пользователя

Ну хз, играю в овервотч на 144гц монике при 100фпс в среднем и попутно прохожу последнего бэтмана на плойке в 30 фпс. В первые дни после покупки моника тормоза плойки были ппц как заметны, потом привык и играется теперь приятно и то и другое, даже особой разницы не замечаю при переходе

А мне 60 стало неприятно, все время заморачиваться надо. То синхронизация раздражает, то сглаживание отключать и все равно дергает. Но это на старом пк и тв самунге. На новом с монитором 75 герц как то незаметно.

но для Outer Worlds есть правленный файлы с нормальными настройками на nexusmods

видимость в даль специально делают смазанной, чтобы не видны были косяки непрогрузки. спасибо консолям скажите и слабым видеокартам/процессорам, в которых производительность порциями по чуть прибавляют каждые 1-2 года.

может конечно еще и мониторы у нас плохие)

Хроматическая аберрация это не главная проблема. Весь дискомфорт от ТАА, а его сейчас повсеместно используют, из-за изменения прорисовки теней, отражений и других подобных эффектов. К примеру, если отрубить ТАА в РДР2, то часть теней, затенений и отражений будут набором точек.

улучшит ли ситуацию 2к и 4к разрешение?

Ещё как, для меня в 1080р РДР2 неиграбелен оказался, а в 2к+25% резкости в Nvidia Feeestyle очень даже хорошо выглядит. В 4к вообще супер, но там 60 фпс не видать.

Ситуацию с точками не исправит. А вот немного уменьшить минусы ТАА помогает.

Точки в РДР2 из-за опции "мягких теней", отключи и тени станут нормальными.

Не только из-за них. Мягкие тени отключены.

Я отключил мягкие тени, поставил 1.5 коэффициент масштабирования (чуть выше 2к получилось) и всё было круто, никаких точек.

И это без ТАА?
Вот два скриншота, один без ТАА.

Сорян, я криво твой коммент прочитал изначальный, я с TAA играл.

Можешь ради интереса вырубить ТАА и прогнать бенч. Когда дойдёт до города, поймёшь насколько современные игры зависят от ТАА.

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

Мягкие тени, это конечно на любителя. А касательно мерцания, я добивался адекватной картинки с двухкратным MSAA, но вот точки. От них избавится можно только включая ТАА.

а можно скрин с этими точками? 🙂 плиииз

Чуть выше скинул два скриншота из рдр. В варианте без таа, затенение на палатке отображается точками.

Эти игры просто очень плохо сделаны. Можно попробовать SSAA или DSR включить.

Что с этим делать? Отвечаю: если какой-нибудь Тодд или другой какой пройдоха такое устраивает, то просто нечего его поддерживать деньгами.

Комментарий удален по просьбе пользователя

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

Комментарий удален по просьбе пользователя

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

Комментарий удален по просьбе пользователя

Обычно такая мешанина возникает при TAA сглаживании или при включенном HBAO+/HDAO затенении. Особенно сильно заметно при частоте кадров хотя бы ниже 60, т.к. возникают шлейфы, двигающие за обьектами на экране

Это называется Motion Blur, размытие в движении.

Комментарий удален по просьбе пользователя

Основная проблема заключается в том, что современные игры стали слишком детализированными. Многократно возрасло количество полигонов, текстур, объектов, различных эффектов постобработки (сглаживание, размытие, абберации и пр.) Просмотр на мониторах небольших диагоналей и разрешений (до 24-27 и 1080р) ставиться серьезной нагрузкой на зрение.

Основная проблема заключается в том, что современные игры стали слишком детализированными. Многократно возрасло количество полигонов, текстур, объектов, различных эффектов постобработки

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

Правильно пишешь, игры под другие диагонали делают и под другие разрешения. Многие ПК игроки сидя носом перед 27", но с разрешением 1080 видят всякое непотребное, модная дымка хорошо выглядящая в 4k для них превращается в мыльцо, а HDR диапазон на отличных современных ТВ убивается древними мониторами с ужасной цветопередачей и подсветкой. Приходится вырубать постобработку, убивать цветопередачу, уменьшая контраст, получая вместо глубины вот такое

У меня монитор как раз 27 и 1080p. Как вы считаете, если заменю монитор на аналог с такой-же диагональю, но при этом 1440p, будет ли мне проще воспринимать картинку?

Да, чем выше разрешение, тем меньше проблем от ТАА.

Должно стать лучше. Есть много сравнений 1080р и 1440р на 27 дюймах. Посмотри, что говорят.

А если на 1440p мониторе играть все также в 1080p, будут ли заметны какие-то улучшения?

Будет хуже, чем на fullhd мониторе. Попробуй сам запустить игру в 900p на fullhd

Если GPU от Nvidia то попробуйте включить image sharpening. У меня на 1080 27" разница заметна сразу.

это только для ртх карт ?

нет, для всех зелёных, у красных есть аналогичная функция

А что это меняет ? Убирает мыльцо ?

Это повышает резкость картинки, но не исправляет остальных проблем ТАА. В движении всё также будет всё размыто и повсеместный гостинг никуда не денется.

Конкретно в мв19 сглаживание работает как-то странно, оно мылит не только края объектов, а вместе с ним и фон. Получаются мыльные пятна на мыльных пятнах. Лично мне комфортней играть с полностью отключенным сглаживанием и включенной через драйвер резкостью. У нвидии в gforce exp можно в фильтрах добавить sharpening.

Сейчас понемногу прохожу The Outer Worlds и всё норм.
какое-то странное напряжение на глаза

Это усталость от пыренья в монитор. У меня такое бывает, если заказ срочный и я часов двенадцать работаю за компом. Хотя в целом часто провожу за компом столько времени, но играя в игры и смотря что-то я расслабленый и по этому на глаза не такой напряг. Плюс постоянно отхожу куда-то. Ещё где-то вычитал, что надо хотя бы раз в пол часа отводить взгляд от монитора и смотреть куда-то вдаль, что бы глаза немного расслабились. По этому просто выхожу минут на десять во двор на перекур и поиграть с собакой. А вот если пырить в экран не отрываясь, то так и зрение в ухнарь посадить можно.

Borderlands 3, The Outer Worlds. Все время какое-то странное напряжение на глаза, тяжело смотреть, тяжело фокусироваться на чем-то, как будто вся картинка слишком размытая, или пересвеченная что ли.

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

В чем проблема – современные игры слишком изобилуют всякими трудновоспринимаемыми эффектами? Или я просто старею, зрение портится?

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

Отключаю сглаживание в игре, эффекта вроде моушен блюра и блума. Ставим reshade
SMAA -> FilmicAnamorphSharpen

Проблема в любом случае в первую очередь у твоих глаз. Сходи к офтальмологу или окулисту столь, мало ли

У меня такая же тема, глаза устают от мыла очень, например как в hunt Showdown или рдр2. Приходилось чуть подкручивать, но при это картинка менее приятная становится. Видимо я старею

Это не старость, просто игры действительно становится всё мыльнее и мыльнее. Особенно те, в которых ТАА форсированный и убирается в лучшем случае через конфиг, а в худшем никак.

Я убирал через гефорс alt +f3. Но эта штука далеко не все игры поддерживает. А игры становятся действительно мыльные

Резкость не исправляет всех проблем ТАА.

Reshade спасает от мыла, а от лесенок спасет более высокое разрешение монитора

Про сглаживание в играх

Сглаживание (anti aliasing). Что же такое сглаживание? Вы наверняка в играх довольно часто встречались с тем, что у объектов, которые должны в принципе выглядеть ровно и гладко, на краях появляются какие-то непонятные лесенки и зазубрины. Естественно, разработчики игр и видеокарт об этой проблеме знают, поэтому и появилась технология, которая называется “сглаживание”, она и нужна чтобы эти неровности сгладить (что очевидно).

01-11-2014-008

Существует довольно много методов осуществить сглаживание. Первый из них взаимодействует с изображением еще на уровне его построения. К первому методу относится: способ сглаживания SSAA (Supersample anti-aliasing) и MSAA (Multisample anti-aliasing), и еще между ними недавно затесался CSAA (Coverage Sampling Antialiasing) – последний, нечто среднее по производительности и по качеству.

Как все эти способы сглаживания работают? Они создают картинку в несколько раз большую, чем необходимо, а потом сжимают ее до размеров экрана, получается довольно неплохой результат, но нагрузка на видеокарту в этот момент просто нечеловеческая. Потому что в зависимости от того, что вы выберете в настройках игры (2x, 4x или 8x), соответственно и изображение будет в два, четыре или в восемь раз больше необходимого, получается, что и нагрузка в два, четыре или восемь раз больше.

Но, к счастью для нас, есть второй метод, который основан на так называемой пост-обработке, т.е. когда сглаживание применяется уже к сформированной сцене. К этому методу относятся уже 3 способа сглаживания: FXAA (Fast approXimate Anti-Aliasing) – по качеству сравним с четырех кратным MSAA сглаживанием, но при этом он не создает вообще никакой нагрузки на видеокарту, ну или настолько малую, что ее практически незаметно. Правда у FXAA есть один небольшой минус – при этом совсем слегка замыливаются текстуры. На глаз это почти незаметно.

01-11-2014-007

Но если вам это мыло прям режет глаза, для вас есть второй способ SMAA (Sub-pixel Morphological Anti-Aliasing), он дает чуть меньшее размытие, но и настолько же меньшее качество сглаживания, при том, что все так же не нагружает видеокарту. И наконец третий способ – TXAA (Temporal anti-aliasing, если я правильно понял, доступно только на видеокартах от Nvidia), он дает очень плавную, киношную картинку, но при этом ощутимо нагружает видеокарту. Если сравнить его с эталонным MSAA, то двукратный TXAA = восьмикратному MSAA, при этом нагрузка на видеокарту такая же, как при двукратном MSAA.

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

Ссылка на основную публикацию
Adblock
detector