0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Урок №29

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

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

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

Первоначально программисты для реализации сглаживания в своих программах использовали метод сглаживания SSAA (от англ. «Super Sample Anti-Aliasing), который для рендеринга сцены временно использует рендербуфер с гораздо более высоким разрешением. Затем, когда вся сцена будет визуализирована, разрешение уменьшается до нормального. Дополнительное разрешение было использовано для предотвращения появления эффекта зазубренных краёв. Но в то время, как данный метод действительно помогал решить проблему алиасинга, он обладал серьезным недостатком в виде просадки по производительности, так как нам приходится рисовать намного больше фрагментов, чем обычно. Поэтому данная техника имела лишь короткий момент славы.

Дальнейшее развитие метода SSAA породило более современную технику сглаживания MSAA (от англ. «MultiSample Anti-Aliasing»), которая заимствует концепции SSAA, реализуя гораздо более эффективный подход в сглаживании зазубренных краёв объекта. В этом уроке мы подробно обсудим метод MSAA, являющийся встроенной технологией сглаживания в OpenGL.

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

В качестве образца будет использоваться игра Track Mania вкупе с Full HD разрешением монитора. Видеокарта GTX 1070. Первый скриншот «чистый», без сглаживания. Просматривать рекомендуется в полном размере.

FXAA (Fast approXimate Anti-Aliasing)

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

Читать еще:  Iommu controller что это

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

SMAA (Subpixel Morphological Anti-Aliasing)

Продвинутое пост-сглаживание, основанное на FXAA и MLAA. Дает ощутимо лучший результат, но потребляет чуть больше ресурсов видеокарты. Имеет четыре степени качества.

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

MSAA (Multi-Sample Anti-Aliasing)

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

Когда в играх вы выбираете степень сглаживания x2, х4 или x8 подразумевается именно MSAA.

SSAA (Super-Sample Anti-Aliasing)

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

При выборе настройки SSAA x 4 объект увеличивается в четыре раза с каждой стороны (вертикаль и горизонталь), что дает внутреннее разрешение 7680×4320 от изначального 1920×1080.

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

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

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

Иногда в настройках попадается SSAA x 0.5. При его использовании игровое разрешение уменьшается вчетверо (до 960×540), что ухудшает качество картинки, но дает прирост производительности.

Читать еще:  Что делать если пропала панель управления Nvidia

DSR (Dynamic Super Resolution)

Технология от NVIDIA, позволяющая использовать разрешения, превышающие возможности вашего монитора. Максимальное значение x 4, что соответствует формату 2160p. По качеству немного превосходит SSAA x2.

И если SSAA работает с внутренним разрешением игры, то DSR запускает игру в настоящем 4К, которое затем даунскелится до родного разрешения монитора. Это дает возможность снимать видео и делать скриншоты в 3840×2160 на мониторе с меньшим разрешением.

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

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

У AMD есть свой аналог, названный VSR (Virtual Super Resolution).

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

Комбинации и ответвления

Производители частенько любят хитрить со сглаживанием, комбинируя методы. В качестве примера TXAA: на самом деле это всего лишь одновременная работа MSAA и FXAA низкого качества. Адаптивным сглаживанием называют SSAA + MSAA. Многокадровое сглаживание MFAA это просто надстройка для MSAA, призванная улучшить качество (через панель управление не заработала ни в одной игре).

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

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

Кстати, DSR и SSAA можно использовать одновременно. Track Mania в этом случае запускается в разрешении 16К (15360×8640), при 26 кадрах в секунду.

В итоге игра 2006 года почти «поставила на колени» GTX 1070. Ну а про игры типа Metro Redux и говорить нечего, всего 1-3 фпс.

Читать еще:  Что значит тихая установка программ?

Snapdragon 845: новые ядра Cortex A75 и A55

Qualcomm выпустила свой мощнейший мобильный процессор Snapdragon 835 всего несколько месяцев назад и на данный момент на рынке есть всего несколько смартфонов на базе Snapdragon 835, в том числе и Xiaomi Mi 6. Тем не менее, американская компания уже начала разработку его преемника в лице Snapdragon 845. Новинка логичным образом станет еще мощнее и энергоэффективнее, в основном благодаря использованию новых ядер Cortex A75 и A55.


Таким образом почти все отличия 845-й модели от 835-й будут состоять в вычислительных ядрах. В то время как Snapdragon 835 построен на восьми ядрах Kryo 280, Snapdragon 845 будет работать на базе четырех ядер Cortex A75 и четырех Cortex A55 в конфигурации big.Little. Говорится, что ядра Cortex A75 на 20% более производительны по сравнению с Cortex A73. Кроме того Cortex A75 имеет максимальную тактовую частоту 3.0 Ггц.

Ядра Cortex A55, в свою очередь, улучшат свою производительность примерно в 2 раза по сравнению с Cortex A53, при этом энергоэффективность увеличивается на 15%. Новые ядра также имеют некоторые отличия в архитектуре. Раньше производители умещали до 4 ядер в одном кластере, теперь же ядра Cortex A55 можно поместить в кластер из 8 ядер. Таким образом будущий аналог Snapdragon 625 (8 ядер A53 на два кластера) сможет вместить 16 ядер в 2 кластера.

P.S. Думаете Mediatek еще больше разовьет эту идею?

Товары, которые могут вас заинтересовать:

Global Version означает, что товар выпущен для мирового рынка, и соответствует международным стандартам качества.

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

Фитнес-браслет Xiaomi Mi Band 4 (черный) (XMSH07HM)

Ссылка на основную публикацию
Статьи c упоминанием слов:

Adblock
detector