Jump to content

Рэй марширует

Марширование лучей — это класс методов рендеринга для 3D-компьютерной графики , в которых лучи пересекаются итеративно, эффективно разделяя каждый луч на более мелкие сегменты лучей, выполняя выборку некоторой функции на каждом этапе. Например, при объемном преобразовании лучей функция будет получать доступ к точкам данных 3D-сканирования. При трассировке сферы функция оценивает расстояние до следующего шага. Марширование лучей также используется в физическом моделировании как альтернатива трассировке лучей , где решаются аналитические решения траекторий световых или звуковых волн. Марширование лучей для компьютерной графики часто использует преимущества SDF для определения максимального безопасного размера шага, хотя это менее распространено в физическом моделировании; аналогичный метод адаптивного шага может быть достигнут с использованием адаптивных методов Рунге-Кутты .

Марш с лучом на расстоянии [ править ]

Трассировка сфер [ править ]

Визуализация трассировки сферы (марширование лучей с использованием функции расстояния со знаком )

При трассировке сферы [1] или луч с помощью сферы, проходящий через точку пересечения, аппроксимируется между лучом и поверхностью, определяемой функцией расстояния со знаком (SDF). SDF оценивается для каждой итерации, чтобы иметь возможность делать как можно большие шаги, не пропуская ни одной части поверхности. Порог используется для отмены дальнейшей итерации при достижении точки, достаточно близкой к поверхности. Когда мощное графическое оборудование стало более доступным, этот метод стал популяризироваться демосценой и Иниго Килезом. [ нужна ссылка ] соавтор Shadertoy .

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

Функции расстояния со знаком существуют для многих примитивных трехмерных фигур. [2] Их можно комбинировать с помощью математических операций, таких как модуль и логические значения, для формирования более сложных поверхностей. Например, взятие модуля входных координат SDF распределяет его объем по всему пространству, а взятие максимума из двух SDF дает поверхность пересечения их объемов. Поскольку SDF можно определить для многих фракталов, для трехмерного фрактального рендеринга часто используется трассировка сфер. [3]

С помощью куба [ править ]

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

Объемный луч марширующий [ править ]

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

Отложенное затенение [ править ]

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

Внешние ссылки [ править ]

Статья 1989 года «Гипертекстура». [4] Кена Перлина содержит ранний пример метода марширования лучей.

Ссылки [ править ]

  1. ^ Харт, Джон К. (июнь 1995 г.), «Трассировка сфер: геометрический метод трассировки лучей со сглаживанием неявных поверхностей» (PDF) , The Visual Computer
  2. ^ Килес, Иниго. «3D-функции расстояния» . Иниго Килес . Проверено 8 июля 2022 г.
  3. ^ Харт, Джон К.; Сандин, Дэниел Дж.; Кауфман, Луи Х. (июль 1989 г.), «Детерминированные трехмерные фракталы трассировки лучей» (PDF) , компьютерная графика
  4. ^ Перлин, Кен (июль 1989 г.), «Гипертекстура» (PDF) , компьютерная графика
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 29aad75e1bac8d2da73ffab50a4164a8__1717414920
URL1:https://arc.ask3.ru/arc/aa/29/a8/29aad75e1bac8d2da73ffab50a4164a8.html
Заголовок, (Title) документа по адресу, URL1:
Ray marching - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)