Как сделать трассировку лучей в играх

Добавил пользователь Евгений Кузнецов
Обновлено: 19.09.2024

В этом материале мы попробуем разобраться, почему такой шум в контексте новых видеокарт вызвала именно поддержка трассировки лучей, а не прочие нововведения — память GDDR6, VirtualLink, NVLink и 8K HEVC.

В чём идея трассировки лучей?

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

Презентация NVIDIA на gamescom, где на примере Battlefield V показывали возможности трассировки лучей в реальном времени.

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

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

Как родилась технология?

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

Лучи счастья — просто о трассировке лучей

Следующий важный этап начался в 1979-м. Дело в том, что алгоритмы бросания лучей прослеживали путь луча от наблюдателя лишь до столкновения с объектом. Учёный Тёрнер Уиттед (Turner Whitted) продолжил этот процесс. В его алгоритме луч после попадания на поверхность мог создать три новых типа лучей: отражение, преломление и тень. Соответственно, можно понять, что трассировка лучей — это более сложная серия задач, которая не только использует ray casting для определения точки пересечения луча и объекта, но и вычисляет вторичные и третичные лучи, которые могут быть применены для сбора данных. Те, в свою очередь, нужны для расчёта отражённого или преломлённого света.

В начале 80-х в Осакском университете группа профессоров и студентов создала LINKS-1 — компьютер, работающий на 514 микропроцессорах. Устройство было предназначено для создания трёхмерной графики с использованием трассировки лучей. В 1985 году в павильоне Fujitsu на международной выставке в японском городе Цукуба был представлен первый видеоролик для планетарных залов, полностью смоделированный на LINKS-1.

Лучи счастья — просто о трассировке лучей

В 1984 году была продемонстрирована BRL-CAD — созданная Баллистической исследовательской лабораторией США система моделирования. Спустя три года для неё был представлен трассировщик (raytracer), особенностью которого была хорошая оптимизация. Общая производительность при рендере доходила до нескольких кадров в секунду, пусть и достигнута она была с помощью нескольких машин с разделяемой памятью. Сама BRL-CAD сегодня относится к программам с открытым исходным кодом и иногда обновляется.

Где трассировка оказалась полезной?

Лучи счастья — просто о трассировке лучей

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

Проблемы трассировки лучей

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

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

Лучи счастья — просто о трассировке лучей

Роль Unity, Microsoft и NVIDIA в том, что мы видим сегодня

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

В 2008 году Intel показала демонстрационные материалы исследовательского проекта Quake Wars: Ray Traced, основанного на контенте Enemy Territory: Quake Wars. Производительность была на уровне 14—29 кадров в секунду при использовании нескольких четырёхъядерных процессоров и 20—35 кадров с шестиядерными процессорами. Видеокарта была также от Intel, на архитектуре Larrabee, конечные продукты которой так и не поступили в продажу.

В 2009 году NVIDIA анонсировала Optix — бесплатный пакет программного обеспечения для работы с трассировкой на видеокартах. Совместимыми программами стали Adobe After Effects, Autodesk Maya, 3ds Max и другие.

Новейшая история трассировки лучей в играх началась с Brigade, игрового движка, который смог продемонстрировать достойные результаты трассировки в реальном времени. Само собой, они были не такими красивыми, как картинка в Unreal Engine 4 со статическим освещением, но в Brigade можно было менять количество и характеристики источников света и результат был виден сразу. А в UE4 для полноценного итога требовался рендер с помощью актуальной версии V-Ray.

Само собой, такие результаты не могли остаться незамеченными, и Brigade стала частью графического движка OctaneRender, который вошёл в известный вам Unity. В свою очередь, Unreal Engine принял в себя наработки GPUOpen — пакета программного обеспечения, предлагающего расширенные визуальные эффекты.

Microsoft сделала дополнение к API DirectX 12 в виде DXR (DirectX Raytracing). Позже AMD (создатель GPUOpen) ввела поддержку рейтрейсинга в свой API Vulkan.

А уже в этом году NVIDIA анонсировала и выпустила игровые видеокарты на архитектуре Turing, подразумевающей наличие RT-ядер для работы именно над трассировкой лучей и тензорных ядер (Tensor cores). Последний тип ядер достался в наследство от предыдущей архитектуры — Volta, на базе которой существует всего две разновидности продуктов (Titan V и Quadro GV100), и стоят они очень дорого. Тензорные ядра предназначены для более быстрого решения задач глубинного обучения.

О производительности

Лучи счастья — просто о трассировке лучей

Лучи счастья — просто о трассировке лучей

Что имеем сегодня?

В играх, где нет трассировки лучей, производительность серии Turing дала стандартный прирост производительности для смены поколения в пределах 20% (хоть и не без неожиданностей).

Из игр с трассировкой лучей имеем только Battlefield V. Стоит заметить, что при включении настроек RTX производительность сильно падает. В плане картинки лучше самостоятельно сравнивать то, что получилось, с тем, что показывали на презентации.

Лучи счастья — просто о трассировке лучей

В профессиональном софте, как и ожидалось, изменения дали результат в лучшую сторону. Но при выборе помните, что прирост одинаковый не во всех программах: где-то он составляет до 20 % (может и выше), а где-то — десятую долю процента. Например, в OctaneRender сцена Spaceships обработалась на RTX 2080 быстрее на 12 % в сравнении с GTX 1080 Ti.

Больше примеров

В Atomic Heart кроме более мягкой тени можно заметить, что в варианте без RTX справа от робота в стену будто кто-то бросил пакет кефира. Cо включёнными настройками RTX свет от источников в той области более-менее ровный.

Лучи счастья — просто о трассировке лучей

Лучи счастья — просто о трассировке лучей

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

Текущие результаты слишком ранние, чтобы полноценно говорить о том, стоило ли отложить внедрение трассировки в реальном времени ещё на несколько лет, до появления готовых продуктов со стороны видеокарт, софта и игр. Многое зависит от того, заинтересованы ли в технологии AMD и Intel, — конкуренция дала бы больше уверенности в том, что про текущие наработки не забудут с выходом PlayStation 5 и видеокарт от Intel.

В любом случае Unity в своём докладе упомянула подходящий к концу 2018 год как этап, когда в играх только начала появляться трассировка лучей в реальном времени. По словам компании, широкое распространение технология получит лишь в 2020 году.

Технология интересная, красивая. BF V в некоторых сценах с DXR показывает достаточно красивую и реалистичную картинку, но все это просаживает FPS в 1080p на карточке за 1000$.
Я это к тому, что надо дождаться выхода новых дров и обновлений, может они исправят ситуацию с FPS в BF V, ну и конечно больше игр с данной технологией, что бы оценить ее полностью и ответа AMD в виде карт с поддержкой лучей для потребительского рынка.

Потанцевал технологии пока не раскрыт

Типичный маркетинг, продавать старое под видом нового.
И да, привет, игры с raytracing выходят с 2009 года (важно лишь осознавать, что эта технология с каждым годом улучшается).

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

Благодаря развитию графических процессоров, примером чему является новейшая серия NVIDIA RTX, трассировка лучей со временем будет применяться во всем большем количестве игр. До этого момента 3D-рендеринг в основном осуществляется методом растеризации, который является более простым (впрочем, сам процесс рендеринга все равно остается достаточно сложным).

Что такое растеризация?



При растеризации трехмерные объекты создаются с помощью миллионов полигонов и треугольников. Каждый полигон или треугольник содержит информацию о своем положении в пространстве, цвете, текстуре и ориентации. И каждый треугольник, из которого состоит модель, преобразуется в пиксели определенного цвета на плоском экране.
Чтобы добиться более высокого качества изображения, при преобразовании трехмерных объектов в двухмерное изображение на экране применяются дополнительные приемы. Во-первых, это шейдинг, суть которого заключается в изменении цвета треугольника в зависимости от того, как на него падает свет, и как текстура объекта с этим светом взаимодействует. Как будто на трехмерную модель наносится слой краски, соответствующий определенному световому эффекту. Также в специальном буфере хранится информация о глубине, чтобы компьютер мог определить, какие части объектов следует отобразить на экране, а какие скрыты другими поверхностями или объектами и поэтому отображаться не должны.
Все это звучит достаточно сложно, но в целом достаточно просто: растеризация – это процесс определения того, какой цвет лучше всего подходит треугольникам в зависимости от расчета световых эффектов, положения треугольников, их цвета и текстуры. Вся эта информация о треугольниках преобразуется в пиксели на экране. Монитор, в свою очередь, играет роль художника, который использует данные, полученные в результате растеризации, чтобы окрасить те или иные участки экрана в нужный цвет.

Что такое трассировка лучей?


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

Как давно используется трассировка лучей?


Трассировка лучей вот уже много лет используется во множестве областей, включая киноиндустрию, архитектуру, дизайн интерьеров. Если вы – геймер, то, вероятно, обратили на нее внимание лишь после выпуска новейших видеокарт NVIDIA серии RTX, в которых реализована поддержка этого метода. С развитием видеокарт мы будем видеть все больше игр, использующих трассировку лучей для создания реалистичного изображения.
Для тех, кто желает получить максимум уже сегодня, самое время приобщиться самим к этой тенденции, ведь будущее технологии трассировки лучей выглядит очень перспективно. Компания MSI уже выпустила несколько мощных видеокарт с процессорами серии RTX, с помощью которых вы сможете поднять свою игру и качество изображения на новый уровень. Загляните на страницу-описание серии RTX , чтобы узнать больше о ее особенностях.

Мониторы для технологии трассировки лучей
Трассировка лучей – это свет и тени. Когда активируется данная технология, в игре часто возникают сцены с очень яркими и очень темными фрагментами, как в реальной жизни. Однако для монитора может оказаться затруднительным передать столь сильный контраст. Монитор с низкой динамической контрастностью зачастую жертвует детализацией темных участков, чтобы лучше отобразить самые яркие, и в результате вся сцена может выглядеть так, словно ее покрыли слоем серой краски, сделав все цвета менее сочными. Чтобы полностью раскрыть потенциал трассировки лучей, необходим монитор с отличной контрастностью. И это определяется исключительно типом его ЖК-панели.
Для производства мониторов сейчас используются панели трех типов: VA, IPS и TN. Наилучшей контрастностью обладают VA-панели, в то время как IPS- и TN-панели попросту уничтожают все преимущества технологии трассировки лучей по отображению света и тени, выводя на экран сероватую картинку без глубокого черного цвета. Кроме того, VA-панели предлагают другие важные для игр преимущества, в том числе низкое время отклика (1 мс), широкие углы обзора и отличную цветопередачу. Они доступны в виде мониторов с эргономичным изогнутым экраном. Поэтому, чтобы испытать все преимущества технологии трассировки лучей, мы настоятельно рекомендуем вам приобрести монитор именно с VA-панелью.

Будучи по-настоящему геймерской компанией, MSI выбирает для своих игровых мониторов VA-панели. Познакомиться с ними можно здесь . Войдите в эру трассировки лучей с помощью изогнутого игрового монитора MSI – вам гарантировано улучшенное качество изображения, о котором вы не смели и мечтать!

Корпорация NVIDIA выпустила WHQL-драйвер Game Ready, который обеспечивает поддержку Microsoft DXR для графических процессоров GeForce GTX 1000 серии. Теперь обладатели GTX 1060, GTX 1660, GTX 1660Ti, GTX 1070, GTX 1070 Ti, GTX 1080, GTX 1080 Ti, Titan X, Titan XP могут включить трассировку лучей в реальном времени.

DirectX Raytracing: трассировка лучей в реальном времени Nvidia, Видеокарта, Directx Raytracing, Трассировка, Microsoft DXR, Длиннопост

Технология заработает и в ноутбуках, где используются эквивалентные графические процессоры архитектур Pascal и Turing. Производительность в играх не увеличится, более того, далеко не всем игрокам есть смысл включать новую версию DirectX. В представленных NVIDIA результатах тестирования, игры выдают от 6 до 34 FPS. Только видеокарты 2000 серии обеспечивают комфортный уровень производительности в 4К:

DirectX Raytracing: трассировка лучей в реальном времени Nvidia, Видеокарта, Directx Raytracing, Трассировка, Microsoft DXR, Длиннопост

DirectX Raytracing: трассировка лучей в реальном времени Nvidia, Видеокарта, Directx Raytracing, Трассировка, Microsoft DXR, Длиннопост

Глобальное освещение и затенение окружения

DirectX Raytracing: трассировка лучей в реальном времени Nvidia, Видеокарта, Directx Raytracing, Трассировка, Microsoft DXR, Длиннопост

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

Все AAA-игры с технологией трассировки лучей используют разные методы. Так, в Battlefield 5 используется метод отражений (Reflections), авторы Shadow of the Tomb Raider применил метод теней (Shadows), в то время как разработчики Metro Exodus сделали симбиоз между глобальным освещением и фоновым затенением.

DirectX Raytracing: трассировка лучей в реальном времени Nvidia, Видеокарта, Directx Raytracing, Трассировка, Microsoft DXR, Длиннопост

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

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

