Правильный зеркальный термин модели Кук-Торранс / Торранс-Воробей

13

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

  1. FDграммπ(NВ)(NL)
  2. FDграмм4(NВ)(NL)
  3. FDграмм(NВ)(NL)

Какой из них правильный и когда? В « Физически обоснованном рендеринге: от теории к реализации » Мэтта Фарра и Грега Хамфрис, второй вывод окончательно получен, но в оригинальной статье Кук и Торранс используют первый без какого-либо подробного объяснения.

Thordal
источник

Ответы:

11

Я бы поверил Фарру и Хамфрис в этом. Уравнение 2 также согласуется с примечаниями курса SIGGRAPH Physical Based Rendering , а также с уравнением 20 в статье Уолтера и др., В которой представлено распределение GGX.

Я где-то читал, что в оригинальной статье Кука-Торранса есть ошибка, из-за которой они пропустили коэффициент 4 в знаменателе, что было исправлено в последующих статьях. Я не смог найти ссылку на это с помощью быстрого поиска (если кто-то знает, пожалуйста, не стесняйтесь отметить это в комментариях).

Что касается фактора π, он может появиться или нет, в зависимости от соглашений. Иногда это учитывается в нормальной функции распределения D. Например, если вы посмотрите в разделе 5.2 статьи Уолтера и всех GGX, где приводятся уравнения для нескольких D-функций, вы можете увидеть, что все они имеют π в знаменателе. Отметим, что это означает, что у Ламберта BRDF также должен быть π в знаменателе.

В графике в реальном времени π часто пропускается , и в этом случае мы можем интерпретировать его как выделение в светлые цвета . В любом случае это хорошо, если вы будете последовательны в том, чтобы либо вводить π, либо исключать его из всех используемых вами BRDF.

Натан Рид
источник
1

Более поздняя статья (по крайней мере, 2005;)), имеет более краткие обозначения при сравнении нескольких BRDF, включая BRDF Cook-Torrance . Их формула не включает деление на 4.

Адди Нган, Фредо Дюран, Войцех Матусик: Экспериментальный анализ моделей BRDF, Материалы Еврографического симпозиума по рендерингу 2005.

Страница проекта , дополнительная (посмотрите на дополнительную!)

Обратите внимание, однако, что BRDF Кука-Торранса не равен и, следовательно, не является синонимом BRDF-Торранса-Воробья . Последнее включает в себя ваше деление на 4. Интересный справочный обзор можно найти в:

Розана Монтес, Карлос Уренья: обзор моделей BRDF, Технический отчет, 2012.

Та же формула Кука-Торранса BRDF также присутствует в:

Филипп Дутре, Кавита Бала, Филипп Бекарт: Расширенное глобальное освещение, 2-е издание, 2006.

Редактировать : Я посмотрел на некоторые (изотропные) реализации F , G (или V в зависимости от того, если вы укажете ракурс в знаменателе на G ) и D :

  • D : Бекман, Уорд-Дуэр, Блинн-Фонг, Троубридж-Рейтц, он же GGX, он же GTR2, Берри, он же GTR1;
  • G | V : имплицит, Уорд, Нейман, Ашихмин-Премоз, Келеман, Кук-Торранс, Смит GGX, Смит Шлик-GGX, Смит Бекманн, Смит Шлик-Бекманн;
  • Ф : Шлик, Кук-Торранс.

Все они, похоже, используются (в литературе, в индустрии анимации и в игровой индустрии) в формате, соответствующем вашему второму варианту. Все D- факторы в моем перечислении содержат явный1πα2 с αшероховатость2(См. Уравнения ).

Редактировать 2: недавняя презентация, выводящая и объясняющая деление на4 вместо того π:

Эрл Хэммон: PBR Diffuse Lighting для микроповерхностей GGX + Smith , GDC 2017.

Чтобы сделать длинную историю короче, вариант 2 - единственный правильный термин (из трех представленных вариантов).

Матиас
источник
Блинн-Фонг не использует αроUграммчасNеss2, у него произвольный параметр "шероховатости". Так жеα в Бекман не то же самое, что αв GGX. В Бекман,α[0,) и в GGX α[0,1](хотя оба описывают RMS Slope).
Тара
1
@Tare Для Blinn-Phong вам нужно использовать производную версию, которая выводит альфа из зеркального показателя. См. Graphicrants.blogspot.be/2013/08/specular-brdf-reference.html
Матиас
1
Хорошо, вы не упомянули об этом в своем посте, поэтому я предположил, что вы использовали оригинальную форму.
Тара
0

Лично я использовал уравнение 2. Уравнение 3 мне кажется неверным, фактор Пи - это нормализация светового отклика и сохранение энергии. По сути, вы не хотите, чтобы от поверхности отражалось больше света, чем он получает.

Уравнение 2 является улучшением уравнения 1 и, насколько я знаю, является более правильным. Для получения дополнительной информации об уравнении 2 см. Микрофасетные модели для преломления через шероховатые поверхности. Автор Walter et al.

Фред Гарнье
источник