Игры больше не будут прежними: Microsoft раскрыла секрет моментального рендеринга — трассировка лучей без задержек!

DirectX 12 logo.

Еще пару лет назад было сложно даже вообразить трассировку лучей в реальном времени — а ведь все началось только в 2018 году, когда NVIDIA выпустила видеокарты GeForce 20-й серии. Графика уровня голливудских блокбастеров внезапно стала доступной играм. По крайней мере, именно так это описывали компании.

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

Группировка геометрии: революция в ускорении рендеринга

Прощай, расчёты по треугольникам!

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

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

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

Здесь подливают масла mesh shaders и стриминг объектов: в игре постоянно появляется и подгружается новая геометрия, которую нужно незамедлительно добавить в структуру, а устаревшее — оперативно удалять.

Из-за этого огромная часть мощности видеокарты тратится не на рендеринг, а на бесконечное перестроение структуры ускорения. Чтобы это исправить, Microsoft предложила совершенно свежий подход под названием «Clustered Geometry» (кластеризованная геометрия).

Cluster geometry diagram.

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

В мире компьютерной графики такие методы не в новинку (например, Nanite Virtualized Geometry), но теперь принцип группировки станет общепринятым стандартом и будет использоваться повсеместно.

PTLAS: новый уровень иерархии ускорения для огромных миров

Partitioned TLAS struvture diagram.

Трассировка лучей требует многоуровневых структур для быстрой работы. Но в динамичных и больших сценах именно верхний уровень (TLAS) становится бутылочным горлышком.

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

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

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

Всё в одни руки: ускоряющие структуры теперь полностью на видеокарте

Процессор уходит в тень — теперь всем заправляет видеокарта!

The CPU processor chip overheats and burns in the socket on the computer motherboard

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

Ещё в прошлом DirectX Raytracing позволял строить ускоряющие структуры прямо на видеокарте, но теперь Microsoft пошла дальше: почти все вычисления передаются на GPU. В результате процессор освобождается от лишней нагрузки, а общая производительность (особенно на бюджетных конфигурациях) приятно растёт.

Кластеризованная геометрия + PTLAS = трассировка лучей в каждый дом

Не резкий провал, а плавный взлёт производительности

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

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

Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!

Премиум подписка — это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!

Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь

Также подписывайтесь на нас в:

Алекс Бежбакин
Оцените автора
Добавить комментарий