Сглаживание в играх что выбрать. Сглаживание в играх. Кто может сказать в чем отличаются режимах сглаживания FXAA или MSAA,CSAA

Начнем с определения:

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

Почему возникает «зубчатость»? Проблема в том, что мониторы современных ПК состоят из квадратных пикселей, а значит на них действительно прямыми будут только горизонтальные и вертикальные линии. Все линии, находящиеся под углом, будут строиться из пикселей, находящихся по диагонали друг к другу, что и вызывает «зубчатость». К примеру, справа на картинке - вроде бы ровная линия. Однако стоит ее увеличить, как сразу становится видно, что никакая она не прямая:


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

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

Типы сглаживания

SSAA (Supersample anti-aliasing) - самое тяжелое сглаживание, потому что оно, по сути, описывает способ убирания лесенок, который я привел выше: при четырехкратном (4х) сглаживании видеокарта готовит картинку в разрешении вчетверо выше, чем выводит на экран, потом происходит усреднение цвета соседних пикселей и вывод на экран в исходном разрешении. Получается, что виртуальная плотность пикселей вдвое выше, чем у экрана, и лесенки практически перестают быть заметными. Очень сильно сказывается на производительности: к примеру, если разрешение в игре 1920х1080, то видеокарта вынуждена готовить картинку в 4К - 3840х2160. Однако результат получается великолепным - картинка выглядит как живая, никакого мельтешения нет:

MSAA (Multisample anti-aliasing) - улучшенная версия SSAA, которая потребляет гораздо меньше ресурсов. К примеру - зачем сглаживать то, что находится внутри текстуры, если лесенки есть только на краях? Если текстура представляет собой прямую линию под углом к игроку, то можно сгладить лишь один участок и продолжить эффект на весь край текстуры. В результате нагрузка на видеокарту становится ощутимо меньше, и по тяжести даже 8х MSAA оказывается ощутимо легче 4х SSAA при сравнимом качестве картинки.

CSAA и CFAA (Coverage Sampling anti-aliasing и Custom-filter anti-aliasing) - по сути несколько улучшенный MSAA от Nvidia и AMD (позволяют выбирать дополнительные отсчёты «перекрытия» пикселя, по которым можно уточнять итоговое значение цвета попадающего на край треугольника экранного пикселя). 8x CSAA/CFAA дает сравнимое с 8x MSAA качество картинки, однако потребляет примерно столько же ресурсов, столько и 4х MSAA. На сегодняшний момент оба сглаживания не используются - разработчики игр решили использовать унифицированные для всех видеокарт сглаживания.

FXAA (Fast approXimate anti-aliasing) - нетребовательное быстрое сглаживание. Алгоритм прост - совершается один проход по всем пикселям изображения и усредняются цвета соседних пикселей. Это слабо нагружает видеокарту, однако сильно мылит картинку (обратите внимание на четкость текстуры камня), делая далекие объекты вообще неузнаваемыми:

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

MLAA (MorphoLogical anti-aliasing) - аналог FXAA от Intel. Работает схожим образом, однако алгоритм сложнее - все изображение разбивается на Z, L и U -образные части, и сглаживание происходит смешением цветов пикселей, входящих в каждую такую часть:

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

SMAA (Subpixel Morphological anti-aliasing) - смесь FXAA и MLAA. По сути несколько улучшенный MLAA, но работающий на видеокарте (так как процессор для сглаживания подходит гораздо хуже). Дает картинку, сравнимую с MLAA, лучше, чем FXAA (обратите внимание на бочки), однако потребляет больше ресурсов:

Такое сглаживание является хорошей заменой FXAA, и по уровню нагрузки на видеокарту находится между отсутствием сглаживания и 2x MSAA, так что есть надежда, что в будущем игр с ним будет все больше.

TXAA(Temporal antialiasing) - новая технология сглаживания от Nvidia. В отличии от других типов сглаживания, которые работают только с одним кадром (то есть с неподвижной картинкой), это умеет работать с движущимися объектами и хорошо убирает «мельтешение» картинки. По сути является смесью MSAA и SMAA, дает очень качественную картинку, однако немного ее мылит и очень требовательно к ресурсам.

Итог

В итоге - какое сглаживание выбрать? Если видеокарта совсем плохо тянет игру, то или оставаться без сглаживания и смотреть на лесенки, или же выбрать FXAA и любоваться на мыло. Если же система по-мощнее, но MSAA все еще не тянет - стоит выбрать MLAA или SMAA. Если видеокарта играючи справилась с 8х MSAA - стоит смотреть на SSAA или TXAA.

