Сравниваем апскейл на примере TESO - DLSS, FSR и другие

DLSS, FSR, DLAA и другие<br />
DLSS, FSR, DLAA и другие

Содержание

Причины развития технологий апскейла

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

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

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

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

Всё это привело к развитию технологий апскейла игр, позволяющих понизить требования игр к видеокарте пользователя за счёт минимальных потерь качества картинки. В первую очередь это DLSS и FSR. Появились также побочные технологии, позволяющие наоборот повысить качество картинки, такие как DLDSR и DLAA.

В этой статье на примерах и замерах производительности рассмотрим влияние этих технологий на качество картинки.

Протестируем следующие технологии:

  • Апскейл: DLSS, FSR, NIS, Integer Scaling, билинейный апскейл Windows для игр в окне без рамок и несколько других. Спасибо программе Lossless Scaling.
  • Даунскейл: DLDSR.
  • Сглаживание: DLAA и TAA.

В качестве игры для теста я выбрал The Elder Scrolls Online. В TESO есть редкий гость в играх — сглаживание DLAA. При этом в этой игре есть возможность протестировать любые другие технологии апскейла и даунскейла.

Тестовый стенд:

  • Монитор: LG 27GP950 3840x2160 160 Hz
  • GPU: Nvidia GeForce RTX 3070 8 Gb
  • CPU: Intel i9-9900k (5 GHz OC)
  • RAM: G. Skill trident Z [F4-4000C19D-32GTZSW] 16x2 Gb 4000 MHz (с разгоном таймингов)
  • Материнская плата: MSI z390-a-pro
  • SSD: Samsung 980 pro 1 Tb

Софт:

Методика тестирования

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

За эталонный режим возьму нативное разрешение моего монитора 3840x2160. В игре — максимальные настройки графики со всеми ползунками вправо.

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

В тестировании апскейла будет использоваться только 1080p разрешение, потому что мне лень делать 100 000 скриншотов для всех возможных разрешений. К тому же для некоторых алгоритмов скейлинга 1080p единственный возможный выбор. Особенно Integer Scaling в котором выбор небольшой — 1080p, 720p, 540p. В этом списке нет смысла выбирать что-то кроме 1080p. И самое главное — между 1080p и 2160p 4-кратная разница в количестве пикселей. То есть деградация картинки будет очень хорошо видна. А значит и эффективность алгоритмов.

Для тестирования NIS, Integer Scaling и альтернативных методов апскейла я буду использовать программу Lossless Scaling.

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

Эталонное изображение

В эталонных скриншотах разрешение игры 3840x2160, сглаживание TAA, максимальные настройки графики со всеми ползунками вправо.

Производительность:

  • Средний FPS: 84
  • FPS 1%: 82

DLDSR

DLDSR (Deep Learning Dynamic Super Resolution) — технология Nvidia рендерит изображение в играх в повышенном разрешении, а затем масштабирует его до разрешения монитора, применяя сглаживание. Благодаря этому повышается детализация и качество картинки, но на видеокарту приходится повышенная нагрузка — это снижает частоту кадров. Доступна на видеокартах с поддержкой DLSS. То есть серия RTX 2000 и новее. Эта технология наследник DSR и DLSS. Оригинальная DSR использовала метод Гаусса. DLDSR использует машинное обучение. DLDSR работает с любыми играми. Это даунскейл или суперсемлинг из более высокого разрешения до разрешения монитора.

Во время тестирования заметил, что в TESO не настоящий эксклюзивный полноэкранный режим. А лишь окно без рамок. Из-за чего DLDSR не работает. Игра всего лишь рендерит картинку 5120x2880 в «окно без рамок». Сглаживание, свойственное DLDSR, при этом не работает, поэтому и заметил проблему. Чтобы DLDSR заработал в TESO пришлось включить разрешение 5120x2880 для рабочего стола. Заметил, что в таком режиме разрешение скриншотов всё-равно равняется нативному разрешению монитора — 3840x2160.

Выставил 5к разрешение на уровне рабочего стола, чтобы зафорсить <b>DLDSR</b> в TESO<br />
Выставил 5к разрешение на уровне рабочего стола, чтобы зафорсить DLDSR в TESO

Результат:

Рендер игры и рабочего стола 5120x2880, нативное разрешение монитора 3840x2160, DLDSR, игровое сглаживание отключено, максимальные настройки

DLDSR vs Эталон:

