RT сегодня

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

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

Больше двух лет назад Nvidia сделала громкое заявление о том, что Turing – архитектура нового поколения – явит миру святой Грааль компьютерной графики: трассировку лучей. Этот метод существует на протяжении десятилетий и широко применяется в киноиндустрии – ну, или применялся тогда, когда фильмы ещё снимались, а мы ходили смотреть их. Сама мысль о том, что графика в играх может быть настолько реалистична, что способна составить конкуренцию недавно вышедшим блокбастерам, звучит слишком хорошо, чтобы поверить в это. И это правда.

На сегодняшний день Nvidia выпустила второе поколение железа на архитектуре Ampere с поддержкой RT, а AMD ввязалась в драку со своими видеокартами на базе архитектуры RDNA2. Пришло время рассказать о том, как обстоят дела с трассировкой лучей сегодня.

Пару слов о технологии RT

Мы не собираемся подробно рассказывать о том, как работает RT – сейчас многие уже в курсе. Если кратко, то этот метод подразумевает расчёт проекции лучей на объект сцены. Нужно это для того, чтобы понять, какие многоугольники пересекает луч, и при необходимости, в зависимости от свойства материала многоугольника, испустить дополнительные лучи. В конечном счёте отдельные лучи совмещаются, определяя тем самым конечное значение цвета пикселя.

Может показаться, что только и нужно испустить луч на объект, однако в действительности работа на этом не окончена. Ещё требуется учесть различные типы материалов и рассчитать число лучей. Главный вывод заключается в том, что в сценах фильма, где в полной мере применяется эта технология, могут использоваться сотни или даже тысячи лучей на пиксель, а сам процесс может отнять несколько часов от общего времени на обработку изображения за кадр. Это намного медленнее тех временных показателей, которых мы хотим от игр на ПК. Даже относительно «быстрое» время на обработку изображения – 10 минут на кадр в кино – всё равно в 2 млн раз медленнее, чем игра на ПК с частотой в 60 кадров в секунду.

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

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

Благодаря RT- освещению, теням и отражениям разборок на дороге среди обитателей Найт Сити стало больше.
Благодаря RT- освещению, теням и отражениям разборок на дороге среди обитателей Найт Сити стало больше.

RT-эффекты

Отражение

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

Наглядно продемонстрировать то, как наличие или отсутствие эффекта отражения влияет на объекты, не представляет никакой сложности – взять хотя бы игру Control 2019 года с её многочисленными зеркалами и отображающимися в них предметами. Можно пойти дальше и сделать так, чтобы объекты отображались на нескольких плоскостях, т. е. так, чтобы луч падал на одну поверхность и отражался на другой, продолжая распространяться и создавая эффект комнаты смеха. Понятно, что производительность от такого большого количества лучей и отражений будет страдать, однако демка игры Bright Memory Infinite являет собой прекрасный пример того, как сложные режимы RT могут в целом улучшить визуальную точность.

На сегодняшний день список игр, где используется трассировка лучей для создания эффекта отражения, продолжает расти: выпущено уже 10 игр и ожидается ещё больше. Control, Cyberpunk 2077 и Watch Dogs Legion – наиболее яркие примеры. Однако, несмотря на улучшенное качество картинки, есть такие сцены, где большой погоды они не делают, а производительность в то же время остаётся низкой.

Реализованные не в полной мере эффекты отражений также могут разрушить иллюзию, которую пытается создать игра. Конкретный пример тому – Cyberpunk 2077, где главный герой V не отражается в зеркалах. Если предположить, что V обозначает «вампир», то всё логично: вампиры в зеркалах не отражаются. Так или иначе это кажется довольно странным, что, подходя к окну машины, ты не видишь там своего персонажа. Увидеть своё отражение всё же можно, «включив» стёкла в ванной комнате или активировав фоторежим. Но после прохождения Control и Watch Dogs Legion отсутствие отражений в Cyberpunk 2077 кажется большим недостатком, и возможно даже его исправят к тому времени, когда вы читаете эту статью.

В Bright Memory: Infinite использованы многократные отражения. При однократном отражении лица женщины в окне машины не было бы видно.
В Bright Memory: Infinite использованы многократные отражения. При однократном отражении лица женщины в окне машины не было бы видно.

Тени

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

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

Shadow of the Tomb Raider и две последние Call of Duty – хорошие примеры того, как тени с трассировкой лучей делают графику игры лучше, однако в большинстве случаев для предметов вроде процедурно сгенерированной листвы тени не создаются.

	Call of Duty применяет RT для создания эффектов теней и фонового затенения. Благодаря им игра стала выглядеть лучше, но и с растеризацией она тоже неплохо смотрится.
Call of Duty применяет RT для создания эффектов теней и фонового затенения. Благодаря им игра стала выглядеть лучше, но и с растеризацией она тоже неплохо смотрится.

Глобальное освещение (GI)

Тут может возникнуть вопрос: разве освещение – это примерно не то же самое, что и тени? Однако отличие GI от других RT- эффектов в том, что здесь акцент делается на то, чтобы определить, в какой степени непрямое освещение достигает поверхности, а также узнать цвет освещения.

В Metro Exodus трассировка лучей применяется исключительно для создания эффекта GI, отчего внутренние пространства зданий стали выглядеть намного лучше. Один пример из игры наглядно показывает, как с помощью правильно смоделированного глобального освещения тени в одних участках комнаты становятся темнее и светлее в других.

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

Проблема заключается в том, что реалистичная графика – это не всегда хорошо. Например, в Cyberpunk 2077 есть сцена с вертолётом, события которой происходят ночью. С включённой RT всё, что вы можете различить в темноте – это силуэт человека, который наводит скорострельную мини-пушку. Если выключить RT, то перед вами предстанет группа людей и вертолёт, со множеством различной техники внутри. Нельзя сказать, что применение трассировки лучей в данном случае является неверным ходом, однако в реальности, вероятно, могли существовать другие источники света, которые просто не были включены в игру.

Фоновое затемнение (Ambient Occlusion), рефракция и каустика

Последние три эффекта не слишком выделяются на фоне предыдущих, и потому мы объединили их в один параграф.

Рефракция имеет дело с тем, как преломляется световая волна, когда она проходит через прозрачный предмет, например, стакан или воду. Но, по правде говоря, приблизительной оценки искажения, генерируемой посредством шейдеров, оказывается вполне достаточно для большинства игр. Каустика связана с рефракцией и имеет дело с ярко освещёнными областями, например, с увеличительным стеклом или бокалом вина. Круто? Возможно, но для большинства игр решающего значения она не имеет. И наконец фоновое затемнение (АО). Этот метод фокусируется на том, чтобы тени были темнее в углах, где пересекаются полигоны.

Как и в случае RT-эффектами, упомянутыми в предыдущем параграфе, одни предметы стали однозначно выглядеть лучше, другие почти не изменились, производительность же при этом осталась прежней.

Можно ли заметить разницу между различными формами фонового затемнения – SSAO (преграждение окружающего света в экранном пространстве), HBAO+ (AO с имитацией рассеянного освещения) или RTAO (затемнение с трассировкой лучей)? Да. Выглядит ли RTAO лучше всего? Да. Можно ли заметить разницу в вариациях AO, если специально не искать её? Наверно, можно в какой-нибудь интеллектуальной игре, однако в динамичном шутере, вероятно, нет.

В Control присутствует много отражающихся поверхностей, в том числе луж и зеркал в купе, с RT-тенями и рассеянным освещением.
В Control присутствует много отражающихся поверхностей, в том числе луж и зеркал в купе, с RT-тенями и рассеянным освещением.

Взгляд в будущее

Судя по представленным играм, трассировка лучей до сих пор находится в стадии становления. Разработчикам игр не удаётся сконцентрироваться на внедрении технологии, потому что подавляющее большинство видеокарт не поддерживают RT. И это на самом деле так. Судя по опросу об оборудовании пользователей Steam, только в 12% ПК установлена видеокарта Nvidia RTX (а в 7% ПК до сих пор стоит интегрированная графика от Intel).