03. 09.2018

Блог Дмитрия Вассиярова.

Что такое сглаживание в играх или технология комфортного изображения

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

Откуда берутся «ступеньки»?

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

Да очень просто.

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

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

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

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

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

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

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

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

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

Обработка с масштабированием в процессе формирования 3D образов

Первый способ SSAA (SuperSample Anti-Aliasing) был задействован еще в DirectX 7. Чтобы подобрать правильные полутона на граничных пикселях необходимо изначально создать модель в более высоком разрешении. Далее рассчитать параметры сглаживания и снова уменьшить образ с учетом прорисовки граничных пикселей. Что это дает и как работает сглаживание?

  • Например, у нас есть белое поле 10 х10 пикселей в котором нарисован черный круг (для этого рисуем его циркулем, и те квадраты, в которые он попадают, закрашиваем).
  • Теперь каждый наш исходный пиксель разобьем на 4-е части (то есть, образуем сетку 20 х 20) и выполним ту же операцию с рисованием круга.

  • Получим ситуацию, в которой внутри исходных граничных пикселей будет закрашено 1, 2, 3 или 4 субпикселя. В соответствие с этими значениями объединяющие их исходные пиксели заливаем соответственно различными оттенками серого, с насыщенностью в 25%, 50%, 75% или снова полностью черным.

После этой операции, взглянув на наше изображение круга в сетке 10 х 10 с некоего расстояния, увидим более ровную (без «лесенки» по краям) и приятную глазу фигуру.

Чем большее увеличение мы используем для обработки, тем более точным и правильным получается наше сглаживание. На практике программно предусмотрены варианты 2х, 4х, 8х и 16х масштабирование.

Как это повлияет на железо?

Не трудно подсчитать, что для изображения 1280×1024 обработка с коэффициентом 8х потребует нагрузки на видеокарту, соответствующую модели разрешением 10240 х 8192 (не забывайте, что на данной стадии мы работаем с трехмерными изображениями). Поэтому неслучайно данный метод обработки называется Избыточная выборка сглаживания. И вы подумайте, стоит ли включать его, если у вас на ПК слабое железо

Данная технология не могла оставаться такой ресурсоемкой. И в качестве альтернативы была предложена ее версия MSAA (Multisample anti-aliasing). Ее основное отличие от предыдущей в том, что сглаживание применялось только к видимым линиям и поверхностям (что вполне логично).

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

Nvidia решила доработать MSAA и создала способ сглаживания с выборкой охвата – CSAA (Coverage Sampling anti-aliasing). Здесь активно используются программные алгоритмы обработки графики, предусмотренные в самом GPU чипе.

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

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

Это технология TXAA (Temporal approXimate Anti-Aliasing, Временное приблизительное сглаживание). В алгоритме, с учетом времени учитывается пиксели из предыдущих и обрабатываемых кадров с последующим цветовым усреднением.

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

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

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

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

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

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

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

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

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

Конечно, многое зависит от разрешения (Resolution) как такового. Простым изменением разрешения на одну ступень ниже можно добиться прироста производительности в 30-40%. Однако при этом, независимо от остальных настроек, картинка на экране будет выглядеть "замыленной". Поэтому самую "вкусную" картинку в игре можно получить, если разрешение соответствует максимальному разрешению (стандартному заводскому) монитора.

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

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

Это создает гораздо более реалистичную картинку с необходимыми затенениями в углах, но ОЧЕНЬ нагружает видеокарту. На сегодняшний день эта технология доступна в двух вариантах: чуть более простой SSAO (Screen Space Ambient Occlusion) и гораздо более продвинутый и прожорливый HBAO (Horizon-Based Ambient Occlusion).

Есть еще Анизотропная фильтрация (anisotropic filtering, AF) или фильтрация текстур. Она нужна для того, чтобы текстуры, которые находятся под углом или далеко от камеры не выглядели слишком мутными и на них не было никаких цветовых артефактов.

Чем выше значение - тем лучше результат фильтрации, однако сразу скажу - эти значения можно выкручивать сразу на "16x", т.е. на максимальное, и это никак не отразится на производительности даже самой бюджетной видеокарты.

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

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

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

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

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

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

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

P.S. : чуть не забыл сказать про HDAO - то же самое, что HBAO, только от компании ATI-Radeon.