Производительность:

  • Средний FPS: 55
  • FPS 1%: 51

DLAA

DLAA (Deep Learning Anti-Aliasing) — метод сглаживания с использованием машинного обучения. Работает с нативным разрешением в тех играх, где его специально имплементировали. Это не апскейл и не даунскейл. DLAA доступен на видеокартах с поддержкой DLSS. То есть серия RTX 2000 и новее.

В TESO есть специальная настройка для DLAA.

Результат:

DLAA vs Эталон:

Производительность:

  • Средний FPS: 75
  • FPS 1%: 72

DLSS

DLSS (Deep Learning Super Sampling)— технология апскейла nvidia, основанная на машинном обучении. Призвана повысить производительность игр без потери качества картинки. Доступна на RTX 2000 и новее. На мой взгляд настоящая магия, потому что кроме апскейла выполнят качественное сглаживание сравнимое с MSAA. Вы только вдумайтесь — сглаживание, которое только повышает FPS в играх!

В TESO есть специальная настройка для DLSS. Я буду тестировать в режиме Performance, чтобы внутренний игровой рендер соответствовал разрешению 1080p.

Результат:

DLSS vs Эталон:

Производительность:

  • Средний FPS: 136
  • FPS 1%: 131

FSR

FSR (FidelityFX Super Resolution) — технология апскейла, разработанная AMD. Доступна для почти всех относительно современных видеокарт, включая Intel, AMD и Nvidia. Официально работает только в поддерживаемых играх, но с помощью Lossless Scaling FSR можно использовать в любых играх с поддержкой оконного режима на любых видеокартах.

В TESO есть специальная настройка для FSR. Я буду тестировать в режиме Performance, чтобы внутренний игровой рендер соответствовал разрешению 1080p. Своего сглаживания в режиме FSR нет, поэтому в настройках выставлю TAA.

Результат:

FSR vs Эталон:

Производительность:

  • Средний FPS: 166
  • FPS 1%: 149

NIS

NIS (Nvidia Image Scaling) — технологический аналог FSR. Апскейл из более низкого разрешения до разрешения монитора. Официально работает только на видеокартах Nvidia GTX 1000 и новее в любых играх с поддержкой эксклюзивного полноэкранного режима. Но с помощью Lossless Scaling можно использовать в любых играх с поддержкой оконного режима на любых видеокартах.

Из-за того, что в TESO не настоящий эксклюзивный полноэкранный режим, NIS не включается при понижении разрешения игры. Я нашёл 2 способа это обойти:

  • как и в случае с DLDSR выставить разрешение рабочего стола в 1920x1080
  • воспользоваться программой Lossless Scaling. Я выбрал этот способ, так удобнее делать скриншоты

Результат:

NIS vs Эталон:

Производительность:

  • Средний FPS: 162
  • FPS 1%: 151

Integer Scaling

Integer Scaling (Цело­чис­ленное масштаби­рование) — способ увеличения изображений без размытия и искажений. Превращает каждый пиксель в квадратную или прямо­угольную группу из целого количества пикселей одинакового цвета. Предот­вращает потерю резкости в фильмах и трёх­мерных играх при увеличении 720p/1080p до 2160p и сохраняет пикселизацию в старых играх и играх на основе пиксельной графики.

Чтобы протестировать целочисленное масштабирование я воспользовался программой Lossless Scaling. Также можно настроить драйверы Nvidia на целочисленное масштабирование, но как и с DLDSR и NIS для этой игры придётся переключать разрешение рабочего стола.

Результат:

Integer Scaling vs Эталон:

Производительность:

  • Средний FPS: 177
  • FPS 1%: 162

Билинейный апскейл Windows

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

В TESO фейковый полноэкранный режим, то есть на самом деле это окно без рамок. Для активации этого алгоритма достаточно оставить разрешение рабочего стола нативным, то есть 3840x2160 в моём случае. Затем в настройках TESO сменить разрешение рендера до 1920x1080. Содержимое безрамочного окна будет растянуто благодаря встроенному в Windows билинейному апскейлу.

Результат:

Билинейный апскейл Windows vs Эталон:

Производительность:

  • Средний FPS: 188
  • FPS 1%: 174

Билинейный апскейл монитора

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

