В этом уроке мы посмотрим, как подчеркнуть края объекта и добавить свечение типа Glare с помощью постобработки наших рендеров в Blender.


Видеоверсия этого руководства в настоящее время недоступна на этом языке, но доступна на английском языке при выборе соответствующего языка в верхней части страницы.


Текстовая расшифровка видео

Всем привет! В этом уроке мы посмотрим, как подчеркнуть края объекта и добавить свечение типа Glare с помощью постобработки наших рендеров в Blender.

Этот урок был создан в Blender 3.6, но используемые nodes композитинга доступны как минимум с версии 2.49 и, скорее всего, останутся доступными и в будущих версиях.

Чтобы подчеркнуть края объекта, размещённого в сцене Blender, сначала нужно изолировать этот объект из рендера. Это можно сделать с помощью Cryptomatte или, как в моём случае, node ID Mask, который даст нам белую маску, соответствующую объекту, который мы хотим изолировать.

В 3D модели, которую я использую для этой демонстрации, есть четыре отдельных объекта, связанных с грудной клеткой: позвонки, хрящи, рёбра и грудина.

Для нашего примера давайте выберем выделение краёв частей хрящей.

Перед началом рендера назначьте уникальный числовой идентификатор объекту, который мы хотим изолировать, указав значение, отличное от 0, в поле Pass Index, которое находится в разделе Relations вкладки Object Properties. Я устанавливаю это поле в значение 1.

Чтобы получить эту информацию при постобработке, нужно открыть вкладку View Layer и включить опцию Object Index в разделе Passes.

Теперь можно открыть Compositor Editor и активировать использование nodes, установив флажок Use Nodes.

Чтобы просматривать эффекты композитинга, также включите опцию Backdrop.

Затем добавьте node Layout Reroute и node Output Viewer.

Это позволит отправить результат композитинга в Reroute и оттуда одновременно в Composite и Viewer.

Теперь нужно выполнить начальный рендер, даже с небольшим количеством samples, чтобы получить первые данные композитинга.

Среди них у нас будет маска объекта, которую можно получить из выхода IndexOB node Render Layers.

Если предварительный просмотр рендера слишком большой, его можно уменьшить клавишей V; если слишком маленький, увеличить сочетанием ALT + V.

Теперь рассмотрим маску, которая изолирует только объект Cartilage: подключите node Convertor ID Mask между Render Layer и Reroute, но используйте выход Index OB вместо выхода Image.

В поле Index node ID Mask укажите значение, соответствующее полю Pass Index объекта Cartilage, то есть 1.

Как видите, мы получили белую маску, соответствующую объекту Cartilage.

Если бы мы хотели выделить или как-то изменить только эти части, эта маска была бы отличной отправной точкой.

Однако нам нужно подчеркнуть только края этой маски, поэтому необходимо найти способ их изолировать.

В этом случае нам поможет node Filter Dilate/Erode: он позволяет расширять или сужать маску. Вы можете увидеть его эффект, поместив его между ID Mask и Reroute и изменяя значение поля Distance.

В частности, задавая отрицательные значения, мы получим уменьшенную версию исходной маски.

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

Node, который мы будем использовать, это Convertor Math в режиме Subtract, так как он работает с числовыми значениями, поступающими из выходов Alpha node ID Mask и Mask node Dilate/Erode, что можно увидеть по цвету сокетов входа и выхода.

Подключите выход Alpha node ID Mask к первому входу Value node Math Subtract и одновременно к входу Mask node Dilate/Erode.

В node Dilate/Erode установите отрицательное значение Distance, например -1 или -2.

Затем подключите выход Mask ко второму входу Value node Math Subtract. После этого подключите выход Math Subtract к node Reroute, чтобы просмотреть текущий результат.

Уже сейчас можно выполнять некоторые операции с этой маской, например применить цветной фильтр Glare.

Сначала окрасим маску, просто умножив выход Math Subtract на синий цвет с помощью node Color Mix, установив режим Multiply.

Результат умножения на белый даёт сам цвет умножения, а умножение на чёрный всегда даёт чёрный результат, так как это эквивалентно умножению на 0. Поскольку исходное изображение белое только по краям объекта Cartilage и чёрное в остальных местах, умножение на синий даст синий цвет на белых участках и чёрный везде остальное.

Далее подключите node Filter Glare к выходу Color Mix Multiply. В моём случае используется режим Streaks с шестью световыми лучами. Обратите внимание, что значение Threshold установлено в 0, иначе node не даст эффекта.

Если эффект кажется слишком слабым, попробуйте уменьшить значение Distance в node Dilate/Erode. Это можно сделать и позже, когда эффект будет добавлен к исходному рендеру.

Осталось наложить этот результат на исходный рендер. Существует несколько способов, но самый простой это добавить node Color Mix в режиме Screen со значением 1 в поле Factor перед node Reroute.

Обратите внимание на порядок подключений в node Screen: изображение из Render Layers должно быть подключено к первому входу Image, а изображение из node Glare или других эффектов маски ко второму входу Image.

Если значение Factor в node Screen равно 0, на выходе будет только исходный рендер. Чтобы получить анимацию, показанную в начале видео, где свечение сначала отсутствует и затем усиливается, установите Factor в 0 на первом кадре и добавьте ключ анимации для этого поля. Затем переместитесь вперёд по Timeline, установите Factor в 1 и добавьте новый ключевой кадр.

Вот итоговый результат, где края выбранного объекта чётко выделены, окрашены и имеют лёгкое свечение.

Надеюсь, этот урок был полезен! До скорой встречи!

Этот сайт предназначен исключительно для демонстрации некоторых моих работ и не имеет рекламных целей. Обратите внимание, что в настоящее время я не ищу и не рассматриваю запросы на индивидуальные заказы, консультации или любые другие формы профессионального сотрудничества.


РАСШИРЕННАЯ ИНФОРМАЦИЯ О ПОЛИТИКЕ КОНФИДЕНЦИАЛЬНОСТИ И ИСПОЛЬЗОВАНИИ ФАЙЛОВ COOKIE