Есть уже попробовавшие? Я только через 8 часов потестить смогу(

А смысл, если даже 1080 ti еле 30 кадров нашкрябывает?


Вместе и навсегда

Вместе и навсегда Мемы, Компьютер, Nvidia, Видеокарта, Спанч Боб


Nvidia снова занялась некромантией

И вернула в продажу GeForce RTX 2060, но уже с 12GB памяти по цене 600–700 евро.

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Нет, не к этому

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Вот к этому

Через плазму течёт электрический ток, который, во-первых, нагревает её, а во-вторых, создаёт магнитное поле, которое взаимодействует с магнитным полем катушек и формирует плазменный бублик, не касающийся стенок установки.

Но экспериментальный реактор, о котором мы говорим сегодня, относится к другому типу — сферомак.

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Всё ещё достоин актуален!

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

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

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

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

В предыдущих версиях установки использовалось девять микроконтроллеров Blackfin BF537. У каждого контроллера был только один канал аналого-цифрового преобразования (АЦП) с частотой дискретизации 400 кГц. Этого было недостаточно для отслеживания временно́й фазы сигналов инжектора на высоких частотах, а пропускная способность связи между блоками микроконтроллера была очень низкой, что не позволяло использовать сложные алгоритмы управления. Да, физики тоже страдают от тормозов и лагов.

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Но всё меняется, когда приходят они — ускорители Nvidia Tesla P40. Это практически те же самые видеокарты, на которых вы гоняете в современные игрушки. ну или не гоняете (нищие вздохи сожаления). Программное обеспечение, полностью работающее на GPU, принимает данные от АЦП, обрабатывает их и формирует управляющие сигналы для контроллеров широтно-импульсной модуляции (ШИМ). А те, в свою очередь, уже управляют работой инжекторов.

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Использование быстродействующего контроллера на базе видеокарты позволяет продлить время жизни плазмы в установке, что даёт больше возможностей для её изучения, а значит — приближает всех нас к контролируемому термоядерному синтезу. Ради такого дела можно и потерпеть слайд-шоу в исполнении верной 8800 GTX. Тем более что есть масса прекрасных игр, которым 3D-ускоритель вообще не нужен.

Учёные приспособили видеокарту для управления плазмой в термоядерном реакторе Наука и техника, Термоядерный синтез, Токамак, Видеокарта, Nvidia, Физика, Видео, Длиннопост

Все чаще мы слышим о трассировке лучей в играх, и все больше новых проектов получают поддержку этой технологии. Последней крупной игрой с трассировкой стал экшен Control от Remedy Entertainment. И данная игра является отличной демонстрацией новой технологии, поэтому мы рассмотрим нюансы работы трассировки в данном обзоре. Сравним качество изображения в обычном режиме и с трассировкой, попутно оценив изменения в производительности. Также поговорим о технологии NVIDIA DLSS и ее влиянии на данную игру.

Трассировка лучей в Control

Control может работать под DirectX 11 и DirectX 12. Трассировка лучей доступна только в среде DirectX 12 и требует Windows 10 версии 1809 или новее. На данный момент оптимальным решением для игр с трассировкой является серия видеокарт GeForce RTX, хотя в теории вы можете включить новые эффекты и на GeForce GTX, но с очень низкой производительностью. GeForce RTX обладают лучшим быстродействием в обработке ray tracing благодаря аппаратному ускорению и наличию специальных блоков RT в GPU Turing.

Трассировка лучей

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

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

Трассировка лучей в Control

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

Оценим визуальные изменения на нескольких примерах. Изначально мы работали с игрой в разрешении 4K при максимальных настройках графики со сглаживанием MSAA 2x. Для удобства сравнительные скриншоты уменьшены до разрешения 2560x1440, сравнительное видео доступно в 4K.

Трассировка лучей в Control

Трассировка лучей в Control

Трассировка лучей в Control

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

Трассировка лучей в Control

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

Трассировка лучей в Control

Трассировка лучей в Control

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

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

Теперь посмотрим на тени при среднем и высоком качестве трассировки.

Есть изменение в теневой зоне под тележкой и на предметах. Темнее зона за стеклом в левой части фрагмента.

В игре действительно много стекол. Но как трассировка влияет на другие поверхности? Ответ ниже.

Трассировка лучей в Control

Трассировка лучей в Control

Трассировка лучей в Control

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

Далее еще один показательный пример. Сравним обычное качество с максимальным уровнем трассировки.

Трассировка лучей в Control

Трассировка лучей в Control

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

Ниже эти кадры представлены в виде анимированного сравнения.

Трассировка лучей в Control

Трассировка лучей в Control

Меняется структура отражений на полу — больше деталей, ярче световые пятна от ламп. Это лучше подчеркивает фактуру поверхности и усиливает глубину кадра. Трассировка меняет цвет и освещенность блестящих элементов на центральной колонне. Появляется небольшой блеск от ламп даже на красных поверхностях.

Сравним небольшой фрагмент при среднем и высоком качестве трассировки.

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

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

Трассировка лучей в Control

Трассировка лучей в Control

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

Сглаживание NVIDIA DLSS

Теперь посмотрим на особенности работы DLSS. Технология DLSS (Deep Learning Super Sampling) использует глубокое обучение для интеллектуального масштабирования и сглаживания, замещая другие варианты сглаживания и ускоряя производительность. Позволяет компенсировать падение быстродействия после включения трассировки, но при этом может страдать детализация картинки.

Изначально сглаживание DLSS ориентировано на высокое разрешение 4K. В Control после активации данной технологии вы можете регулировать входное разрешение. Лучшим вариантом является выбор максимально доступного входного разрешения 2560x1440 для итогового 4K DLSS (3840x2160). С такими настройками мы и провели сравнение. Ниже полноформатные изображения в родном разрешении 3840x2160.

Трассировка лучей в Control

Трассировка лучей в Control

Даже при детальном сравнении мы заметили явные изменения только в текстуре пола и фигурке героини — без DLSS они немного четче.

Далее сравнение идентичных фрагментов.

Трассировка лучей в Control

Все выглядит очень позитивно для DLSS. Разницу с оригинальным 4K трудно заметить даже при детальном сравнении. И очертания некоторых предметов с DLSS более плавные, чем в обычном режиме с MSAA 2x (обратите внимание на спинку кресла).

Взглянем на другое сравнение.

Никаких заметных изменений! Даже бахрома на флажке не теряет свои очертания.

Видеосравнение

Дополним приведенные скриншоты сравнением в видеоформате.

Видео доступно в 4K. Записано на NVIDIA GeForce RTX 2080 Ti.

Теперь разберемся с производительностью.

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

Конфигурация тестового стенда следующая:

  • процессор: Intel Core i7-6950X (3,0@4,2 ГГц);
  • кулер: Noctua NH-D15 (два вентилятора NF-A15 PWM, 140 мм, 1300 об/мин);
  • видеокарта: NVIDIA GeForce RTX 2080 Ti Founders Edition;
  • материнская плата: MSI X99S MPower;
  • память: G.Skill F4-3200C14Q-32GTZ (4x8 ГБ, DDR4-3200, CL14-14-14-35);
  • системный диск: Kingston SSDNow KC400 (512 ГБ, SATA 6Gb/s);
  • дополнительный диск: WD Red 3TB WD30EFRX (3 ТБ, SATA 6Gb/s, 5400 об/мин);
  • блок питания: Raidmax Cobra RX-800AE;
  • операционная система: Windows 10 Pro x64;
  • драйвер GeForce: NVIDIA GeForce 436.30.

Результаты тестирования

Трассировка лучей в Control

Видеоадаптер GeForce RTX 2080 Ti хорошо справляется с разрешением 2560x1440, обеспечивая более 60 fps со средним качеством трассировки, но дальнейшее повышение настроек снижает производительность до 50 fps и ниже. Падение производительности относительно начального уровня 35% при среднем качество RTX и до 80% при высоком качестве. Активация DLSS обеспечивает ускорение в 45–62%.

Трассировка лучей в Control

В разрешении 4K ситуация более печальная. Уже при среднем качестве трассировки средняя производительность едва превышает 30 fps, а при высоком качестве это менее 24 fps. Зато DLSS обеспечивает ускорение около 80% в самом тяжелом режиме. И с DLSS в 4K мы получаем вполне приемлемые результаты.

Ниже демонстрация игры в 4K DLSS с эффектами трассировки среднего уровня.

Выводы

На данный момент Control является одной из лучших демонстраций трассировки лучей в играх. Эта технология добавляет детализированные отражения там, где их не было, и улучшает там, где они были. Трассировка меняет фактуру некоторых объектов, добавляя им отражающие свойства. Поэтому металлические элементы выглядят более реалистично. Меняется общее затенение. В зависимости от освещенности и влияния отраженного света мы видим дополнительные блики и тени на объектах, что лучше подчеркивает их объем и структуру. Есть цветовое влияние одних поверхностей на другие. Все это усиливает ощущение направленного объемного света и повышает реализм картинки. И это отлично вписывается в общую стилистику игры с обилием блестящих интерьеров и сложным освещением. Новые отражения и теневые нюансы делают картинку более насыщенной и красивой. После того, как поиграешь с трассировкой, возвращаться к простому режиму совершенно не хочется.

Основной проблемой трассировки остается сильное падение производительности. Флагманский видеоадаптер GeForce RTX 2080 Ti позволяет играть с трассировкой в разрешении 2560x1440, но при дальнейшем повышении разрешения частота кадров падает до неприемлемого уровня. На помощь приходит технология NVIDIA DLSS. Если в некоторых играх это замыливает картинку, то в Contrrol изображение в 4K DLSS минимально отличается от оригинального 4K. Поэтому смело включайте данный режим для максимального разрешения. И пока кто-то спорит о целесообразности трассировки в играх, счастливые обладатели GeForce RTX 2080 Ti уже могут играть в Control при разрешении 4K с графикой максимального уровня, недоступной на видеокартах старого поколения.

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

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

Трассировка лучей (англ. Ray Tracing) - это технология отрисовки трехмерной графики, симулирующая физическое поведение света. Используя ее, видеокарта в точности моделирует прохождения лучей от источников освещения и их взаимодействие с объектами. При этом, учитываются свойства поверхностей объектов, на основании чего вычисляются точки начала рассеивания, особенности отражения света, возникновения теней и многое другое.

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


RT OFF

Эта информация доступна также в формате видео:

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

Кое-кто пророчествовал начало игрового использования трассировки не ранее 2025 года. Однако, уже в 2018 году в графические чипы карт Nvidia Turing были внедрены специальные аппаратные блоки, включающие так называемые тензорные и RT-ядра. Они оптимизированы под расчеты трассировки и значительно ускоряют их. Новшество получило название Nvidia RTX. Видеокарты с наличием таких аппаратных средств не сложно отличить по аббревиатуре "RTX" в их названии. Это, например:

Nvidia RTX положила начало использованию трассировки лучей в компьютерных играх. Компания Microsoft дополнила DirectX 12 расширением DXR (DirectX Raytracing), а разработчики игровых приложений тут же взяли его на вооружение.

Рендеринг отдельных элементов графики с использованием трассировки появился в играх Metro Exodus, Shadow of the Tomb Raider, Battlefield V, Control. Таких игр пока не много. Но это не на долго. В дальнейшем трассировка лучей в той или иной степени будет использоваться в большинстве компьютерных игр.

В апреле 2019 года Nvidia выпустила специальный драйвер, добавляющий поддержку DirectX Raytracing также и в некоторые видеокарты архитектур Pascal и Turing, не обладающие специальными аппаратными средствами. Для расчетов в них используются универсальные шейдерные блоки, поэтому в список поддерживаемых попали только достаточно быстрые для этого модели. В частности:

О намерении внедрить поддержку real-time трассировки лучей в свои продукты заявили и представители AMD. В картах Radeon появление соответствующих аппаратных средств (аналога Nvidia RTX) ожидается ближе к 2021 году. На программном же уровне поддержка графическими ускорителями AMD трассировки возможна уже сейчас (через Pro Renderer и Radeon Rays). Однако, в игровых приложениях ее пока нет.

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

Например, в игре Metro Exodus при разрешении экрана Full HD с максимальными настройками графики, но без трассировки лучей, GeForce GTX 1080 Ti обеспечивает быстродействие на уровне 77 кадров в секунду. RTX 2060 при аналогичных условиях выдает только 56 кадров в секунду. Преимущество первой видеокарты ~ 44%.

Если же в настройках игры включить трассировку лучей, расстановка сил кардинально меняется. GTX 1080 Ti, не имеющая аппаратной поддержки, выдает всего 25-26 кадров в секунду, а RTX 2060, у которой такая поддержка есть, – 40. Здесь уже не абы какое преимущество второй видеокарты (~37%). И это при том, что RTX 2060 является самой "медленной" картой с наличием аппартных средств трассировки.

Сложить более полное представление о влиянии трассировки на игровое быстродействие помогут размещенные ниже графики.

Выводы же напрашиваются следующие:

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

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

Ну, по крайней мере, пока.



НАПИСАТЬ АВТОРУ

Читайте также: