Какие типы фильтрации поддерживаются современными видеокартами

Обновлено: 07.07.2024

Современные игры становятся всё красивее и технологичнее, вспомнить те же RTX от Nvidia, но как меняют изображение настройки в играх?

Сегодня попытаемся разобраться.

Анизотропная фильтрация

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

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

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

Шейдеры

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

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

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

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

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

Parallax mapping

Parallax mapping – это модифицированная версия известной техники bumpmapping, используемой для придания текстурам рельефности. Например таким как стены или мощёные дороги, при этом объект остаётся плоским.

Anti-Aliasing

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

Сглаживание было придумано в 1972 году в Массачусетском технологическом институте в Architecture Machine Group, которая позже стала основной частью Media Lab.

Есть несколько методов сглаживания:

  • FXAA - метод сглаживания Nvidia. Самый производительный, но самый простой метод сглаживания, представляющий собой однопроходный пиксельный шейдер, который обсчитывает результирующий кадр на этапе постобработки.
  • MSSA - этот способ является популярным и до сих пор используется в играх. Изображение генерируется с более высоким разрешением, чем отображается. Во-вторых обнаруживает края объектов и только размазывает их. Это улучшает конечный результат и оказывает несущественное влияние на производительность, хотя следует отметить, что это все-таки сказывается на количестве отображаемых кадров.
  • MFAA - тоже метод сглаживания от Nvidia. Он производит сложную выборку пикселей как в одном кадре, так и сразу в нескольких кадрах. После этого она использует специально разработанный синтезирующий фильтр для создания изображений лучшего качества со скоростью, намного превышающей традиционное сглаживание.

Методов сглаживания ещё больше, но я затронул только три из них.

Тесселяция

Это автоматизированный процесс добавления новых выпуклых (в произвольное кол-во раз) многоугольников в полигональную сетку с целью повышения детализации сетки. При этом нагрузка на ПК повышается.

С тесселяцией голова известного киллера стала более ровной С тесселяцией голова известного киллера стала более ровной

Пост-процессинг

Это все эффекты, которые накладываются на уже на готовый кадр просчитанной 3D-сцены, для улучшения готовой картинки.

К нему относятся:

Bloom

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

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

High dynamic range (HDR)

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

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

Зернистость

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

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

Motion Blur

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

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

Ambient Occlusion

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

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

Есть ещё HBAO(+) и VXAO, разработанные Nvidia - если коротко, то это более качественный SSAO, требующий больше ресурсов видеокарты и дающий более тонкое и качественное затенение объектов.

Cel shading

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

Примерами игр с таким рендерингом являются Borderlands (1-2), XIII и т.д.

Depth of field

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

Приветствую всех Стопгеймеров! Давайте начистоту, вы ведь тоже заходите в только купленную игру, но сперва кликаете на графические настройки? Кто ради чего, кому-то ради самоутверждения надо глянуть на ультра-автонастройку благодаря своему мощному «железу», а кто-то просто лезет туда ради интереса.Однако, задумывались ли вы, чем отличаются FXAA и TXAA, или 8х и 16х анизотропная фильтрация? Как-раз в этом блоге, группа Abuse Reviews сейчас вам расскажет и покажет, что же это за фильтрации такие, как они работают и с чем их едят. Поехали!

P.S.
прошлом блоге количество материала в ролике было урезано, здесь эта ошибка была учтена, очень старался для вас.Приятного просмотра)
Давайте начнём с самого-самого простого


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

Мало кто не знает, что разрешение — это количество отображаемых пикселей по горизонтали и вертикали. От этой настройки также зависит качество картинки и то, как сильно будут выражены «лесенки» в переходах между разными плоскостями\поверхностями. Но почему же возникает этот графический артефакт? Дело в том, что все графические элементы в играх состоят из пикселей, но таких проблем с прямыми линиями не происходит, но стоит только чуть её наклонить, как появляются «лесенки». Возникает это из-за отсутствия плавного перехода между цветами, которое обеспечивает сглаживание, вот о нём мы сейчас и поговорим.


Сглаживание

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


