Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
сцена.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.38 Mб
Скачать

Ламберт (просто цвет).

Ламберт – по-простонародному это обычный диффузный (рассеянный) свет, а если по-научному – подповерхностное рассеивание. Другие модели работают в основном с фальшивыми зеркальными бликами (Blinn (Блин), Phong (Фонг)), которые обычно добавляются поверх Ламберта.

BRDF по Ламберту симулирует подповерхностное рассеивание таким образом: свет входит в материал равномерно рассеивается и выходя наружу попадает в объектив камеры. Но вы должны понимать, что свет, который попадает внутрь материала (при этом он там многократно отражается от атомов) и выходит наружу не может вести себя точно также как свет, который зеркально отражается от поверхности. Поэтому данная модель BRDF по Ламберту не отражает картину окружения.

С другой стороны, поверхностное отражение, никогда не будет таким однородным как подповерхностное, поэтому поверхностное отражение всегда будет концентрировать больше света в участках блика на объекте, что будет походить на источник света. Попросту, поверхностное отражение это прямое отражение источников света, и оно будет четче, чем подповерхностное отражение, которое очень сильно рассеяно (размыто).

 

Орен-Найар (цвет шершавых поверхностей).

Существует также "шершавая" функция для "цвета" (подповерхностного отражения). Называется она модель BRDF Орена-Найара. Эта модель имеет параметр для контроля шершавости поверхности. Этот параметр определяет, сколько света отразится назад в направлении источника света, что является характеристикой "шершавой" (запыленной) поверхности. Чем более шершавая поверхность, тем менее отчетливым является диффузное отражение.

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

К примеру, поверхность пластика не такая шершавая. А резина, камень, ржавчина значительно грубее (шершавее) кожи или бархата.

Шершавя поверхность рассеивает свет во всех направлениях, но абсолютно неравномерно. Поэтому Орен-Найар – это упрощенное представление реальности.

Blinn, Phong и Ward (Уорд) - это наиболее распространенные упрощенные модели BRDF для бликов (specular). Наиболее удачным будет материал, построенный на Ламберте + блик по модели Блинна или Фонга.

 

Blinn (световой блик с малыми искажениями если свет падает под скользящим углом).

Blinn – это улучшенная версия Фонга. Блики по модели Блинна в сравнении с моделью Фонга лучше держат форму при разных углах падения света.

 

Phong (световой блик).

Модель Фонга генерирует более растянутые блики под скользящими углами падения света, в то время как по модели Блинна форма бликов не меняется.

 

Ward-anisotropic (или просто Ward – анизотропные световые блики).

Уорд – это основная модель для зеркальных бликов на поверхностях с микрогранями (также как и модель Cook-Torrance), которая позволяет вам определить разную шершавость в разных направлениях, отсюда и анизотропия. Уорд – это в честь изобретателя анизотропной BRDF.

 

Cook-Torrance (металлы).

Модель Кука-Торенса – отличная модель для зеркальных бликов на поверхностях с микрогранями. Вы можете использовать различные функции распределения для получения различных форм бликов, включая анизотропные.

 

Lafortune – это многослойная модель (т. е. это как три Фонга вместе), которая позволяет индивидуально "задавать" позицию блика на каждом слое, а также шероховатость каждого слоя. Подставляя математически совпадающие данные измеренной BRDF, вы сможете создавать страшно реалистичные изображения реальных материалов.

Существуют и другие типы BRDF, но они не так распространены. Поэтому для получения сведений используйте руководства к вашему рендереру.

Но будьте осторожны: каждый рендерер имеет свои определения вышеперечисленных типов затенения. К примеру, в 3ds Max есть Oren-Nayar-Blinn – это не что иное, как шейдер Oren-Nayar + блик по модели Блинна. А Lambert – это обычно тот же Блинн, но без блика. Так что все это сильно зависит от 3D приложения.

Очень важно перестать полагать, что трассируемые отражения в корне отличаются от модели BRDF бликов по Фонгу или Блинну. Оба эти метода имитируют один и тот же процесс – зеркальное отражение от поверхности – они просто вычисляются разными методами. Но все-таки трассируемые отражения будут отличаться, если вы переключитесь на BRDF по Фонгу или Блинну.

Использование принципа "что лучше смотрится" – это конечно правильно. Но понимание принципа работы той или иной BRDF, а также ее назначения очень важно хотя бы по той причине, что вы должны знать, от чего следует отталкиваться, чтобы получить такой материал как вы задумали.

С возрастанием мощи компьютеров будет возрастать и преобладание физически корректных визуализаций. А понимание принципов создания материалов (shading) поможет вам сделать изображения реалистичными.