4K и 120 FPS «на максималках»: как технология DLSS 2.0 изменит наше отношение к производительности в играх

Технический специалист NVIDIA рассказывает о технологии, а мы — проверяем его слова на практике.

4K и 120 FPS «на максималках»: как технология DLSS 2.0 изменит наше отношение к производительности в играх

Я ехал в московский офис NVIDIA совсем по другому поводу, но одно короткое демо изменило мои планы. На небольшом компьютере в переговорке была запущена Wolfenstein: Youngblood, которая шла в 4К на максимальных настройках графики при стабильных 120 fps. Но как?

Для современного компьютерного железа это практически невозможно — даже GeForce RTX 2080 Ti выдаёт на пресете Mein leben! 60‑70 кадров в секунду. Я уж было решил, что мне по секрету показывают видеокарту нового поколения, но всё оказалось куда проще. Олег Шкода, технический специалист NVIDIA, рассказал мне о том, какой путь прошла технология DLSS за два года с момента её появления и о том, как она повлияет на будущее игр.

DLSS (Deep learning super sampling) — это метод сглаживания от NVIDIA, который обрабатывает изображение при помощи нейросетей. Видеокарта рендерит кадры в пониженном разрешении, а потом достраивает их до более высокого.

Впервые технология DLSS появилась в Battlefield 5 и Metro: Exodus и позиционировалась как способ получить «бесплатный» прирост fps при использовании ресурсоёмкой трассировки лучей. На практике эффект получился спорным — производительность действительно росла, но ценой видимого ухудшения качества. Игроки и журналисты принялись ругать «мыльные» текстуры, в которых легко угадывался апскейл из более низкого разрешения.

В этом видео достаточно наглядно демонстрируется разница между включённой и выключенной DLSS образца 2018 года.

Как работает DLSS и как развивалась эта технология

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

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

Олег Шкода

В Metro ситуация была не лучше, и, разочаровавшись, я решил просто игнорировать эту опцию в настройках графики — хорошие вещи «бесплатными» не бывают. Как оказалось, крест ставить было рано.

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

Олег Шкода

В Control настройка DLSS предлагает вручную выбрать разрешение, из которого будет производиться апскейл. Для примера, в «нативном» 4К с включённой трассировкой лучей Control идёт на моей RTX 2060 в совершенно неиграбельных 16 fps. Включаем DLSS c рендером в 1440р — становится 42 fps, это значительно лучше.

Разницу можете оценить самостоятельно.

Нажмите на изображение, чтобы раскрыть его на полный экран. Даже в это режиме оно выводится в сжатом виде и «мылится» из-за особенностей нашего редактора — для полного разрешения нажмите на иконку скачивания в правом верхнем углу.

Правда, изредка текстуры не прогружаются и получается вот так:

Внимание на бункер на заднем плане
Внимание на бункер на заднем плане

В Deliver Us The Moon и Wolfenstein: Youngblood мы использовали алгоритм, который реконструирует картинку по двум кадрам, предыдущему и текущему, чтобы повышать разрешение и восстанавливать мелкие детали. Мы дополнили его нейросетью — она помогает попиксельно совмещать кадры и чистит картинку от артефактов, мерцания и следов гостинга. Это последняя на сегодня версия технологии, можно назвать её DLSS 2.0. Эксперты говорят, что она даёт практически неотличимое от нативного разрешения качество.

Олег Шкода
Например, новый DLSS хвалят эксперты Digital Foundry

Вот несколько скриншотов для сравнения качества картинки на разных настройках.

Нажмите на изображение, чтобы раскрыть его на полный экран. Даже в это режиме оно выводится в сжатом виде и «мылится» из-за особенностей нашего редактора — для полного разрешения нажмите на иконку скачивания в правом верхнем углу.

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

Олег Шкода

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

Могут ли разработчики поменять версию DLSS в своей игре

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

Олег Шкода

То есть делать этого никто не будет — слишком дорого. Для той же DICE будет куда рентабельнее применить новую версию технологии в следующем проекте, чем привлекать целую команду для того, чтобы исправлять уже вышедшую Battlefield 5.

В киберспортивных играх никогда не бывает слишком много fps. Когда ждать появление DLSS в этом сегменте?

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

Олег Шкода

В конце 2020 в продаже появятся новые консоли — Sony и Microsoft уже подтвердили, что они будут поддерживать аппаратную трассировку лучей. Это изменит базовый уровень производительности, на который ориентируются разработчики игр.

Во все игры, в разработке которых мы принимаем участие, мы стараемся добавить поддержку новой версии DLSS, которая позволяет получить больше fps и обеспечивает картинку, не отличимую от нативного разрешения. Это важно для нас — люди с RTX 2070, RTX 2080 хотят играть во все игры в QHD и 4К при фреймрейте не ниже 60, и мы стараемся обеспечить им это.

Олег Шкода

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

DLSS способна продлить жизнь RTX-картам

Игры с DLSS показывают заметно лучшую производительность с включённой трассировкой. В Wolfenstein: Youngblood можно получить в 4К при максимальных настройках в 120 fps на RTX 2080 Ti. Без DLSS получается чуть больше 60. Что касается RTX 2060, она останется актуальной для Full HD в обозримом будущем, тем более с DLSS.

Олег Шкода

GeForce RTX 2080Ti уже сейчас превосходит уровень будущих консолей по чистой производительности. Мощность графической системы Xbox Series X составляет 12 терафлопс, а игрового флагмана NVIDIA — порядка 13 терафлопс. Рано или поздно более младшие видеокарты из актуальной линейки окажутся на позиции догоняющих, но совсем с дистанции не сойдут.

DLSS работает и при выключенной трассировке. Нам было важно сделать результат работы алгоритмов неотличимым от нативного разрешения по детализации и эффектам. DLSS — это бесплатная производительность, за которую отвечают специальные тензорные и RT-ядра в видеокартах RTX. При перемножении матриц, задействованных в работе DLSS и искусственного интеллекта, темп расчёта у тензорных ядер в 8 раз выше, чем у CUDA-ядер.

Олег Шкода

Со временем можно будет отказаться от эффектов трассировки, но продолжать играть в высоком разрешении с хорошим фреймрейтом. Это даёт видеокартам начального уровня вроде RTX 2060 «запас прочности», которого лишены карты без дополнительных тензорных ядер.

В таблице ниже приведены результаты тестов Wolfenstein: Youngblood и Deliver Us The Moon. Наши тесты показали, что DLSS текущей версии оказывает наиболее заметное влияние на производительность при высоком разрешении.

Так DLSS и трассировка лучей работают в Deliver Us The Moon. Если тщательно присмотреться, можно увидеть различия между DLSS и «нативным» разрешением, причём в пользу алгоритма. Заклёпки на стене, донышко баллона справа и стол с лампой за стеклом более детализированы именно при включённом DLSS.

Нажмите на изображение, чтобы раскрыть его на полный экран. Даже в это режиме оно выводится в сжатом виде и «мылится» из-за особенностей нашего редактора — для полного разрешения нажмите на иконку скачивания в правом верхнем углу.

Технологии апскейлинга покидают «чистилище» для компромиссов сомнительной эффективности и становятся стандартом. Да и нужен ли рендеринг в нативном разрешении, если умные алгоритмы позволяют получить больше реальной производительности при практически неотличимом качестве? И DLSS — не единственная такая технология.

4K и 120 FPS «на максималках»: как технология DLSS 2.0 изменит наше отношение к производительности в играх

Консоли подхватили этот тренд ещё давно — Xbox One динамически масштабирует разрешение между 900р и 1080р, чтобы удерживать более-менее стабильный фреймрейт. PS4 Pro, в свою очередь в принципе не может рендерить игры в нативном 4К. Консоль оборудована аналогом видеокарты среднего уровня Radeon RX 480 и использует приём «шахматного» рендеринга, при котором реально просчитывается только каждый второй пиксель, а остальные достраиваются по алгоритму.

Консоли нового поколения обещают воспроизводить игры в 4К/120 fps или в разрешениях вплоть до 8К, что для железа такого уровня попросту невозможно. Соответственно, в дело пойдут новые технологии. Можно ожидать, что уже скоро Sony и Microsoft расскажут о новых комбинированных алгоритмах и, возможно, аналоге DLSS от AMD.

И у этого направления огромные перспективы. Уже сейчас алгоритмы способны выдавать картинку, не просто сравнимую с «нативным» разрешением, но и порой превосходящую его в некоторых деталях. Возможно, со временем видеоигры будут больше опираться не на вычислительную мощность процессора и видеокарты, а на набор нейросетей для апскейлинга, расчёта карты HDR (как в Gears 5), сглаживания и даже предиктивного рендеринга кадров для увеличения фреймрейта (уже используется в Google Stadia).

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

222222
277 комментариев

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

148
Ответить

а мы вынуждены изобретать велосипеды (апскоейлы) чтоб эта демоверсия хоть как то играбельный фпс выдавала у тех кто на это купился.Звучит как реклама 4К на Про/Х версиях консолей и шахматного рендеринга 

43
Ответить

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

Ну и непонятно, о каких демо-версиях речь, у меня на rtx2080 максимально возможные показатели фпс, недостижимые на других видеокартах.

6
Ответить

DLSS в Youngblood отлично смотрится. У меня нет дисплея с разрешением 3840х2160, но в 2560х1080 разницы не видно.

4
Ответить

Ну я вот купил 2070s и почему же я лох? Она по производительности между 1080 и 1080ti и, о невероятно, по цене тоже располагается между ними! Что именно мне втерли?

4
Ответить

Везде нитакие не жертвы, выше и умнее маркетологов. Походу покупают 10 серию вместо 20, зато без лучей. Купил старую 1080 по цене новой 2060 с производительностью 2060s. Зато нелох.

3
Ответить

Спасибо за TL:DR. Стало понятнее

Ответить