Этот вид сглаживания не слишком сильно нагружает процессор, потому что он обрабатывает лишь те части кадра, которые выглядели бы неровными, а выбирает он эти части независимо от того, где и как они располагаются. Это самый быстрый и менее затратный в плане ресурсов метод сглаживания. Отличие от прошлого метода сглаживания заключается в нескольких аспектах. В первую очередь, FXAA применяется к изображению в том разрешении, в котором вы играете, также размывает картинку сильнее, что выглядит совсем не лучше, чем MSAA, зато расходует на порядок меньше ресурсов, из-за чего этот вид сглаживания почти не вредит вашему FPS
Пожалуй, это лучший вид сглаживания, который сильно похож на MSAA, но с некоторыми дополнениями. Дело в том, что TXAA учитывает и берёт в расчёт предыдущие кадры и сглаживает последующие путём усреднения цветов.
Да, это не вид сглаживания, но избавляется от лесенок этот способ довольно неплохо, но при одном условии, которое свойственно не каждому пк. Ведь не у всех есть 2\4К мониторы, которые позволяют увеличить разрешение больше 1920х1080. За счёт уменьшения пикселей «лесенки» остаются, но становятся куда меньше, однако это влияет на производительность больше всего из перечисленных способов. Так что этот метод подойдёт только обладателям мониторов с очень высоким разрешением и мощным железом. Забавно слушать легенды о том, что если поставить 2к или 4к разрешение в игре на FullHD мониторе, то картинка станет лучше. Решил я это проверить на примере GTA V и что-то не увидел разницы до и после, ни в фреймрейте, ни качестве.

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


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

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

На этом о проблемах картинки и артефактах — всё


Тесселяция

Тут стоит обратить внимание на контур головы 47-го

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

Окклюзия окружения (Ambient Occlusion)

Лично я занимаюсь созданием 3д-моделей в Cinema 4D и довольно хорошо знаком с этой фичей. Она позволяет создавать искусственные тени, таким образом, в идеале, геймдизайнеры и создатели 3д-анимаций предпочитают использовать движки, поддерживающие функцию глобального освещения, которое позволяет создавать освещение идентичное реальному, а всё благодаря вычислениям точных оттенков каждого из пикселей, в зависимости от общего количества света, попадаемого на него. Знаю, что звучит это сложновато, но как же это преобразовывает картинку… словами не описать. Такое освещение очень подходит для различных кинематографичных сцен в мультфильмах или кат-сцен в играх, но это оказывает очень сильную нагрузку на железо, но на то у нас и есть окклюзия окружения, которая создаёт искусственные тени там, где они должны располагаться.
Для начала стоит разобраться с освещением в играх. В них источником света является естественное освещение, которое является упрощённой версией глобального освещения, где расположение теней зависит от того, есть ли перед источником естественного освещения какое-либо препятствие, но это даёт нам более плоские тени в меньшем количестве, чем хотелось бы. Тут и наступает триумф окклюзии окружения, ведь она определяет расположение дополнительных теней с поммощью трассировки лучшей, а именно вычисляет, сколько солнечных лучшей блокируется рядом со стоящими объектами. То есть, если один объект загораживает другой, то поверхность второго объекта, разумеется, будет находиться в тени. Впадины, углубления и тому подобное начинает больше выделяться с помощью окклюзии.В огромном большинстве случаев этот параметр уже «вшит» в графические настройки, что не позволяет включать и выключать его. Но это всё окклюзия окружения в общем. Наверняка вы все сталкивались с такими параметрами освещения как SSAO,HBAO и HDAO?

Она взяла своё начало со времён первого Crysis, благодаря компании Crytek, по-сути оно заключается в вычислении глубины каждого пикселя и пытается вычислить количество преград от каждой из выбранных точек. Алгоритм SSAO призван упростить вычислительную сложность алгоритма Ambient occlusion и сделать его подходящим для работы на графических процессорах в режиме реального времени. Вместе с тем качество результирующего изображения у SSAO является худшим, чем в первоначальном Ambient occlusion, так как SSAO использует упрощённые методики рендеринга(обработки изображения).
Имеет тот же принцип работы, что и SSAO но несколько усовершенствованный. Просто вычисления глубины производятся с большим числом выборок, но приходится жертвовать производительностью.
Одно основывается на другом. Таким же образом как SSAO отличается от HBAO, HDAO от HBAO отличается точно тем же, ну и ещё эта окклюзия была представлена нам компанией AMD.
Ну а что по кинематографичности?


Глубина резкости

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

Ну и последнее о чём хотелось бы рассказать


Анизотропная фильтрация

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

Ну а на этом всё. Если вам понравился этот блог и вы узнали что-то новое, обязательно жмите на плюс, а также интересно узнать, нравится ли вам качество видеоформата, если вы его глянули? Большое спасибо вам за внимание, всем удачных каток и стабильного FPS!