Чего-то нового или необычного в этом нет. Подобный сценарий повторялся раньше неоднократно. В 90-е случился переход от 2D к 3D-ускорителям, «первые GPU» в конце 90-х поддерживали эффекты освещения, и это способствовало трансформации железа. Добавьте к этому несколько поколений шейдеров, программируемых на уровне аппаратного обеспечения. И каждый раз уходили годы на то, чтобы юзеры отказывались от старого железа в пользу новых игр.

К счастью, текущее положение дел начинает меняться. С недавних пор Nvidia перестала быть единственным поставщиком технологии RT. Теперь, когда и видеокарты от AMD поддерживают трассировку лучей на ПК и последнем поколении консолей, можно ожидать, что метод будет применяться чаще.

Но когда поддержка RT станет обязательным условием для всех производителей? Судя по динамике, ждать выхода наиболее крупной игры, где поддержка RT была бы обязательным требованием, ещё придётся по крайней мере лет 5 и 10 лет для всех остальных игр. Отдельные тайтлы могут требовать от железа поддержки технологии RT. Однако главные студии свяжут свою судьбу с трассировкой лучей ещё не скоро.
Отчасти по экономическим соображениям. Бюджет большинства ожидаемых игр сопоставим с бюджетом голливудских фильмов. Они обошлись игровым студиям в десятки миллионов долларов (и даже больше). Да и то такие суммы применимы к играм со скромным набором визуальных инструментов.

Разработчикам потребуется много художественного мастерства, чтобы заставить RT засиять и тем самым хоть сколько-нибудь приблизить игры поддержкой трассировки лучей к фильмам, использующим аналогичную технологию. Чтобы компенсировать расходы на создание игры, издателям нужно суметь продать максимально возможное число копий, а это полностью противоречит идее создания игры, требующей железа с поддержкой с RT.
Другими словами, у нас имеется классический вопрос о курице и яйце. Разработчики хотят, чтобы как можно больше геймеров имело железо с поддержкой трассировки лучей, прежде чем вложить средства на создание игр с поддержкой RT. С другой стороны, геймеры хотят видеть реальные преимущества технологии, прежде чем им захочется раскошелиться на новую видеокарту. Это подводит нас к спору между AMD и Nvidia (и, может быть, Intel).

Железная конкуренция

Давайте перейдём от размышлений о пользе RT для игр к её аппаратным реализациям. У Nvidia имеется серия графических процессоров первого поколения RTX-20, которая определила исходные данные производительности RT. С релизом архитектуры Ampere производитель заявил о выходе второго поколения видеокарт Nvidia, обещая удвоить скорость вычислений RT. А тем временем AMD недавно представила своё железо для трассировки лучей, видеокарты RX 6000-серии RDNA2. Как сравнить различные графические процессоры в плане возможностей RT? Ну, это много от чего зависит.

Nvidia не рассказывает подробно, чем RT-ядра Ampere и Turing отличаются друг от друга. Известно лишь, что у Ampere имеется функциональный блок, отвечающий за тестирование пересечения лучей и треугольников и что ядра RT способны учитывать компонент времени (может пригодиться для создания эффекта размытия движения). Несмотря на то, что производительность на ядро в Ampere в теории вдвое выше, чем в Turing, на практике, как сообщает Nvidia, ядра работают быстрее только на 70%. Однако это лишь поверхностное объяснение того, что делают ядра RT и как они работают.

Например, нам известно, что помимо лучевых/треугольных пересечений RT-ядра от Nvidia способны обрабатывать лучевые/рамочные пересечения. Всё это – часть реализации BVH (иерархии ограничивающих объёмов), которая применяется для создания RT-эффектов в DirectX Raytracing и VulkanRT. Если коротко, то BVH помогает быстрее вычислить треугольник, который должен пересечь луч. Луч не сверяется с каждым треугольником, как было раньше, а сравнивается с ограничивающим блоком. Алгоритмы постепенно уменьшают размер последнего до тех пор, пока число сравниваемых треугольников не достигнет разумной величины.