Сглаживание

Пример сглаживания - изображение слева не сглажено, к изображению справа применено сглаживание 4x

Сгла́живание - технология, использующаяся в обработке изображений с целью сделать границы кривых линий визуально более гладкими, убирая «зубцы», возникающие при растеризации на краях объектов. Сглаживание было придумано в в в Architecture Machine Group, которая позже стала основной частью Media Lab.

Основной принцип сглаживания

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

Применяется два варианта сглаживания:

  • Общее сглаживание отрисовкой излишне крупного несглаженного изображения с последующим уменьшением разрешения.
  • Специализированные алгоритмы сглаживания, работающие на изображениях определённого типа (например, Алгоритм Ву для отрисовки отрезков).

Следует заметить, что сглаживание зависит от гаммы монитора. В частности, среднее между 0,2 и 0,8 - это не обязательно 0,5, а . Особенно это заметно на тонких узорах и тексте . Поэтому сглаживание наилучшего качества получается только тогда, когда известна.

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

Избыточная выборка сглаживания (англ. Super Sampling anti-aliasing , SSAA) , также называемое полносценным или полноэкранным сглаживанием (FSAA) , используется, для исправления алиасинга (или «зубцов») на полноэкранных изображениях. SSAA было доступно на ранних видеокартах, вплоть до DirectX 7. Начиная с DirectX 8 было убрано всеми производителями графических процессоров из-за его огромных вычислительных требований, и было заменено на множественную выборку сглаживания (англ. Multisample anti-aliasing , MSAA), которое также было заменено другими методам, такими как CSAA + TrAA/AAA. MSAA даёт несколько худшее качество графики, но и обеспечивает огромную экономию вычислительной мощности. Поскольку SSAA даёт более высокое качество изображения, поэтому оно было некоторое время тому назад возвращено у AMD и NVIDIA . В модельный ряд AMD HD6xxx он включён в качестве особенности (ограничено только для игр на DirectX 9), также он был выпущен драйверами NVIDIA Fermi, для всех игр, начиная с игр на DirectX 9, и заканчивая играми на DirectX 11 с использованием любых видеокарт NVIDIA с поддержкой DX10+. Из-за больших вычислительных требований, с ним можно запустить только старые игры, которые значительно меньше используют графический процессор .

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

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

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

См. также

Примечания

Ссылки

  • Данил Гридасов. Под микроскопом. GeForce CSAA vs. Radeon CFAA (рус.) . i3D-Quality . iXBT (23 октября 2008). Архивировано
  • Kristof Beets, Dave Barron. Анализ методов сглаживания на основе super-sampling (рус.) . iXBT (7 июня 2000). Архивировано из первоисточника 21 января 2012. Проверено 30 сентября 2010.

Wikimedia Foundation . 2010 .

Синонимы :