Очень хотел продемонстрировать это в статье, но не получилось. Камера iPhone 13 не очень хорошо показывает проблему. Можете поверить на слово — это худший скейлинг из всех протестированных. По возможности не используйте скейлинг силами монитора. Большинство мониторов, как и мой плохо скейлят из ненативных разрешений. В ТВ ситуация чуть получше.

Сравнение алгоритмов

Голова персонажа

  1. Эталон.
  2. DLDSR. По сравнению с эталоном больше деталей на лице, например морщины и волоски на лбу. Сглаживание лучше, почти нигде нет эффекта лесенки или замыливания. При этом чёткость слишком высокая, кожа кажется сухой. Это можно исправить в панели Nvidia настройкой DSR-плавность. В тесте я использовал значение по умолчанию 33%.
  3. DLAA. На ушах лесенка проявляется более явно, чем на эталоне с TAA. На диадеме наоборот сглаживание лучше с DLAA. Стежки на одежде чётче c DLAA. На этой картинке не вижу однозначного победителя.
  4. DLSS. По сравнению с эталоном пропали детали и объёмность картинки. Морщин на лбу почти нет. Диадема кажется плоской. Текстура перчатки потеряла детализацию. При этом картинка совсем не потеряла чёткости. Сглаживание почти такое же хорошее, как и у эталона. В целом картинка напоминает старые игры с текстурами низкого разрешения запущенные на современном мониторе высокого разрешения.
  5. FSR. По сравнению с эталоном пропали детали и объёмность картинки. Морщин на лбу нет совсем. Диадема кажется плоской. По сравнению с DLSS появилось много мыла. Нитки на одежде исчезли. Картинка всё ещё приемлемая, учитывая выигрыш в производительности.
  6. NIS. По сравнению с эталоном пропали детали и объёмность картинки. Морщины на лбу почти пропали. По сравнению с FSR картинка очень чёткая, но будто нарисована акварелью. Снова можно увидеть нитки на одежде. Картинка всё ещё приемлемая, учитывая выигрыш в производительности.
  7. Integer Scaling. Картинка очень чёткая, нет размытия. Но пиксели видны невооружённым глазом. Детали есть, но теряются в пикселях.
  8. Билинейный апскейл Windows. Самый мыльный вариант. Потеряно больше всего деталей. Эта картинка однозначно позади всех.

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

Лучшая голова
Эталон
DLDSR
DLAA
DLSS
FSR
NIS
Integer Scaling
Билинейный апскейл Windows

Трава рядом

  1. Эталон.
  2. DLDSR. По сравнению с эталоном совсем нет лесенок на траве и намного больше деталей. DLDSR тут однозначно побеждает эталон с TAA.
  3. DLAA. По сравнению с эталоном TAA намного меньше лесенок на траве. На этой картинке DLAA мне нравится намного больше эталона.
  4. DLSS. По сравнению с эталоном заметно упала чёткость текстуры шерсти на ноге лошади. Но трава смотрится лучше. Сглаживание идеальное и лучше эталона с TAA. Как и на картинке с головой возникает ощущение старой игры на экране высокого разрешения.
  5. FSR. По сравнению с эталоном отдельные травинки перестали быть видны и слились в единую мегатраву.
  6. NIS. По сравнению с эталоном потеряно много деталей. Некоторые травинки слились, как и в FSR. Но количество отдельных травинок выше. Картинка явно перешарплена.
  7. Integer Scaling. Отдельные травинки очень хорошо различимы. Но пикселизация как всегда всё портит.
  8. Билинейный апскейл Windows. Очень много мыла, но травинки хорошо различимы.
Лучшая трава
Эталонная
DLDSR
DLAA
DLSS
FSR
NIS
Integer Scaling
Билинейный апскейл Windows

Цветы вдали

  1. Эталон.
  2. DLDSR. Есть некоторые детали на деревьях, стене и траве вдали, которых почти не видно на эталоне. Лёгкий перешарп. Для идеала я бы увеличил параметр «Плавность DSR» в настройках Nvidia, но тут оставлю как есть на 33%.
  3. DLAA. Есть некоторые детали на деревьях, стене и траве вдали, которых почти не видно на эталоне и DLDSR. Нет ни мыла, ни перешарпа. Самый лучший апскейл этого элемента.
  4. DLSS. Листья деревьев, текстуры скалы и стены потеряли детали, цветы потеряли цвета. Картинка чёткая и хорошо читаемая.
  5. FSR. Все элементы значительно потеряли детализацию. Много мыла.
  6. NIS. Детали всех элементов потеряны. Чёткость высокая, всё как-будто нарисовано акварелью.
  7. Integer Scaling. Детали потерялись. Пикселизация таких дальних элементов всё портит. В динамике при шевелении травы было много мерцания всех мелких элементов на этом участке.
  8. Билинейный апскейл Windows. Очень много мыла. Результат почти идентичен FSR.
