Jump to content

Подповерхностное рассеяние

Реальное подповерхностное рассеяние света на фотографии человеческой руки
Компьютерное подповерхностное рассеяние в Blender

Подповерхностное рассеяние ( SSS ), также известное как подповерхностный перенос света ( SSLT ), [1] представляет собой механизм переноса света , при котором свет, проникающий через поверхность полупрозрачного объекта, рассеивается при взаимодействии с материалом и потенциально покидает поверхность в другой точке. Свет обычно проникает через поверхность и несколько раз рассеивается под нерегулярными углами внутри материала, а затем выходит обратно из материала под другим углом, чем если бы он отражался непосредственно от поверхности.

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

Методы рендеринга

[ редактировать ]
Прямое поверхностное рассеяние (слева) плюс подповерхностное рассеяние (в центре) создают окончательное изображение справа.

Чтобы повысить эффективность рендеринга, многие алгоритмы компьютерной графики в реальном времени вычисляют коэффициент отражения только на *поверхности* объекта. На самом деле многие материалы слегка полупрозрачны: свет проникает на поверхность; поглощается, рассеивается и переизлучается – возможно, в другой точке. Кожа – хороший тому пример; только около 6% отражения является прямым, 94% - результатом подповерхностного рассеяния. [2] Неотъемлемым свойством полупрозрачных материалов является поглощение. Чем дальше сквозь материал проходит свет, тем большая его часть поглощается. Чтобы смоделировать этот эффект, необходимо получить меру расстояния, которое свет прошел через материал.

Случайное блуждание SSS

[ редактировать ]
SSS случайного блуждания в трассировщике пути Equinox3D.
Случайное блуждание SSS + отражение поверхности PBR в трассировщике пути Equinox3D.

Эта техника, опубликованная Pixar, считается новейшей. Обычно интегрирован в трассировщик пути. По сути, он имитирует то, что происходит с реальными фотонами, отслеживая путь света в материале, генерируя новые пути, используя распределение Ламберта вокруг инвертированной нормали, а затем выбирая новые направления на нескольких шагах, чтобы еще больше рассеять путь света, отсюда и название «случайное блуждание». . Изотропное рассеяние моделируется путем равномерного выбора случайных направлений вдоль сферы. Анизотропное рассеяние обычно моделируется с использованием фазовой функции Хеньи-Гринштейна. Например, кожа человека обладает анизотропным рассеянием. Оптическая глубина/поглощение применяется в зависимости от длины пути с использованием закона Бера-Ламберта. Пути могут быть завершены внутри материала, когда они достигают минимального порога вклада или максимального количества итераций. Когда путь (луч) снова попадает на поверхность, он используется для сбора излучения сцены, взвешенного по ламбертову распределению, как в традиционном трассировщике пути. Этот метод интуитивно понятен и устойчив к тонкой геометрии и т. д.

SSS на основе карты глубины

[ редактировать ]
Оценка глубины с использованием карт глубины

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

Меру расстояния, полученную этим методом, можно использовать несколькими способами. Один из таких способов — использовать его для индексации непосредственно в созданную художником 1D-текстуру, которая экспоненциально падает с расстоянием. Этот подход в сочетании с другими более традиционными моделями освещения позволяет создавать различные материалы, такие как мрамор , нефрит и воск . [ нужна ссылка ]

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

Как видно на изображении восковой головки справа, свет не рассеивается при прохождении через объект с использованием этой техники; особенности спины четко видны. Одним из решений этой проблемы является взятие нескольких образцов в разных точках поверхности карты глубины. В качестве альтернативы можно использовать другой подход к аппроксимации, известный как диффузия текстурного пространства . [ нужна ссылка ]

Диффузия текстурного пространства

[ редактировать ]

Как отмечалось в начале раздела, одним из наиболее очевидных эффектов подповерхностного рассеяния является общее размытие рассеянного освещения. Вместо произвольного изменения функции диффузии диффузию можно более точно смоделировать, моделируя ее в пространстве текстур . Эта техника была впервые использована при рендеринге лиц в «Матрице: Перезагрузка» . [5] но также используется в области методов рендеринга в реальном времени.

Метод разворачивает сетку объекта с помощью вершинного шейдера, сначала рассчитывая освещение на основе исходных координат вершин. Затем вершины переназначаются с использованием координат UV-текстуры в качестве положения вершины на экране, подходящего преобразования из диапазона текстурных координат [0, 1] в диапазон нормализованных координат устройства [-1, 1]. Освещая таким образом развернутую сетку, мы получаем 2D-изображение, представляющее освещение объекта, которое затем можно обработать и повторно применить к модели в виде карты освещения . Чтобы имитировать диффузию, текстуру карты освещения можно просто размыть. Рендеринг освещения в текстуру с более низким разрешением сам по себе обеспечивает определенное размытие. Степень размытия, необходимая для точного моделирования подповерхностного рассеяния на коже, все еще находится в стадии активных исследований, но выполнение только одного размытия плохо моделирует истинные эффекты. [6] Чтобы имитировать характер диффузии, зависящий от длины волны, образцы, используемые во время (гауссовского) размытия, могут быть взвешены по каналам. Это своего рода художественный процесс. Для кожи человека наибольшее рассеяние наблюдается у красного цвета, затем у зеленого, а у синего рассеяние очень незначительное. [ нужна ссылка ]

Основным преимуществом этого метода является его независимость от разрешения экрана; затенение выполняется только один раз для каждого текселя текстурной карты, а не для каждого пикселя объекта. Таким образом, очевидным требованием является то, чтобы объект имел хорошее UV-отображение, поскольку каждая точка текстуры должна сопоставляться только с одной точкой объекта. Кроме того, использование диффузии текстурного пространства обеспечивает один из нескольких факторов, способствующих созданию мягких теней, устраняя одну из причин недостатка реализма при отображении теней . [ нужна ссылка ]

См. также

[ редактировать ]
  1. ^ «Окончание: Подземный легкий транспорт» . POV-Ray вики . 8 августа 2012 г.
  2. ^ Кришнасвами, А; Бароноски, ГВГ (2004). «Биофизически обоснованная спектральная модель взаимодействия света с кожей человека» (PDF) . Форум компьютерной графики . 23 (3). Издательство Blackwell: 331. doi : 10.1111/j.1467-8659.2004.00764.x . S2CID   5746906 .
  3. ^ Грин, Саймон (2004). «Приближения подповерхностного рассеяния в реальном времени». Драгоценные камни графического процессора . Аддисон-Уэсли Профессионал: 263–278.
  4. ^ Надь, З; Кляйн, Р. (2003). Глубокое очищение для объемного рендеринга на основе текстур (PDF) . 11-я Тихоокеанская конференция по компьютерной графике и приложениям. стр. 429–433. дои : 10.1109/PCCGA.2003.1238289 . ISBN  0-7695-2028-6 .
  5. ^ Боршуков Г; Льюис, JP (2005). «Реалистичный рендеринг человеческого лица для «Матрицы: Перезагрузка» » (PDF) . Компьютерная графика . АКМ Пресс.
  6. ^ д'Эон, Э (2007). «Расширенный рендеринг кожи» (PDF) . КРИ 2007 .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 886b762d05b33e93b0d439a5382043c2__1716024000
URL1:https://arc.ask3.ru/arc/aa/88/c2/886b762d05b33e93b0d439a5382043c2.html
Заголовок, (Title) документа по адресу, URL1:
Subsurface scattering - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)