Смотреть что такое "Сглаживание" в других словарях:

    Сглажение, смягчение, скрадывание, амортизация, стушевка, тушевание, разглаживание, стушевывание, причесывание, демпфирование, нивелирование, амортизирование, выравнивание, нивелировка, заглаживание, уничтожение, ослабление, скрашивание,… … Словарь синонимов

    Выравнивание рыночной конъюнктуры путем проведения небольших регулярных интервенций. По английски: Smooth См. также: Валютные интервенции Финансовый словарь Финам … Финансовый словарь

    сглаживание - Поверхностное пластическое деформирование, уменьшающее шероховатость поверхности деформируемого материала. Примечание Сглаживание достигается накатыванием (обкатыванием, раскатыванием), дорнованием, выглаживанием и т.д. [ГОСТ 18296 72] Тематики… … Справочник технического переводчика

    Сглаживание, сглаживания, сглаживания, сглаживаний, сглаживанию, сглаживаниям, сглаживание, сглаживания, сглаживанием, сглаживаниями, сглаживании, сглаживаниях (

Nvidia представила новый графический драйвер 334.75 WHQL серии Game Ready. В нем оптимизирована поддержка World of Warcraft’s: Warlords of Draenor, Far Cry 4, Dragon Age Inquisition и The Crew. Кроме этого, в драйвере присутствует расхваленная представителями Nvidia функция MFAA (Multi-Frame Anti-Aliasing).

Что такое MFAA?

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

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

MFAA похоже на TXAA тем, что оно тоже использует временный сэмплинг в своем алгоритме, но не использует фильтры-шейдеры и не требует такой вовлеченности движка. Nvidia все еще работает над добавлением поддержки MFAA в большее количество игр (уже доступен для двадцати игр, вкючая Assassin’s Creed Unity, Battlefield 4, Civilization 5, Civilization: Beyond Earth, Crysis 3 и Titanfall).

Целью MFAA является достижение равноценного сглаживания при более высокой частоте кадров. В идеале 4 x MFAA по производительности должен соответствовать 2 x MSAA, но обеспечить качество как у 4 x MSAA или выше.

Одна из особенностей видеокарт серии Maxwell - их MFAA-система поддерживает гораздо больший набор семплинговых шаблонов, про сравнению с любым графическим процессором Nvidia предидущих поколений. Некоторые еще помнят, как для некоторых игр 5-6 лет назад можно было заставить определенные карты GeForce использовать суперсемплинг с упорядоченной сеткой (OGSSAA). Такой тип сглаживания наносил огромный ущерб производительности и размывал окончательное изображение, но позволял практически полностью убрать неровные линии. Как правило, графический процессор имеет заранее запрограммированный набор методов, хранящихся в ПЗУ, и пользователь ничего не мог в них поменять - если чип использовал OGSSAA с квадратным узором, то никто ничего не мог с этим поделать.

Карты класса Maxwell (GTX 980, GTX 970 и GTX 980M) хранят шаблоны в оперативной памяти и могут варьировать их в зависимости от активности на экране. В результате должно получиться более кчественное сглаживание.

Тестирование качества изображений с MSAA, TXAA, и MFAA

Тестировалась игра Assassin’s Creed Unity на системе Core i7-4970K с 16ГБ оперативной памяти DDR3-2133 и видеокартой Nvidia GeForce GTX 980.

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

По порядку идут 4 x MSAA, TXAA и 8 x MFAA.

Чтобы создать такое изображение с MFAA, использовался Shadowplay. Видите разницу между MSAA и MFAA? Можно заметить серые зоны в промежутках между железными решетками. Сглаживание MFAA не такое мягкое, как TXAA. Оно использует другой алгоритм шейдеров, но MFAA обрабатывает некоторые переходы искуснее.

На этих скриншотах (MFAA) присутствуют некоторые визуальные странности, которые не заметны в игре. Это искажение вызвано тем, что скриншоты делает FRAPS, а не движок игры.
4xMSAA, TXAA, 8x MFAA:

Разница сглаживания линии MFAA и MSAA:

MSAA слева, а MFAA справа. Эта картинка показывает одно из главных преимуществ системы MFAA: в отличие от MSAA, она лучшее смешивае оттенков. Неровные линии появляются из-за разницы в цвете и линиях. MFAA сгладит контраст, используя тени.

Между 8 x MFAA и 4 x MSAA ощущается значительная разница. Nvidia утверждает, что 4 x MFAA должена работать быстрее 4 x MSAA.

Влияние MSAA, MFAA и TXAA на частоту кадров

TXAA является наиболее приемлемым вариантом, но каково влияние каждой системы на частоту кадров?

Мультисемплинг в Assassin’s Creed Unity очень сильно бьет по графическому процессору. Сможет ли MFAA отыграть несколько очков в производительности?

Для GTX 980 ответ оказался утвердительным, однако не стоит слишком обнадеживаться. Такой метод сглаживания лучше подходит средним видеокартам, у которых есть проблемы с современными играми, но, к сожалению, он доступен только для GTX 980 и 970. Визуальная разница между 4x MFAA и 4x MSAA незначительная, и Nvidia утверждает, что выбор в пользу 4 x MFAA может улучшить производительность по сравнению с MSAA на 30%.

Достойное начало

На данный момент MFAA - второстепенная функция со скромной историей, коротким списком игр и ограниченным количеством совместимых карт. Но в перспективе всё может измениться. Разрешение 4К снизило потребность в сглаживании, но не исключило его полностью. Легковесный подход Nvidia может быть лучшим способом решения этой задачи, так как он позволяет избежать неудобства более сложных методов.

Будем надеяться, что эта функция просочится в средний и бюджетный сегменты линейки Maxwell в ближайшее время. Легковесное изображение в распространенных системах так же важно, как и топовая графика. Прошло только 5 лет с тех пор, как FXAA MLAA представлены для Intel. Это означает, что рынок систем сглаживания может открыться для новых подходов, особенно тех, которые будут просты в использовании для разработчиков.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: