Здравствуйте, коллеги!
Вступление:
С выходом Corona render многие оценили его достоинства. Учитывая, что есть скрипт-конвертер материалов пользоваться этим рендером стало гораздо удобнее. Он хорош как для начинающих, так и для профессионалов. Многие оставили горячо любимы и популярный Vray и перешли на Corona. Однако все привыкли к тем многогодовым наработкам ребят из Chaogroup. В частности я имею ввиду линзовые эффекты. Не сомневаюсь, что разработчики Corona render обязательно добавят такой функционал, ведь это достаточно молодой продукт. Но у них пока много других дел.
Теоретическая часть:
Давайте определимся что такое линзовый эффект. Из названия следует, что образуется этот эффект в линзах.Поддержка линзовых эффектов появилась у Vray начиная с версии 2.0. Рассмотрим как же он реализуется:Если зайти в настройки эффекта, увидим там 2 раздела: Bloom (свечение, возникает в следствии рассеивания света внутри линзы) и Glare (ослепительный блеск, возникает в следствии дифракции света в диафрагме). В жизни бывает еще эффект Lens flare (это когда возникает дорожка из бликов через центр кадра, что является следствием переотражений внутри группы линз), но в Vray он не реализован. Для интерьерной визуализации это и не нужно, а то что имеется очень оживляет картинку.Так вот, при активации одного из этих эффектов в списке рендер элементов появляется LensEffectsSource, который содержит данные, полученные сразу после расчёта без применения каких либо цветокоррекций, экспозиций и color mapping'а. То есть в линейном виде. Это нужно для сохранения информации о реальной яркости пикселей.
Дальше Vray применет к этому изображению различные эффекты размытия. Потом соединяет с иходным изображением и применяет цветокоррекцию и color mapping. Для избежания чрезмерного замыливания в местах отсутствия яркого света разработчики придумали отсекать эти неяркие области перед применением размытия. За это отвечают параметры Bloom mask и Glare mask.
Приблизительно это выглядит так, только это делается с исходным изображением, но так как я не могу вытащить у вирея промежуточные этапы, то просто показываю наглядно формулу. Мы будем делать тоже самое, только в Photoshop.
Практическая часть, реализация в Corona:
В Coron'e есть возможность сохранения исходной информации в EXR. Этот формат позволяет сохранить расширенный диапазон яркости пикселей. Она находится здесь:
Включаем сохранение обычной картинки, сохранение EXR и запускаем на рендер.Важно!!! Перед запуском на рендер нужно убедиться, что там, где мы хотим получить линзовый эффект, у нас на выходе получаются очень яркие пиксели, на много больше единицы (в моём случае больше 100):
Лампочка сделана следующим образом: Светильник - это просто плоскость с самосветящимся материалом. Карти сделана градиентом. Яркость свечения = 150. Нужно подбирать опытным путём.
Если уменьшить экспозицию при рендере, будет так.
После рендера получаем 2 файла:
Обработка в Photoshop:
Я записал пару экшенов для упрощения задачи. Кому интересно можно разобрать их пошагово, но я рассмотрю ключевые моменты их использования. Сами экшены можно скачать отсюда
1. для начала надо разархивировать архив и загрузить экшен. Для этого окрываем Фотошоп. Меню -> Редактирование -> Наборы -> Управление наборами... -> тип набора: "Заказные фигуры" -> кнопка "Загрузить..." -> выбрать файл из архива "flare.csh"
2. Открыть панель "Операции" (Alt+F9) -> Меню -> Загрузить операции... -> выбрать файл Corona EXR Actions.atnПоявится папочка с названием "Corona EXR Actions". Там 2 экшена, первый использует только EXR, но более сложен в настройке и может дать не предсказуемый результат, второй использует EXR + любой 8-16битный файл.
Буду рассматривать второй экшен, но для его использования надо подготовить исходное состояние. Для этого:
1. Берем наши 2 файла. Открываем EXR в Photoshop
2. Теперь нужно перетащить "render.png" в окно открытого EXR. Таким образом у нас получится 2 слоя: фон (EXR) и смарт-объект (PNG). Обычно при таком перетаскивании изображения немного смещаются на 1-2 пикселя. Это надо исправить стрелками сразу после перетаскивания (можно использовать навигацию и масштабирование) и нажать Enter по завершении. (Примечание: нужно именно перетаскивать. Если открыть в отдельном окне и скопировать от туда, то будет искажена гамма)
3. Запускаем экшен "Corona render EXR+8bit Glare+Bloom". перед запуском убедитесь, что выделен верхний слой. Некоторые этапы будут требовать вашего вмешательства. Они автоматически спросят вас об этом.
4. Первым делом скрипт попросит откорректировать экспозицию. Исходный EXR может значительно отличаться по яркости от требуемого результата. Нужно крутить только параметр экспозиция и привести к более-менее приемлемому виду. То есть общая картинка должна читаться, хоть и будет тёмной, пересвеченными останутся источники света. Пример так:
5. Выскочит окошко настройки уровней. Это настройка маски. Здесь ползунками надо подобрать где будет накладываться эффект, а где нет. Двигаем только нижнюю границу
6. Экспозицией настраиваем силу эффекта, по вкусу.
7. То же самое с Bloom эффектом
8. В конце HUE/Saturation. При необходимости можно уменьшить насыщенность в том случае если EXR сильно отличается по цветовой температуре.
9. В итоге скрипт сохранит изображение в JPG с максимальными наcтройками под тем же именем, что и файл EXR.
Вот пример эффекта на другом изображении достигнутого с помощью этого скрипта:
1. Тут наглядно видно как эффект зависит оп поворота и размера источника света. При большом количестве источников трудно адекватно настроить тот же Knoll Light Factory. Данный скрипт автоматизирует этот процесс
2. Тут тоже заметно. Где смотрим более прямо и видим лампочку - там проглядывается звезда. Где смотрим сбоку - там просто сияние.
3. Ну и просто небольшое сияние LED светильников.
На этом всё. Удачных рендеров!!!