Однако насколько быстрее графические процессоры Nvidia обрабатывают лучевые/рамочные пересечения в сравнении с лучевыми/ треугольными пересечениями, нам неизвестно. В одних случаях скорость RT-вычислений за цикл может быть в два раза выше обычной, в других же случаях одна из его функциональных единиц оказывается вовсе не задействованной.

Что касается AMD, у её графического процессора RDNA2 имеется специальный ускоритель — Ray Accelerator, который может выполнять вычисления либо 4-х лучевых/рамочных пересечений за цикл, либо одного лучевого/треугольного пересечения. Также неясно, требуется ли время на обработку типов RT-вычислений — будь то отражения, тени или глобальное освещение — или же этим эффектам просто нужно больше лучей в целом.

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

RT-железо второго поколения работает быстрее на 70% по сравнению с 2000-й серией.
RT-железо второго поколения работает быстрее на 70% по сравнению с 2000-й серией.
Radeon RX 6000 серия от AMD – первая видеокарта AMD, которая поддерживает трассировку лучей, хотя, очевидно, лучшие её показатели ещё впереди.
Radeon RX 6000 серия от AMD – первая видеокарта AMD, которая поддерживает трассировку лучей, хотя, очевидно, лучшие её показатели ещё впереди.

Производительность железа с поддержкой RT

Мы выбрали 10 графических тестов и игр, где применяется программный интерфейс DirectX Raytracing (DXR), и запустили их на видеокартах AMD и Nvidia. Последнее замечание важно, поскольку по крайней мере две игры, в которых используется DXR, запускаются только на графических процессорах AMD (Godfall и The Riftbreaker). И ещё несколько тестов и игр (Bright Memory: Infinite, Cyberpunk 2077 и Wolfenstein Youngblood) запускаются только на видеокартах Nvidia. И это неудивительно, ведь каждая из игр поддерживается соответствующим производителем GPU, и потому грядущие игровые войны обещают быть кровавыми. Похоже, что сейчас Nvidia значительно опережает AMD в плане производительности RT. В общем и целом RTX 3070 превосходит 6800 XT, а 3080 на 25 % быстрее, чем RX 6900 XT от AMD. Что касается 3090, то в своём классе (и по цене) соперников ей нет.

Но потом мы взглянули на Dirt 5 и удивились, насколько важна заданная производителем оптимизация. Благодаря ей 6800 XT обошла 3080 на 8%. Да, AMD продвигала эту игру, а DXR до сих пор находится в стадии бета-тестирования. Может быть, Nvidia сократит разрыв, тем более что эффекты RT в Dirt 5 не особо и впечатляют. Что касается других игр, их выход состоялся ещё до того, как AMD выпустила свою серию RX 6000. Это означает, что по умолчанию все они были оптимизированы Nvidia.

Нужно помнить, что видеокарты на архитектуре RDNA2 от AMD установлены в PlayStation 5 и в Xbox Series S/X. Это означает, что каждая игра на консоли, в которой будет заявлена поддержка RT, по умолчанию будет подогнана под стандарты AMD. Только время покажет, какие коррективы внесёт этот фактор.

	Все тесты проводились на максимальных графических настройках, с разрешением 1440p и включённой RT. Внутренности тестового ПК: Core i9-9900K, MSI MPG Z390 Ace, 2x16GB DDR4-3600 и 2TB M.2 SSD.
Все тесты проводились на максимальных графических настройках, с разрешением 1440p и включённой RT. Внутренности тестового ПК: Core i9-9900K, MSI MPG Z390 Ace, 2x16GB DDR4-3600 и 2TB M.2 SSD.

Увеличение разрешения: получаем большее из меньшего

Ещё один важный аспект темы трассировки лучей – DLSS (сглаживание с алгоритмами глубокого обучения). RT требует интенсивных вычислений, и потому любой способ уменьшить число бросаемых лучей может очень пригодиться. И хотя метод устранения шумов заметно улучшает производительность RT, с помощью DLSS можно сократить число пикселей, отрисованных с самого начала.

Разобраться в DLSS не представляет никакой сложности. С помощью машинного обучения тренируем нейросеть, а затем используем её для увеличения разрешения и сглаживания краёв в играх. Несмотря на то, что обучение может отнимать много времени, конечная стадия – применение обученной сети и прогон по кадрам в игре – не столь сложный процесс. Мы протестировали пять игр с поддержкой DLSS 2.0. Благодаря режиму качества (Quality Mode) производительность RTX 3060 Ti при разрешении 1440p выросла на 65%.

Тайтлы, которые поддерживают запатентованную технологию и запускаются на видеокарте Nvidia, выглядят гораздо лучше по сравнению с играми, которые запускаются на видеокарте AMD. Та же RTX 3060 Ti превосходит RX 6800 XT в среднем на 50% в тех играх, где внедрена DLSS 2.0.

Как это выглядит? Если взять снимки изображений без использования DLSS (нативные снимки) и сравнить их со снимками изображений, где использована DLSS, то можно заметить, что в одних случаях DLSS выглядит лучше нативных снимков с применением TAА (временного сглаживания); а в других случаях – чуть хуже. В движении же разницу уловить трудно – за исключением того факта, что частота кадров с использованием DLSS более приличная.

Кроме того, у DLSS имеются ощутимые преимущества. Такие игры, как Cyberpunk 2077, могут использовать эту технологию даже без связки с трассировкой лучей, и оттого разрешение 4K можно получить на картах вроде RTX 3060 Ti. 3060 Ti также может работать с RT на максималках и DLSS при 1080p и 60 FPS как вариант.

	С включённым DLSS и отключённой трассировкой даже 3060 Ti может выдавать 4K и 60 FPS в Cyberpunk 2077, хотя качество картинки пострадает.
С включённым DLSS и отключённой трассировкой даже 3060 Ti может выдавать 4K и 60 FPS в Cyberpunk 2077, хотя качество картинки пострадает.

Вершины RT, которые нам предстоит достигнуть

Прошло два года, и нам интересно взглянуть, что поменялось, а что нет. Nvidia опережает конкурентов во внедрении RT, а сама по себе технология по-прежнему сильно подрывает производительность устройств. Однако при определённых условиях RT способна сыграть важную роль. В настоящее время нет способа получить картинку высокого качества без использования трассировки лучей или трассировки пути. И хотя графика продолжает улучшаться, играть во что-то, что напоминало бы голливудский блокбастер, нам доведётся ещё не скоро.

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

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

Control подготовила почву для появления качественно новой графики. Cyberpunk 2077 повторил достижение предшественника, а остальные игры пока пытаются дотянуть до её уровня.

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

	Crysis открыла новые горизонты посредством революционно новой шейдерной технологии. Трассировка лучей сделала практически то же самое.
Crysis открыла новые горизонты посредством революционно новой шейдерной технологии. Трассировка лучей сделала практически то же самое.

Очевидно, RT-железо ещё не скоро закрепится на рынке. Отчасти это благодаря высокому спросу на ноутбуки. В ПК 12% пользователей Steam имеется GPU с поддержкой RT, но если рассматривать только лаптопы, то их число будет значительно меньше. Консольное железо с поддержкой RT, возможно, будет востребовано ещё прежде, чем технология станет массовой.

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

Источник: https://habr.com/ru/post/572874/


Интересные статьи

Интересные статьи

История сегодня пойдёт про автосервис в Москве и его продвижении в течении 8 месяцев. Первое знакомство было ещё пару лет назад при странных обстоятельствах. Пришёл автосервис за заявками,...
На протяжении своей истории, от первых рассказов Азимова про роботов до AlphaGo, у ИИ были взлёты и падения. Но на самом деле его история только начинается. Искусственный интеллект пока ещё ...
Если в вашей компании хотя бы два сотрудника, отвечающих за работу со сделками в Битрикс24, рано или поздно возникает вопрос распределения лидов между ними.
Как широко известно, с 1 января 2017 года наступает три важных события в жизни интернет-магазинов.
Стоящие на улицах города железные коробки с деньгами не могут не привлекать внимание любителей быстрой наживы. И если раньше для опустошения банкоматов применяли чисто физические методы, то тепер...