Найти тему
Просто о Харде

Как работает Ray-tracing

Оглавление

Что такое Ray-tracing

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

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

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

Демонстрация поведения света, полученного с помощью Ray-tracing в реальном времени.
Демонстрация поведения света, полученного с помощью Ray-tracing в реальном времени.

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

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

Но каждая новая часть рендерилась уже на новых мощностях. Например в первом фильме размер текстур компьютерной графики был равен 20 терабайт, то уже во втором фильме её стало в 7 раз больше(145 терабайт). Это позволило разместить на экране уже 51 минут с трансформерами(общее время фильма с титрами 141 минута).

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

Nvidia RTX

Технология, ранее использовавшаяся только кинокомпаниями к 2018 году добралась и до игровой индустрии. Компания Nvidia в видеокартах RTX 2xxx добавила специальные вычислительные блоки, которые значительно ускоряют просчет лучей в реальном времени. Это позволяет разработчикам игр реализовывать в играх реалистичные тени, отражения и другие эффекты.

Watch Dogs Legion. Справа картинка  с Ray-tracing, слева - без. Обратите внимание на отражения зданий в луже.
Watch Dogs Legion. Справа картинка с Ray-tracing, слева - без. Обратите внимание на отражения зданий в луже.

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

Cyberpunk 2077 Справа картинка  с Ray-tracing, слева - без. В озере может отражается практически всё, что угодно.
Cyberpunk 2077 Справа картинка с Ray-tracing, слева - без. В озере может отражается практически всё, что угодно.

AMD Ray-tracing

Компания AMD в конце 2020 года представила серию RX6xxx, которая так же аппаратно поддерживает обработку "лучей". Правда они не использовали специальные блоки как в случае Nvidia. Все вычисления производят потоковые процессоры.

Пример использования Ray-tracing компанией AMD на DirectX 12.
Пример использования Ray-tracing компанией AMD на DirectX 12.

Видеокарты, которые могут предоставить вам такую картинку вы можете купить на яндекс-маркете. Самые дешевые предложения ниже.

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

-9