Лучшие цветы
Эталон
DLDSR
DLAA
DLSS
FSR
NIS
Integer Scaling
Билинейный апскейл Windows

Игровые шрифты

  1. Эталон.
  2. DLDSR. Шрифты чуть более сглаженные, чем на эталоне. На Уроборосе больше деталей и меньше лесенок.
  3. DLAA. Разницы с эталоном нет, так как рендеринг UI элементов при DLAA не должен затрагиваться.
  4. DLSS. Разницы с эталоном нет, так как рендеринг UI элементов при DLSS не должен затрагиваться.
  5. FSR. Разницы с эталоном нет, так как рендеринг UI элементов при FSR не должен затрагиваться.
  6. NIS. Шрифты и Уроборос намного сильнее выделены по сравнению с фоном. Границы очень чёткие. Апскейл добавил отсебятины, но шрифты стали читаться даже лучше.
  7. Integer Scaling. Шрифты и Уроборос пиксельные, но очень хорошо читаемые.
  8. Билинейный апскейл Windows. Разницы с эталоном нет, так как рендеринг UI элементов при Билинейном апскейле в TESO не должен затрагиваться.
Лучший шрифт
Эталон
DLDSR
DLAA
DLSS
FSR
NIS
Integer Scaling
Билинейный апскейл Windows

Производительность и выводы

Отсортировал по производительности<br />
Отсортировал по производительности

Забыл добавить оконный режим 1080p без скейлинга (Average 191, FPS 1% 164). Исправляюсь:

1080p оконный режим<br />
1080p оконный режим

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

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

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

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

FSR и NIS алгоритмические родственники и потому близки по производительности. По качеству картинки в целом тоже. Хотя в моих тестах NIS даёт акварельный эффект, а FSR мыльный. Но на самом деле вся разница в настройках шарпенинга. Я никак это не тюнил для теста и только поэтому результирующая картинка разная. Если откалибровать оба метода — картинка будет очень похожей.

Integer Scaling на втором месте по производительности. И это неудивительно — самый примитивный способ апскейла. Каждый пиксель растягивается на 4 пикселя. При этом он самый честный по картинке. На 27 дюймов 2160p мониторе картинка полностью соответствуют 27 дюймов 1080p монитору. Я иногда использую этот скейлинг. Он идеально подходит для пиксельных игр. Но и 3d игры смотрятся неплохо, если вам не критична повышенная детализация.

Из недостатков моего тестирования добавлю, что для NIS и Integer Scaling я использовал стороннюю программу Lossless Scaling. Что могло сказаться на результатах по производительности, но не по качеству.

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

Кому понравился материал, прошу пройти голосования в разделе «Сравнение алгоритмов».

Интересно как DTF оценит такой субъективный материал, как качество апскейла:

176176 показов
16K16K открытий
66 репостов
154 комментария

DLSS привёл к тому, что разрабы обленились, суки, и забили на оптимизон. Теперь почти все игры в эталонном разрешении 4к выдают 30fps на 3090, остальное типа вытащишь мылом длсса, не наши проблемы.

Ответить

Но DLSS как-раз не мыльный. Особенно, если брать пресет качество.

Ответить

разрабы забили гораздо раньше DLSS

Ответить

Мне вот всегда интересно - а люди которые жалуются что то не идеально сделал свою работу но хочет денег за продукт - сами то идеально свою работу делают? Они висят на доске почёта лучших работников месяца? Они остаются на работе до ночи, чтобы не просто сделать что то а сделать идеально.. Или у них тож всегда найдутся причины типа - "а вот пусть платят в 2/3/4/5/6 раз больше - тогда и буду выкладываться на 100%"

Ответить

Блин, это всё круто и достойно уважения за проделанную работу, но зачем было тестировать DLSS и FSR в режиме Performance, если весь кайф и преимущество в режимах Quality?

Ответить

В статье описал. По 2 причинам - посмотреть как алгоритмы справляются с "плохими" режимами. Также integer scaling можно запускать только в кратных режимах - 1080p/720p/540p

Ответить

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

Ответить