Что такое сглаживание в играх и какое лучше выбрать
- Подобрать компьютерШаг 1 из 3. Цели и пожелания01. Цели и пожелания02. Сроки и бюджет03. КонтактыМожно выбрать несколько вариантовЦели использованияПожеланияСвой вариант
- Подобрать компьютерШаг 2 из 3. Сроки и бюджет01. Цели и пожелания02. Сроки и бюджет03. КонтактыМожно выбрать только один вариантСрокиБюджет
- Подобрать компьютерШаг 3 из 3. Контакты01. Цели и пожелания02. Сроки и бюджет03. Контакты* — обязательное поле
- Что такое сглаживание в играх?
- Виды сглаживания в играх
- Какое сглаживание лучше выбрать?
- Компьютеры HYPERPC
Мы готовы помочь Вам
Мы запускаем крупнейший розыгрыш в истории HYPERPC с призовым фондом более 1 000 000 рублей!
УчаствоватьКогда мы заходим в настройки графики любой современной игры, то видим множество параметров. Некоторые из них у нас не вызывают вопросов. Например, качество текстур, очевидно, отвечает за то, насколько детализированными будут внутриигровые модели. Но в графических настройках встречаются параметры, названия которых нам совершенно ни о чем не говорят. И одним из таких является сглаживание. Далее мы расскажем, зачем нужна данная технология, как ее включить, а также как работают наиболее популярные алгоритмы.
Но перед этим оговоримся, что для простоты восприятия мы опустим сложные нюансы. Рядовому геймеру нет необходимости подробно знать о каждом алгоритме сглаживания. Наша задача – донести до вас информацию так, чтобы вы научились легко настраивать графику в видеоиграх.
Что такое сглаживание
и для чего нужно
Чтобы понять, для чего нужно сглаживание в играх, кратко познакомимся с конструкцией дисплеев. Изображение на современных мониторах строится при помощи маленьких квадратных пикселей. К примеру, у дисплеев Full HD их количество составляет 2 073 600 штук. Когда нам нужно изобразить прямую линию, никаких проблем нет. Но если нам требуется построить диагональ, то возникает эффект «зубчатости». Его также называют «ступенчатостью» или «лесенками», но научное название – «алиасинг».
Избавиться от этого эффекта можно тремя способами:
- перестать пользоваться жидкокристаллическими мониторами;
- увеличить максимальное число пикселей на дисплее;
- разработать алгоритм для устранения алиасинга.
От первого варианта человечество напрочь отказалось. Дело в том, что ЖК-дисплеи (LCD) формируют крайне качественную картинку. Мониторы с электронно-лучевой трубкой, которые были популярны ранее, хоть и не имели «лесенок», но значительно уступали по детализации.
Второй вариант очень сложен в реализации. Изготавливать электронику с миллионами крохотных компонентов невероятно трудно. К тому же увеличение пикселей значительно повысит стоимость производства. Многие пользователи просто не смогут себе позволить настолько дорогую технику. Да, начиная с 2013 года в магазинах начали появляться мониторы и телевизоры с разрешением 4K. Они имеют примерно на 6 миллионов пикселей больше, чем у Full HD дисплеев. Но их стоимость, а также необходимость покупать топовые видеокарты отпугивают геймеров даже в 2023 году. Согласно статистике Steam, лишь 2,6% пользователей имеют 4K мониторы. Но высокая цена – это только одна из проблем. Другая заключается в том, что дисплеев с разрешением 4K все равно недостаточно для устранения алиасинга. «Ступенек» становится гораздо меньше, но они не пропадают полностью. А о массовом использовании 8K дисплеев не может идти никакой речи.
И остается третий вариант – разработать программу по устранению «лесенок». Графические инженеры именно так и поступили. Они дали этой технологии название «Anti-Aliasing» или по-русски «Сглаживание». Таким образом, сглаживание – это алгоритм, который устраняет эффект «ступенчатости» на границах кривых линий.
Какие виды сглаживания в играх бывают
Казалось, что избавиться от алиасинга будет просто. И действительно, программисты относительно быстро нашли способы его устранения. Разработанный метод отлично справлялся с «зубчатостью». Однако у этой разработки был всего один недостаток – она требовала невероятно много вычислительной мощности. Игровых разработчиков это совершенно не устраивало, а потому графические программисты начали искать альтернативные способы исправления этого эффекта. И все эти поиски привели к тому, что на сегодняшний день созданы десятки самых разных алгоритмов. Более того, они продолжают разрабатываться и совершенствоваться. На дворе 2023 год, но проблема сглаживания в современных играх по-прежнему не решена.
А все дело в огромном количестве недостатков, которые присутствуют у алгоритмов. Необходимость в дополнительной вычислительной мощи – это только одна из проблем. Дело в том, что в компьютерной графике существует несколько видов алиасинга. И все алгоритмы хорошо справляются с одними их типами, но плохо с другими. Не нужно знать все от и до о каждом виде алиасинга, чтобы правильно настраивать графику в играх. Но давайте кратко ознакомимся с ними:
- Геометрический алиасинг. Возникает при построении наклонных линий. Например, когда перед нами стена, мы видим «лесенки» на ее границах.
- Подпиксельный алиасинг. Возникает при отображении узких объектов. К примеру, линии электропередач просто исчезают на расстоянии.
- Субпиксельный алиасинг. Возникает при сближении узких объектов друг к другу. Например, удаляясь от решетки, ее прутья начинают превращаться в «кашу».
- Алиасинг прозрачности. Возникает во время отображения множества мелких объектов – при удалении от дерева, листва начинает «мерцать».
- Текстурный алиасинг. Возникает при рассмотрении текстур под углом – чем дальше текстура ландшафта, тем сильнее она размывается.
- Шейдерный алиасинг. Возникает при создании контрастного освещения. К примеру, яркое солнечное отражение может создавать квадратные артефакты.
В итоге желание найти баланс между производительностью и эффективностью породило десятки типов сглаживания. Однако к 2023 году разработчики отмели многие из них, и сегодня используются только следующие виды сглаживания в играх:
- Super Sampling Anti-Aliasing (SSAA);
- Coverage Sampling Anti-Aliasing (CSAA);
- Temporal Anti-Aliasing (TAA);
- Fast approXimate Anti-Aliasing (FXAA);
- Morphological Anti-Aliasing (MLAA);
- Subpixel Morphological Anti-Aliasing (SMAA);
- Deep Learning Super Sampling (DLSS).
Все эти слова и аббревиатуры выглядят страшно только на первый взгляд. Далее мы опустим множество технических нюансов и сфокусируемся только на принципе работы этих технологий. Вы поймете, что ничего суперсложного здесь на самом деле нет.
SSAA (Super Sampling Anti-Aliasing)
Помните, мы говорили, что разработчики относительно быстро нашли метод по устранению «лесенок»? Так вот, этим самым методом был Super Sampling Anti-Aliasing или сокращенно SSAA (у нас его принято называть суперсэмплингом). Чтобы создать алгоритм по удалению «ступенек», разработчики придумали помещать в центр пикселя виртуальную точку. Ей дали название «Sample». Если диагональная линия пересекала эту точку – пиксель загорался, если не пересекала – пиксель не выводил изображение.
Как видно на схеме, построить таким способом нормальный треугольник, состоящий из диагональных отрезков, не получается. И тогда разработчики решили помещать внутрь пикселя не один сэмпл, а сразу четыре. Причем они располагались не в одном месте, а в разных.
Но для чего использовать несколько точек вместо одной? Оказалось, это необходимо, чтобы регулировать степень яркости пикселя. Принцип работы следующий:
- линия пересекает сразу все 4 сэмпла – пиксель загорается на полную;
- линия пересекает только 3 сэмпла – пиксель загорается на три четверти;
- линия проходит через 2 сэмпла – пиксель работает наполовину;
- линия проходит только через 1 сэмпл – пиксель загорается всего на треть;
- линия не пересекает ни один из сэмплов – пиксель вообще не загорается.
Простейшая манипуляция с «виртуальными точечками» великолепно решала проблему алиасинга. И пока инженеры праздновали победу, геймдизайнеры испытывали ужас. Да, алгоритм SSAA действительно устранял «лесенки» в компьютерной графике. Но делал он это чудовищно высокой ценой – программа очень сильно нагружала графический процессор. А все потому, что каждый сэмпл воспринимается системой как самостоятельный пиксель. При настройках графики SSAA, к примеру, на «4X», создается изображение в 4 раза больше исходного, а затем сжимается до разрешения монитора. Нетрудно догадаться, что нагрузка на ГПУ также увеличивается в 4 раза.
И тогда графические инженеры отправились на поиски нового алгоритма. Они быстро заметили, что алиасинг возникает только на границах объектов. А потому зачем сэмплировать всё изображение? Почему бы не рассчитать только те пиксели, которые находятся на границах объектов? Именно так и поступили. Новая технология получила название «MultiSample Anti-Aliasing» или MSAA (у нас ее принято называть мультисэмплингом). В большинстве случаев свежий алгоритм действительно требовал намного меньше мощности. Однако в видеоиграх по-прежнему оставались сцены, где MSAA был настолько же «прожорливым», что и SSAA. Например, в лесах с большим количеством растительности. Также мультисэмплинг значительно уступал суперсэмплингу по эффективности. MSAA боролся только с геометрическим алиасингом, но другие типы «ступенчатости» он не затрагивал. Чтобы изменить это, программисты создали улучшенную версию мультисэмплинга, о которой мы поговорим далее.
CSAA (Coverage Sampling Anti-Aliasing)
CSAA представляет собой улучшенный вариант MSAA. Так как этот тип сглаживания почти не применяется в современных играх, мы не будем подробно о нем говорить, а только в общих чертах. Алгоритм CSAA, как и MSAA, работает на границах объектов. Но помимо обычных сэмплов, он также использует дополнительные. Но за что они отвечают? Эти вспомогательные сэмплы собирают информацию о соседних пикселях для построения более качественного изображения. Причем они почти не нагружают систему – максимальный режим CSAA по производительности равен MSAA 4X. При этом качество итоговой картинки аналогично MSAA 8X. Но, несмотря на эти показатели, игровые разработчики по-прежнему были недовольны высокой требовательностью. А потому графические инженеры приступили к созданию новых типов сглаживания, не использующих сэмплы в своей работе.
TAA (Temporal Anti-Aliasing)
Именно этот алгоритм является стандартом для игровой индустрии. Ранее мы говорили, что все типы сглаживания хорошо справляются с одними видами алиасинга, но плохо с другими. Так вот, TAA-сглаживание – это единственный в мире алгоритм, который эффективно борется со всеми типами алиасинга. Причем делает он это ценой крайне малой производительности. При включении TAA-сглаживания FPS в играх падает всего на 5-10%. Это в десятки раз меньше, чем у SSAA и MSAA. Также темпоральное сглаживание работает на этапе пост-процессинга. Это значит, что игровым разработчикам не нужно внедрять алгоритм в свой движок. Достаточно переместить файлы сглаживания в проект и написать пару строчек кода.
Изображение на мониторах строится при помощи кадров, которые с высокой скоростью сменяют друг друга. Чем больше этих кадров сменяется за одну секунду, тем плавнее будет изображение. Эта характеристика называется «Frames Per Second» или сокращенно «FPS». Работа TAA-сглаживания как раз осуществляется за счет этих кадров:
- алгоритм запоминает часть пикселей от предыдущего изображения;
- использует их для реконструкции нового;
- итоговое расположение пикселей усредняется;
- создается сглаженная картинка.
Да, это метод работает настолько элементарно, насколько звучит. Никаких манипуляций с точками, сэмплами или выборками. Просто берется часть предыдущего кадра и совмещается с новым. Создали TAA – гениальные разработчики из компании NVIDIA. Спросите, почему гениальные? Да потому, что только им пришла в голову простейшая мысль – использовать отработанные кадры с пользой.
Но неужели у TAA-сглаживания нет недостатков? Есть, но их всего два: «гостинг» и «мыло». Под «гостингом» подразумевается образование шлейфов у быстро движущихся объектов. Возможно, вы замечали, как в современных играх падающая листва оставляет за собой след. Вот именно это и называется гостингом (от слова «Ghost», в переводе – «призрак»). К сожалению, избавиться от этого эффекта полностью невозможно. Но разработчикам удалось значительно снизить его интенсивность. Также помогает увеличение частоты кадров. Например, при 30 FPS гостинг гораздо сильнее, чем при 60. Под «мылом» подразумевается потеря детализации. Картинка становится смазанной и расплывчатой. Полностью избавиться от этого явления невозможно. Однако интенсивность «мыла» можно снизить несколькими способами:
- Увеличить разрешение. При Full HD «мыла» будет много, при 2K – меньше, а при 4K оно почти исчезнет.
- Наложение резкости. Этот эффект выделяет границы объектов, что делает их более детализированными. Интенсивность «мыла» также зависит от работы графических программистов. Например, в Battlefield 5 и Days Gone используется одинаковое TAA-сглаживание. Однако в первой игре «мыла» очень много, а вот во второй – гораздо меньше. Почему так? Потому что некоторые разработчики лучше справляются с реализацией некоторых технологией.
FXAA (Fast approXimate Anti-Aliasing)
Это сглаживание пользовалось большой популярностью до изобретения TAA. А все потому, что оно легко встраивалось в игру и требовало мало производительности (FPS падал на 2-3%). Кстати, его также разработала компания NVIDIA. Алгоритм FXAA устраняет алиасинг путем сравнения яркости и контрастности соседних пикселей. Например, очевидно, что стена и небо имеют разную яркость. Алгоритм распознает их границу и сглаживает обнаруженную линию. Несмотря на преимущества и простоту работы, FXAA имеет множество недостатков. Оно не справляется со многими типами алиасинга и сильно «мылит» изображение.
MLAA (MorphoLogical Anti-Aliasing)
Как и FXAA, данный тип сглаживания анализирует цвета между соседними пикселями. Его разработала компания Intel, а все вычисления осуществляются не на видеокарте, а на центральном процессоре. Технология MLAA устраняет «лесенки» в 3 этапа:
- сначала обнаруживаются резкие цветовые переходы (аналогично FXAA);
- далее они распознаются с помощью специального алгоритма;
- и в конце распознанные пиксели смешиваются друг с другом.
Сглаживание MLAA относительно неплохо справляется с «зубчатостью» и делает это ценой небольших мощностей. Однако данный алгоритм имеет два ключевых недостатка: «замыливание» и невозможность работы с мелкими объектами. Чтобы исправить эти проблемы, разработчики решили модифицировать данную технологию. В результате получился новый вид сглаживания, о котором речь пойдет далее.
DLSS (Deep Learning Super Sampling)
Объяснить простыми словами, как работает этот тип сглаживания, сложно. А потому мы дадим только самую общую информацию. Итак, все технологии антиалиасинга требуют вычислительной мощности. Одним алгоритмам нужно много производительности, а другим – мало. Но существует всего один тип сглаживания, который не отнимает FPS, а, наоборот, прибавляет его. Звучит как волшебство, не правда ли? Но на деле это реальность. Речь идет, конечно же, о DLSS, или «сглаживании на основе глубинного обучения» от компании NVIDIA.
В основе данной технологии лежит нейронная сеть. Если опустить сложные технические подробности, то это математическая модель, которая может самостоятельно обучаться. Для работы нейросети требуется перемножать множество матриц данных. Но видеокарты понятия не имеют, как это делать. Поэтому NVIDIA добавила в свои устройства специальные вычислительные блоки под названием «тензорные ядра». За счет именно этих ядер работает DLSS-сглаживание.
Так почему у нас FPS прибавляется, а не отнимается? Дело в том, что при включении DLSS на ваш монитор выводится изображение с меньшим разрешением. Например, если у вас дисплей Full HD, и вы включаете DLSS на «качество», то игра работает не в 1080p, а в 720p. Но как это возможно, если в настройках графики стоит разрешение 1920×1080p? Вот именно в этом и состоит работа нейросети. Она «дорисовывает» изображение до того разрешения, которое у вас выставлено в настройках игры.
DLSS-сглаживание обладает теми же преимуществами и недостатками, что и TAA. А все потому, что временный антиалиасинг лежит в основе этой технологии. Если упростить до максимума, то DLSS – это тот же TAA, но с прибавкой производительности.
Также недавно вышла отдельная версия DLSS – DLAA. Ее отличие состоит в том, что она не снижает разрешение картинки. Нейросеть используется для того, чтобы сделать картинку качественнее. За счет этого FPS не повышается, а качество итогового изображения почти не отличается от стандартного TAA.
Какое сглаживание лучше выбрать
Лучшее сглаживание сегодня – это DLSS. Однако данная технология является эксклюзивом видеокарт NVIDIA GeForce RTX. Если игра не поддерживает DLSS, у вас другая карта или вам просто не нравится, как происходит сглаживание картинки, то включайте TAA. Почти во всех современных проектах оно используется по умолчанию. Но, предположим, вы играете в киберспортивные проекты, и вам нужно избавится от «мыла». Тогда используйте SMAA.
Кстати, не забывайте, что «мыло» можно уменьшить, увеличив разрешение картинки. Во многих играх есть такой параметр – «масштаб разрешения». По умолчанию он выставлен на 100%. Если повысить его, например, до 130%, то игра будет работать в разрешении на 30% больше исходного.
Давайте разберемся на примере. Предположим, у вас монитор с разрешением 1920×1080p, и вы выставляете масштаб разрешения на 130%. Таким образом, изображение будет выводится не в 1920×1080px, а в 2496×1404px. Но имейте в виду, что нагрузка на видеокарту также увеличится на 30%.
Еще частично устранить «мыло» помогает эффект резкости. Его можно добавить в любую игру, если у вас установлена программа GeForce Experience. Она позволяет не только вовремя обновлять драйверы видеокарт NVIDIA, но и накладывать графические эффекты. Зайдите в игру, нажмите сочетание клавиш Alt+F3 и добавьте резкость. Ее интенсивность настраивается с помощью ползунка.
В старых играх современных типов антиалиасинга не будет. Чаще всего придется довольствоваться мультисэмплингом. Выставляйте его на значение 2X или 4X. А если мощность вашей видеокарты позволяет, то можете попробовать установить MSAA на 8X
Компьютеры HYPERPC и современные типы сглаживания
В системы HYPERPC устанавливаются графические ускорители от компании NVIDIA серии RTX. Это значит, что вам будет доступно любое сглаживание, в том числе и DLSS. Оно в разы повышает частоту кадров и позволяет играть с новейшими графическими технологиями. Даже трассировка лучей не станет для вас особой проблемой. С компьютерами HYPERPC вам открывается полноценный доступ в мир гейминга на максимальных настройках графики.