С каждым годом выходит все больше и больше игр, заманивающих своей уникальной графикой. Но помимо самих игр, развиваются и технологии, позволяющие применять столь реалистичные эффекты. Как правило, первое что делает человек, только что установивший новую игру, - заходит в пункт "Настройки", для того, чтобы подобрать все необходимые для его конкретной системы параметры. Но порой, тут его ожидают некоторые трудности и неясности. В частности, в разделе "Видео", где пользователю представляется возможность выбрать разрешение экрана, детальность картинки, а также сглаживание и метод фильтрации текстур. Неопытные пользователи могут быть введены в заблуждение непонятными им сокращениями и терминами, вроде "MSAA x8", "SSAA x16", "AF x4", и пр.

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

Теория: Фильтрация текстур.

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

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

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

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

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


Значение Количество текселей
2x 16 текселей
4x 32 текселя
8x 64 текселя
16x 128 текселей

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

Теория: Антиалиасинг.

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

Первыми, кто совершил попытку создания технологии сглаживания, были инженеры из 3dfx, с их SSAA (Super Sampling AntiAliasing). Принцип работы предельно прост: видеокарта рендерит кадр в более высоком разрешении, а затем уменьшает его до разрешения экрана, усредняя при этом значения пикселей. Все бы ничего, но при этом происходит колоссальное падение производительности. Ведь, например, используя 4х supersampling, видеокарте, для создания изображения размером 1280x1024, приходится рендерить кадр в разрешении 2560х2048! А это - четырехкратное падение производительности.

Было понятно, что такой метод сглаживания совершенно не рационален, поэтому вскоре появился новый - MSAA (MultiSampling AntiAliasing). Несмотря на то, что мильтисэмплинг по-прежнему генерирует картинку в более высоком разрешении, операции сглаживания проводятся исключительно на пограничных пикселях. Важным нововведением оказались дополнительные точки (sub-samples), которые строятся внутри каждого пограничного пикселя. Каждая из этих точек передает информацию о цвете в данном месте текселя, в котором она оказывается. Как и в случае с анизотропной фильтрацией, информацию о количестве дополнительных точек можно подчеркнуть из аббревиатуры.

Значение Количество sup-samples
2x 2
4x 4
8x 8

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

Значительно более легкий для видеокарты алгоритм сглаживания был впервые представлен инженерами Nvidia, в их новой линейке 8800, получивший название CSAA (Coverage Sampling AntiAliasing). Суть работы отражена в названии - помимо sup-samples, передающих информацию о цвете, внутри пикселя располагаются также и coverage-samples (значения перекрытия). Задача точек перекрытия сводится к тому, чтобы передавать информацию о перекрывающем ее объекте.

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

Значение Количество sup-samples Количество coverage-samples
8x 4 8
16x 4 16
16xQ 8 16


Тесты производительности:

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

Конфигурация компьютера:
Процессор: Intel Core 2 Quad Q6600 @ 3200MHz (400x8, 1.3125V)
Видеокарта: Palit Nvidia GeForce 8800GT
Материнская плата: Asus P5Q PRO TURBO
Память: 2x2048MB DDR2 Corsair XMS2 @ 1066MHz, 5-5-5-15
Блок питания: Corsair CMPSU-850HXEU 850W
Процессорный кулер: Zalman CNPS9700 LED
ОС: Windows 7 Ultimate x64
Версия видео драйвера: Nvidia 195.62 x64

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


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

И так, что же у нас получилось:


Результаты получились достаточно неожиданными. Технология coveragesampling (CSAA), которая по определению должна потреблять меньше ресурсов чем MSAA, здесь показывает совершенно обратную картину. Причин данного явления может быть великое множество. Прежде всего необходимо учитывать, что во многом производительность при включении сглаживания зависит от архитектуры GPU. Да и оптимизация различных технологий самой игры и версия драйвера играют не меньшую роль. Поэтому результаты при использовании других видеокарт, или, даже, другой версии драйвера, могут быть совершенно иными.

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

Кроме того, проглядывается явное соответствие показателей фпс, при использовании одинакового метода сглаживания, для AF 8x и AF 16x. При этом, разница колеблется в диапазоне от 1 до 4 фпс (за исключением MSAA 8x, где разница составляет 11 фпс). Это говорит о том, что использование фильтрации 16х может быть очень полезным, если необходимо повысить качество картинки, без существенного удара по производительности.

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

Тесты картинки:

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




Billinear / MSAA 2x Trillinear / MSAA 2x AF 2x / MSAA 2x



AF 2x / CSAA 8x AF 2x / MSAA 8x AF 2x / CSAA 16x



AF 2x / CSAA 16xQ AF 8x / MSAA x2 AF 8x / CSAA 8x



AF 8x / MSAA 8x AF 8x / CSAA 16x AF 8x / CSAA 16xQ



AF 16x / MSAA 2x AF 16x / CSAA 8x AF 16x / MSAA 8x



AF 16x / CSAA 16x AF 16x / CSAA 16xQ Billinear / CSAA 16xQ

Как видно, особой разницы в комбинациях "выше" AF 8x / MSAA 8x (CSAA 8x), попросту нет. Но при этом получается ощутимый удар по производительности, особенно при использовании Coverage Sampling AntiAliasing.

Наверняка среди читающих данную статью найдутся игроки Cs:s, HL2 и других игр на основе движка Source. Им эта статья окажется более интересной и познавательной, чем остальным. Однако целью данной писанины было лишь рассказать о современных технологиях, помогающих улучшить зрительное восприятие игр. А тесты - как способ показать на практике изложенную теорию.

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

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

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

Анизотропная фильтрация в играх

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

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

Давайте попробуем разобраться, что значит использование анизотропной фильтрации с точки зрения используемой технологии.

Режим анизотропной фильтрации

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

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

Трилинейная и анизотропная фильтрация

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

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

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

Единственный параметр, который можно менять при использовании АФ – коэффициент фильтрации, принимающий одно из четырёх возможных значений (2x/4x/8x/16x). Что подразумевается под этими коэффициентами? Это количество обрабатываемых рядом стоящих текселей (число пикселей, приходящихся на определённый размер сцены), для которых производится усреднение цвета. Понятно, что чем ниже показатель, тем хуже будет проявляться эффект, но поскольку анизотропная фильтрация создаёт немалую нагрузку на оборудование, к выбору оптимального значения параметра следует подходить взвешенно, учитывая мощность видеокарты. Единственный момент, который бы хотелось уточнить, – между режимом 8х и 16х разница в производительности будет небольшая, так что последний можно рекомендовать как предпочтительный, если вы хотите получить идеальную картинку, особо не рискуя скоростью прорисовки.

Анизотропная фильтрация текстур

Итак, мы выяснили, на что влияет анизотропная фильтрация: на производительность (fps) просчёта кадра и его качество, а поскольку NVidia и AMD используют одинаковый алгоритм АФ, то не имеет значения, какой бренд видеокарты установлен на вашем компьютере. Главное – насколько она мощная.

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

Анизотропная фильтрация и производительность

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

Как включить режим анизотропной фильтрации

Если у вас установлен видеоадаптер Radeon, щелкните ПКМ по пустой области рабочего стола и в появившемся контекстном меню выберите «Настройки Radeon».

Переход в параметры AMD Radeon

Если у вас установлена фирменная утилита AMD Radeon Software, просто запустите её. Затем перейдите во вкладку «Настройки» и выберите пункт «Видеокарта».

Раздел «Игры» в AMD Radeon

Раздел «Глобальные настройки» в AMD Radeon

В списке доступных эффектов будет «Анизотропная фильтрация». Чтобы её включить, нужно передвинуть ползунок в соответствующее положение, и тогда станет доступным выбор параметра АФ, от 2х до 16х.

Анизотропная фильтрация в AMD Radeon

Тем, у кого имеется видеоадаптер NVIDIA, нужно открыть «Панель управления NVIDIA», выбрать вкладку «Параметры 3D» пункт меню «Управление параметрами 3D».

Пункт «Панель управления NVIDIA»

Пункт «Управление параметрами 3D»

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

Анизотропная фильтрация в NVIDIA

Выключить анизотропную оптимизацию текстур можно аналогичным способом.

Заключение

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

Какой уровень анизотропной фильтрации лучше? Зависит от нескольких факторов, прежде всего – производительности оборудования и сложности приложения, насколько высоки его системные требования. Вы можете экспериментальным путём установить в какой игре лучше задействовать АФ, в какой – би- или трилинейную. По мере приобретения опыта вы сможете «на автомате» определять оптимальный для конкретной игры режим.

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

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

Читайте также: