ВИЗУАЛИЗАЦИЯ ПРОСТРАНСТВЕННОГО КОНТИНИУМА

фотография и компьютерное искусство


Previous Entry Share Next Entry
Blender.Cycles. How to get shadows and reflections pass. Как получить отдельные отражения и тени.
Willyam Bradberry фотография
vitaly_sokol
В блэндере конечно.

Используя рендер CYCLES в блэндере натолкнулся на пренеприятнейший баг - невозможность получить отдельный теневой пасс в случае использования HDR в качестве освещения.
А также если используются источники света отличные от (хаха) стандартных источников света.
Т.е. если используется светящийся материал "EMISSION" в "осветительных студиях" внутри блэндера.

Тени-то оно даёт в финальной картинке, а вот SHADOW PASS выдаёт полностью чёрное окно (в случае, если на WORLD Environment назначен чёрный цвет).
Также, оказалось, что "вычленить", то есть получить от объёктов отдельно отражения тоже не самый очевидный вариант. Отдельным пассом я имею в виду.

Зачем это нужно?
Ну, одному перцу на стоковом форуме понадобилось рендерить объекты на белом фоне с отражениями (нонсенс, ага), а мне как обычно стало любопытно найти выход.

И оказывается есть очень презабавное решение.

--------------

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

Сначала первым слоем настраивается сцена, где она будет рендерится полностью с отражением, освещением и студией.


01.jpg

--------------
Затем создаётся рендер-слой который будет получать чёрно-белую маску для отражений.
Суть получения отражений в виде отдельного слоя сводится к тому, что на объект назначается светящийся белый материал и рендерится в полной темноте.

02.jpg

--------------
После чего я сделал клон объекта для получения теней и назначил на него материал студии - просто белый "Diffuse"
также вынес в отдельный рендер-слой

03.jpg

***
Ну и напоследок рендерится голая студия без теней и объектов.
На самом деле всё может быть гораздо сложнее чем простенькая студия, например полноценная 3д сцена, наполненная целым виртуальным миром, но суть остаётся такой же.

04.jpg

***
Теперь самый жир.
Для получения отражений в отдельным слое просто используется чёрно-белая маска, полученная при рендере светящегося материала и пропускается через нод "ALPHA OVER".
В результате имеем отдельную картинку с отражениями которая отличается от того, что мы получаем в пассах GLOSSY direct/indirect.
Соответственно теперь мы можем баловаться с яркостью-контрастом и управлять отражением отдельно.

06.jpg

***
Потребность в этих свистоплясках возникла потому,
что ни рендер-пассы ни нод ligth-path, в случае использования нестандартных блэндерских "лампочек", не помогут получить отражения и тени по отдельности.

Осталось получить тень.

Для получения тени берётся картинка с пустой студией и картинка с отрендерёными тенями и пропускается это через нод COLOR > MIX => в режиме SUBTRACT - вычитание.
В результате остаются лишь только отбрасываемые тени, которые потом миксуются в общей картинке с помощью режима наложения MULTIPLY.
Способ удобен тем, что все последующие манипуляции и доводки можно проводить в привычной среде, например в фотошопе.

---

Вот результат с отражением и тенью на белом фоне:

05.jpg

***

На сегодня актуальной является версия blender 2.77

Напоминаю, что программа blender - Это замечательный БЕСПЛАТНЫЙ пакет для 3д-моделирования, анимации, визуализации,
создания спецэффектов и ещё очень-очень много полезного там.

Тестовый файл-сцену можно скачать тут.

Приятных мыслей.

Posts from This Journal by “blender” Tag

  • Cyberatonica.ChaosBarrier

    "<Барьер Хаоса\>" "Круги по воде, от брошенного в неё камня, вернутся к вам в виде волн, котрые остановятся на границе сухого и мокрого,…

  • Cetonia Eve

    Весь процесс создания закинул на artstation Модель: Александра. Фото/постпроцесс: Виталий Сокол Приятных мыслей в процессе созерцания.

  • Думатель.

    Как обычно, излишнее количество деталей не позволяет манипулировать позами и анимацией. Но беда не в этом, а в том, что почему-то в блэндере…


  • 1
Тоже сталкивался с той же самой проблемой, что интересно - решал точно так же :)
Проблема была в том, что когда рендерится стекло на фоне градиента, при сохранении готового изображения градиент сохранялся ступеньками (насколько я понял - врожденный дефект компрессии jpg), соответственно нужно было чем-то сглаживать градиент. Т.е. получить неразмытое стекло и неразмытое его отражение на фоне размытого бекграунда. В результате точно так же делал копию бокала на отдельный слой, назначал ему материал emission и рендерил отдельно, чтобы получить маску. В общем вот такие ноды получились:
Для контраста сделал не размытие фона, а просто подкрасил его красным :)


А тень выделяю на прозрачный бек тоже похоже (рендером бека отдельно и предмета с тенями отдельно) :

В идеале контраст делать во всех каналах сразу а это ЧБ. Хотя можно и красно-синий каналы.

Красный цвет это просто для примера ) Так я просто шум на бек добавлял.

  • 1
?

Log in

No account? Create an account