Сообщений
2, на страницах:
1добавить сообщениеСимуляция HDRI-освещения с помощью Internal Renderer в Blender
ВведениеВ рамках этой статьи мы собираемся имитировать использование изображения HDRI (High Dynamic Range Image) для рендеринга стандартным движком Blender. Я хочу сразу же уточнить, что этот метод является адаптацией обучающей статьи, сделанной KelSolaar (
kelsolaar.3dvf.net) для другой 3D программы.
Изображения HDRI (файл с расширением .hdr) — изображения, где информация о яркости пикселей не ограничивается диапазоном яркости обычных форматов вроде .bmp или .jpg (от 0 до 255), а представлена расширенной шкалой (от 0 до 65535). Визуально такие изображения имеют лучшую контрастность и большую деталировку в теневых и освещённых областях. Если вы больше хотите узнать о формате HDRI, обратитесь к сайту его создателя - г-на Поля Дебевек. (
www.debevec.org)
HDRI-изображения ввиду высокого диапазона яркости могут использоваться некоторыми 3D-приложениями в качестве источника фонового освещения. Blender в настоящее время не поддерживает в чистом виде HDRI-карт (Только через YafaRay). Но существует техника, чтобы имитировать такую технологию освещения и об этом пойдёт речь ниже.
Для этого упражнения нам потребуются:
1. Простая
сцена для Blender с несколькими объектами с присвоенными матовыми и отражающими материалами. Например эта:
testHDRI.blend2. Программа
HDRShop (бесплатная), которую вы можете скачать
тут3. Программа работы с растровыми изображениями, например GIMP (он тоже бесплатен) который вы можете скачать
тутЕщё потребуются HDRI-изображения, в основном представляющие из себя тип Light probe.
Это специальные сферические изображения , созданные по технологии «зеркального шара» (Mirror ball) и представляющие 360-градусный панорамный снимок в горизонтальном и вертикальном направлении. Также вы можете найти полусферические HDRI-изображения. Сферические изображения вы можете скачать
здесь и
здесь Полусферические
здесь и парочку
тутЭтап 1. Превращаем HDR-изображение в обычное LDR (Low Dynamic Range)- изображение с помощью HDRShopЗапускаем
HDRShop и открываем в нём выбранный HDR-снимок. Теперь в меню File выбираем Save As (Сохранить как) и в открывшемся окне выбираем формат, поддерживаемый Blender, например .jpg :
Совет: получающиеся LDR-изображения могут быть довольно «тяжёлыми», так как довольно подробны (часто 1024x1024 или 1500x1500), что приводит к увеличению времени рендеринга, поэтому если вам не требуется большая подробность в отражениях, то можете уменьшить разрешение изображения до 256х256, но не меньше.
Этап 2. Установка параметров окружения (World)Устанавливаем полученное jpg-изображение в качестве текстуры в параметрах фона (World) в первый текстурный слот. В панели текстур (
F6) выберите
Add New (добавить новую). В поле
Texture Type (Тип текстуры) выберите
Image (Изображение) и загрузите (
Load) изображение (В нашем случае - LDRImap ).
В панели
World (
F8) в закладке
Texture and Input выберите для добавленной текстуры тип
AngM (Angular map), если используете сферическую карту (Light probe), или тип
Sphere для полусферических карт:

В закладке
МарТо активируйте кнопку
Hori и установите
Mix как тип смешивания, а в панели
Preview активируйте кнопку
Real для получения реалистичного горизонта:
Этап 3. Установка параметров АО (Ambient Occlusion)Если вы заметили, что в сцене, которую я вам предоставил в качестве примера, нет ни одного стандартного источника света. Фактически мы собираемся использовать особенности настроек закладки
Amb Occ (Ambient Occlusion) панели
World (
F8), чтобы осветить сцену.
В закладке
Amb Occ нажимаем кнопку
Ambient Occlusion и в появившихся настройках активируем кнопку
Sky Texture (вот интересная фича!), и
Add (
Adjouter на рисунке, так как автор - француз). Параметр
Samples установите равным 16, чтобы получить хорошее разрешение и избежать шума. Параметр
Energy (Энергия) установим для начала равным
1.5:

Попробуем отрендерить (
F12) (не забудьте прежде нажать кнопку просчёта трассировки
Ray в панели настроек рендеринга (
F10) ;-) ). Получится что-то вроде этого:
Этап 4. Улучшение рендерингаКак видите освещённость в полученной картинке недостаточна, так как в канале текстур окружения у нас LDR-карта с низким диапазоном освещённости. Чтобы исправить это нужно поместить во второй текстурный слот окружения более яркую карту освещённости. Чтобы сделать это используем редактор растровых изображений
GIMP.
Открываем нашу LDR-карту в
GIMP (Меню
Файл >
Открыть >
выбрать изображение)и уменьшаем её до 256Х256 или даже 100Х100, поскольку карта освещённости не нуждается в высокомразрешении. (Чтобы уменьшить выберите в меню
Изображение >
Размер изображения >
введите значения >
Изменить).
Полностью избавляемся от цвета (Меню
Цвет >
Тон-Насыщенность >
Ползунок Насыщенность двигаем влево до упора). Теперь у нас есть изображение в оттенках серого цвета.
Нам теперь нужно усилить светящиеся части изображения. Меню
Цвет >
Уровни. Здесь в секции
Уровни на входе значение
Гамма в текстовом окне по центру установите равным
0,3. Прежде чем нажать
ОК убедитесь, что чёрные участки у вас действительно чёрные, а белый цвет — ярко белый. Если это не так то в той же секции
Уровни на входе левой пипеткой
Выбор чёрной точки щёлкните по самому чёрному участку изображения, а правой пипеткой
Выбор белой точки — по самому белому участку. (Гамма каждого крайнего значения)
Далее применяем к картинке фильтр размывания, чтобы получить «нечёткую» карту: Меню
Фильтры >
Размывание >
Гауссово размывание и сохраняем в jpg-формат Вот примерно что вы должны получить:

Теперь загружаем нашу карту освещённости во второй слот текстур фона. Устанавливаем полученное jpg-изображение в качестве текстуры в параметрах фона (World) во второй текстурный слот. В панели текстур (
F6) выберите
Add New (добавить новую). В поле
Texture Type (Тип текстуры) выберите
Image (Изображение) и загрузите (Load) изображение (В этом случае - LDRIlight ).
И опять в панели
World (
F8) в закладке
Texture and Input выберите для добавленной текстуры тип
AngM (Angular map), если используете сферическую карту (Light probe), или тип
Sphere для полусферических карт:

В закладке
МарТо активируйте кнопку
Hori и установите
Add как тип смешивания:

Рендерим (
F12) и опа! Уже намного лучше!
До:
После:
Регулировка: Если ваше изображение всё же тёмное — увеличивайте значение параметра
Energy в закладке
Amb Occ. Также вы можете менять цвет освещённости, либо добавив цвет в параметрах фона (
F8) и активировав кнопку
Blend в панели
Preview, либо изменив цвет карты освещённости в
GIMP.
Некоторые случаи могут потребовать более ограниченной освещённости. Тут вы можете попробовать не менять параметр Гаммы у второй карты перед размыванием (мы устанавливали в нашем примере 0,3), а добавить её с такими же параметрами, как первую.
И ещё: если вы не хотите, чтобы рендерилось фоновое изображение, нажмите кнопку
Key в панели настроек рендеринга (
F10). Спасибо юзеру SpeedTiti, за то, что указал мне на эту возможность.
ЗаключениеВ заключении та же сцена с различными HDR-картами (я использовал Light probes- сферические):
Снежный зимний день...

… маленькая ванная комната...

… или под садовыми деревьями.

Надеюсь этот урок поможет вам в ваших будущих достижениях. Удачного блендинга!
Автор: GFab3D, 25/03/2006 для BlenderClan
Перевод: cyberdime (

)
.pdf версия-урока: загрузить (533 KB)
Оригинал статьи на французском: http://blenderclan.tuxfamily.org/html/modules/content/?id=12Перевод по причине полного отсутствия знаний французского языка был выполнен с помощью автоматического переводчика (http://www.translate.ru) и адаптирован. Проверен на прилагаемом примере — всё работает :)