Трассировка лучей или трассировка пути — какой метод динамического освещения лучше?
Трассировка лучей и трассировка пути — две из самых захватывающих и требовательных технологий динамического освещения, доступных геймерам и разработчикам игр в 2024 году. Оба они представляют собой огромный скачок в реалистичности по сравнению с более традиционными «запеченными» методами освещения и могут даже заставить старые игры выглядеть намного лучше. реалистичны , чем имеют право их блочные текстуры и геометрия.
Но если и трассировка лучей, и трассировка пути создают в играх более реалистичное освещение, что лучше? И в чем вообще разница между ними? Вот как сравниваются трассировка лучей и трассировка пути, и почему в ближайшие годы вы можете увидеть одну больше, чем другую, в своих любимых играх.
Что такое трассировка лучей?
Трассировка лучей — это реалистичный метод моделирования освещения в сцене. Первоначально задуманная в конце 1960-х годов, она лишь недавно была внедрена в игры реального времени из-за того, насколько сложны вычисления.
Трассировка лучей работает путем направления луча на сцену через точку зрения игрока. Каждый раз, когда луч взаимодействует с объектом, рассчитывается влияние этого объекта на луч, включая его цвет, прозрачность и ориентацию. Этот луч продолжает отслеживаться, пока он отражается вокруг сцены, пока не пересечется с источником света. Этот расчет производится для каждого пикселя сцены, что обеспечивает невероятно реалистичный, но в то же время невероятно требовательный метод освещения.
Трассировка лучей уже много лет используется в компьютерной графике фильмов, причем для рендеринга отдельных кадров часто требуются часы или даже дни. Однако по мере роста вычислительной мощности, а также после выпуска видеокарт Nvidia RTX и графических процессоров AMD RDNA , ускорители трассировки лучей сделали возможной трассировку лучей в реальном времени в играх. Хотя в первых выпусках оно ограничивалось тенями и отражениями, с тех пор в некоторых играх оно было расширено до глобального освещения.
Что такое отслеживание пути?
Трассировка пути — это более современный метод моделирования динамического освещения сцены в реальном времени. Разработанный в середине 1980-х годов, он использует другой подход: одновременно посылает сотни или даже тысячи лучей от источника света, а затем отслеживает их, когда они случайным образом отражаются по сцене. На первый взгляд это намного сложнее, но конечным результатом является более простой рендеринг, поскольку вместо отслеживания каждого отдельного луча от пикселя до источника он отслеживает только выборку этих лучей на основе наиболее вероятного пути, по которому пойдет свет.
Это сочетание трассировки лучей и моделирования Монте-Карло , которое позволяет игре или приложению использовать управляемое количество путей для отслеживания источника света. Это позволяет создавать световые эффекты, подобные трассировке лучей, с меньшими затратами, но, возможно, что не менее важно, это обеспечивает гораздо большую степень детализации в зависимости от возможностей системы и выбранных настроек. Больший размер выборки означает больше требований к графическому процессору для рендеринга сцены, а также большую детализацию. Меньшие выборки делают отслеживание пути более управляемым за счет визуального качества.
Однако конечные результаты трассировки пути не идеальны. Они сочетаются с алгоритмами шумоподавления для очистки полученного изображения, и результаты впечатляют.
Существуют определенные сцены и определенные объекты, такие как отражающие и преломляющие объекты (например, стакан воды), для которых алгоритм трассировки пути необходимо настроить, чтобы избежать неоправданной потери информации в меньших выборках. Вполне возможно, что с этими объектами алгоритм вместо этого просто проведет грубую трассировку лучей, чтобы гарантировать точность.
Однако конечным результатом в каждом случае является визуализированная сцена, которая выглядит так же реалистично освещенной, как и сцена с трассировкой лучей, если не больше, но с потенциалом гораздо меньших накладных расходов — особенно при более высоких настройках детализации. Трассировка пути также считается более эффективной для хорошо освещенных сцен, поскольку она имеет больше данных для обработки, в то время как трассировка лучей может быть более эффективной при рендеринге сцен с большим количеством теней, поскольку она знает реальный путь, по которому пойдут лучи света. .
Трассировка пути выглядит лучше, чем трассировка лучей?
Трассировка лучей — это точный метод моделирования освещения в реальном времени, поскольку он следует естественному пути распространения света по сцене. Однако огромное количество вычислений, которые необходимо выполнить для эффективного использования трассировки лучей, невероятно. Даже современное оборудование со всем его аппаратным ускорением может испытывать трудности в играх с интенсивной трассировкой лучей. Вот почему многие игры, поддерживающие «трассировку лучей», на самом деле используют трассировку лучей только для некоторой части сцены: обычно для теней или отражений.
С другой стороны, трассировка пути может создавать столь же качественные или даже более красивые визуальные эффекты, при этом предъявляя меньшие требования к оборудованию рендеринга. Эта модель использовалась в некоторых из самых впечатляющих игр с трассировкой лучей, таких как Quake II RTX , Portal RTX и обновление режима Overdrive для Cyberpunk 2077 . Его также с большим эффектом модифицируют в старые игры, такие как Half-Life 2 .
Трассировка пути обеспечивает более привлекательную, менее интенсивную форму динамического освещения и в целом, возможно, является лучшим решением. Тем не менее, трассировка лучей по-прежнему имеет свое место там, где ограниченные размеры выборки с трассировкой пути могут привести к проблемам с визуальной точностью. Существует также множество современных примеров традиционно растеризованных игр, в которых трассировка лучей или траекторий освещения очень мало добавляет впечатлений, но при этом полностью снижает частоту кадров — например , Hogwarts Legacy .
Вполне вероятно, что до тех пор, пока видеокарты не станут достаточно мощными, где трассировка лучей или траектория пути будут так же легко визуализироваться, как и растеризация, мы увидим комбинацию световых эффектов в будущих играх, поскольку каждый метод имеет свое место.