Как сделать стекло в блендере

Обновлено: 18.05.2024

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — первая статья из цикла о визуализации в Blender.

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

Дополнительные программы для удобства

Substance Painter — программа для текстурирования 3D-моделей или создания текстур/текстурных карт для них. По ходу работы мы будем импортировать текстуры отсюда.

Node Wrangler — аддон, который содержит разнообразные инструменты для улучшения и ускорения воркфлоу, основанного на нодах (node-based workflow).

Активируется он следующим образом:

Как работать в Material Editor

После того как портировали нужную модель в Blender, находим вверху вкладку Editor Type и выбираем Shader Editor. Нас перебрасывает в меню.

Material Editor имеет 2 режима:

Здесь есть две настройки:

Surface (поверхность) — сюда можем подключить обычный background (включен по умолчанию) и поменять его цвет или же добавить HDRI текстуру (удалить нод background и добавить Environment texture через Shift+A ). Я остановился на обычном бэкграунде.

2. Редактирование объектов, с которым мы и будем сегодня работать.

Пример создания пустого материала

Важно: не забываем активировать Node Wrangler.

Выделяем базовый шейдер и нажимаем Shift+Control+T. Комбинация откроет нам меню выбора файлов. Выделяем нужные нам текстуры и подгружаем.

Если по умолчанию в названии файла текстуры есть приписка с её назначением, прога сама привязывает соответствующие файлы к параметрам.

Редактировать эти приписки (или суффиксы/тэги) можно в меню:

Если значение определилось неверно, изменить привязку можно самостоятельно, соединив мышкой output нода и input шейдера.

Кроме того, текстуру можно так же вручную перетянуть из окна в программу и прилинковать.

Настройка материала высокополигональной модели

Стоит оговориться, что речь пойдёт о модели хайполи с высокой плотностью сетки, которая призвана проиллюстрировать навык дизайнера в рамках портфолио.

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

Metallic, Transmission и Transmission Roughness мы не используем на теле вообще.

Дальнейший процесс можно разделить условно на 2 этапа: работу над материалами для тела и зубов и настройку иллициев.

Тело и зубы

Для настройки материала тела мы используем обычный PBR-материал с Metal-Rough workflow или пайплайном. Карты экспортируем из упомянутого в начале статьи Substance Painter.

Наш материал состоит из следующих нодов: Albedo или Base Color, Roughness и Normal Map. Последний используется для мелкой детализации.

Что нужно знать при работе с материалом?

Текстурные карты, которые не передают цвет материала, должны быть в линейном пространстве. Поэтому в Color Space текстур мы ставим:

sRGB — для Albedo

Non color, либо Liner — для Roughness, Normal и т.д. в зависимости от вашей сборки

Эту конструкцию мы затем подключаем к Normal в Principled BSDF. Roughness (чёрно-белая карта, не требует манипуляций с каналами) подключается в соответствующий слот шейдера, так же как и Albedo (Base Color).

Вот так выгладит готовая сборка материала:

Фиолетовое поле — это наш Normal Map. Не обращаем внимания на неприлинкованные окна.

В случае с зубами настройки всё те же. Также флипаем при необходимости зелёный канал в нормалке.

Пошаговое создание светящихся иллициев

Примеры в референсах.

Рассмотрим, как распределить свечение по всей длине иллициев, — от наибольшей интенсивности к наименьшей.

нижнего слоя — овалы внутри, дающие основное свечение на концах;

среднего слоя — так же светящиеся трубки;

верхнего слоя — внешняя оболочка иллициев.

a) Нижний слой

Настройки материала нижнего слоя.

Как настроить свечение?

b) Средний слой

Ноды этого слоя те же, что и у предыдущего. В Principled BSDF значение Roughness мы выставляем меньше, примерно в 3 раза, что даёт нам более глянцевую поверхность. Значение IOR (индекса преломления) оставляем по умолчанию. Transmission, в случае второго слоя, у нас контролируется через Color Ramp и Layer Weight.

Настройки материала среднего слоя.

Layer Weight — нод, из которого мы берём значение Френелевского отражения.

В зависимости от того, под каким углом мы смотрим на поверхность объекта, сам объект кажется нам в большей или меньшей степени прозрачным. Коротко этот эффект можно описать так: чем ближе к 90° угол между направлением взгляда и поверхностью прозрачного объекта, тем более прозрачным он кажется.

Пример: рыба из референса. Мы видим, как поверхность всё больше теряет прозрачность и обретает цвет по краям.

Color Ramp — по своей сути, аналог уровней в Photoshop, с помощью которого мы можем:

1) инвертировать цвета — по умолчанию белый цвет справа, чёрный слева; перетягивая ползунки друг на друга, обращаем цвета.

2) настроить контрастность — чем меньше расстояние между ползунками, тем она больше.

Теперь, соединив этот нод с Transmission, мы получаем следующие параметры: чем ближе к белому цвет, тем прозрачнее будет отображаться материал на рендере.

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

c) Верхний слой

Наконец, настройки внешней оболочки выглядят следующим образом:
Общий принцип остаётся тот же: Principled BSDF, к которому подсоединяем Bace Color с Color Space sRGB, и упрощённая настройка volume — Volume Absorption.

На последнем останавливаться нет смысла, затронем основные моменты настройки Principled BSDF.

Для Roughness была использована готовая текстура из Substance Painter.

Аналогично применяем готовый градиент к Transmission и миксуем его с уже описанным Layer Weight (откуда берём френель) + Color Ramp (инверт LW).

Чтобы смешать прозрачность по френелю и по градиенту, создаём нод MixRGB и выбираем вариант смешивания Multiply, линкуем их к нему (Color1 и Color2), после чего соединяем нод Multiply с Transmission.

И не забываем инвертировать зелёный канал в Normal Map при необходимости.

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

В Blender'e, кстати есть режим TexturePaint - как раз специально для рисования текстур поверх 3D-модели прямо в Blender'e. Так-что куда-то что-то импортировать потом экспортировать вообще нет смысла, только время тратить. В инете тьма видеороликов на эту тему:


Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — первая статья из цикла о визуализации в Blender.

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

Substance Painter — программа для текстурирования 3D-моделей или создания текстур/текстурных карт для них. По ходу работы мы будем импортировать текстуры отсюда.

Node Wrangler — аддон, который содержит разнообразные инструменты для улучшения и ускорения воркфлоу, основанного на нодах (node-based workflow).

Активируется он следующим образом:

После того как портировали нужную модель в Blender, находим вверху вкладку Editor Type и выбираем Shader Editor. Нас перебрасывает в меню.

Material Editor имеет 2 режима:

Здесь есть две настройки:

Surface (поверхность) — сюда можем подключить обычный background (включен по умолчанию) и поменять его цвет или же добавить HDRI текстуру (удалить нод background и добавить Environment texture через Shift+A ). Я остановился на обычном бэкграунде.

2. Редактирование объектов, с которым мы и будем сегодня работать.

Важно: не забываем активировать Node Wrangler.

Выделяем базовый шейдер и нажимаем Shift+Control+T. Комбинация откроет нам меню выбора файлов. Выделяем нужные нам текстуры и подгружаем.

Если по умолчанию в названии файла текстуры есть приписка с её назначением, прога сама привязывает соответствующие файлы к параметрам.

Редактировать эти приписки (или суффиксы/тэги) можно в меню:

Если значение определилось неверно, изменить привязку можно самостоятельно, соединив мышкой output нода и input шейдера.

Кроме того, текстуру можно так же вручную перетянуть из окна в программу и прилинковать.

Стоит оговориться, что речь пойдёт о модели хайполи с высокой плотностью сетки, которая призвана проиллюстрировать навык дизайнера в рамках портфолио.

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

Metallic, Transmission и Transmission Roughness мы не используем на теле вообще.

Дальнейший процесс можно разделить условно на 2 этапа: работу над материалами для тела и зубов и настройку иллициев.

Для настройки материала тела мы используем обычный PBR-материал с Metal-Rough workflow или пайплайном. Карты экспортируем из упомянутого в начале статьи Substance Painter.

Наш материал состоит из следующих нодов: Albedo или Base Color, Roughness и Normal Map. Последний используется для мелкой детализации.

Что нужно знать при работе с материалом?

Текстурные карты, которые не передают цвет материала, должны быть в линейном пространстве. Поэтому в Color Space текстур мы ставим:

sRGB — для Albedo

Non color, либо Liner — для Roughness, Normal и т.д. в зависимости от вашей сборки

Эту конструкцию мы затем подключаем к Normal в Principled BSDF. Roughness (чёрно-белая карта, не требует манипуляций с каналами) подключается в соответствующий слот шейдера, так же как и Albedo (Base Color).

Вот так выгладит готовая сборка материала:

В случае с зубами настройки всё те же. Также флипаем при необходимости зелёный канал в нормалке.

Рассмотрим, как распределить свечение по всей длине иллициев, — от наибольшей интенсивности к наименьшей.

нижнего слоя — овалы внутри, дающие основное свечение на концах;

среднего слоя — так же светящиеся трубки;

верхнего слоя — внешняя оболочка иллициев.

В прошлом уроке мы рассмотрели создание двух видом материалов, но основной акцент делали все же на работу с материалами, в которых используя текстурные карты типа Image. И у Вас могло сложится мнение, что процедурные материалы вообще не нужны, и неясно для чего они придуманы вообще. В этом уроке мы поговорим именно о процедурных материалах, чтобы более полно рассмотреть возможности Blender для создания собственных материалов. Я говорю о тех возможностях, которые предоставляет сам редактор, не требуя дополнительных ресурсов, например, редакторов растровой графики.

Содержание

Рассматривать возможности процедурных материалов Blender мы будем на классических, но не самых простых примерах. Чтобы более полно усвоить материал данного урока, Вам необходимо хорошо владеть умением моделировать в Blender, используя сплайны, и помнить, как создаются объекты вращения, это можно посмотреть в уроке № 3. А сейчас мы займемся моделированием материалов, таких как стекло, вода, так же мы создадим зеркало.

Так как мы займемся моделированием Blender уже в стиле фотореализма, хотя лично предпочитаю всегда оставлять "мультяшный" эффект, то нам нужно понаблюдать за поведением этих объектов в реальной жизни. Поэтому ничего не остается, как вспомнить курс физики и разобраться в природе нужных нам материалов.

Если Вам понадобится более глубокое изучение данного вопроса, то обратитесь к справочникам по оптике. А здесь я расскажу лишь то, что нам пригодится в работе, хотя и этот короткий рассказ не обойдется без физических определений. Надо бать грамотным в той области человеческих знаний, модели из которой мы делаем – это такое правило, особенно если предстоит делать не простую статическую модель, а показать работу и взаимодействие различных деталей из различных материалов – тут уже без знания сопромата не обойтись, но не будем о печальном.

Итак, наша сцена состоит из камеры, источника света и некоторой модели. Это простейший случай. Источник света занимается тем, что посылает лучи света, модель – взаимодействует с этими лучами, а камера показывает результат этого взаимодействия. В зависимости от настроек материала, он ведет себя по-разному. Он может поглощать все лучи, может только часть, может отбрасывать тень, может тень не отбрасывать, может отражать лучи – иметь эффект зеркала.

Но как себя ведет обычное стекло? Оно пропускает лучи, отбрасывает тень и способно отражать некоторые из лучей. Как видите, не все так просто. Возьмем, к примеру, возможность стекла пропускать лучи. Для этого посмотрите через простой стакан на какой-нибудь предмет – некоторые предметы, находящиеся за ним, исказились, значит, стекло не просто пропускает лучи, а слегка искажает их. В физике это называется преломление света. То есть резкое изменение направления световых лучей, при переходе их через границу двух сред

Blender – уроки моделирования (урок №5)

Так выглядит преломление луча света при переходе его из воздуха в воду. Но наиболее интересная картина будет, если мы решим рассмотреть пример со стаканом воды. Здесь у нас присутствуют три среды: воздух, стекло, вода, и такие переходы: воздух-стекло, стекло-вода, вода-стекло, стекло-воздух. При каждом переходе луч сета преломляется. Наглядно это выглядит так:

Blender – уроки моделирования (урок №5)

В этом же примере возможны и другие переходы, если смотреть не с боку, а сверху. Но сейчас нас интересует другое. Мы знаем, что при переходе из среды в среду луч преломляемся. Так же мы знаем, что разные вещества, прозрачные для оптических излучений, обладают неодинаковой преломляющей способностью (например, стекло преломляет лучи сильнее, чем вода).

Еще существует такое понятие, как показатели преломления среды (index of refraction (IOR)). Показатель преломления определяется поляризуемостью составляющих ее частиц, а также структурой среды и ее агрегатным состоянием. То есть зависит исключительно от среды (материала) и четко определен для каждой из сред и записан в специальных таблицах. Вот самые важны показатели различных сред: IOR воды равен 1.33, IOR стекла – 1.52, IOR льда – 1.31, IOR водки – 1.36, IOR алмаза – 2.42. но помните, что эти показатели меняются в зависимости от температуры и некоторых других показателей, например, мед меняет свой показатель от концентрации в нем воды.

Теперь отдельно поговорим о зеркале. Зеркало отражает все лучи, ничего не пропуская, а искажения изображения, отражаемого зеркалом, происходит за счет геометрической формы самого зеркала. Так же меняя геометрическую форму объекта с материалом "стекло" можно получать линзы с различными свойствами.

На этом, думаю, вводную часть можно окончить. С нужными нам при работе понятиями я Вас познакомил. А вот сейчас настало время приступить к моделированию.

Возьмем все тот же бокал, с которым мы работаем на протяжении нескольких уроков, и продолжим работать именно с ним. Я опять беру все тот же щербатый бокал, чтобы у Вас была возможность поупражняться в моделировании, и Вы видели, к чему могут привести, на первый взгляд, незначительные дефекты моделирования. Перед нами стоит сложная задача – сделать этот многострадальный бокал на этот раз стеклянным, с учетом всех тех физических свойств стекла, о которых мы говорили выше. Засучиваем рукава и начинаем урок алхимии по превращению пластилина в стекло.

Выбираем бокал – клик правой кнопкой мыши по нему. Создаем новую текстуру и переходим в Texture buttons (F6) там добавляем новую текстуру – Blend и указываем ее тип – Sphere. Возвращаемся в Material buttons, там во вкладке Map Input делаем активной кнопку Nor и переключаем все координаты на Z.

Blender – уроки моделирования (урок №5)

Теперь переходим во вкладку Map To, делаем там активной лишь кнопку Alpha. Теперь во вкладке Material параметр Alpha делаем как можно ниже, я сделал его равным 0,15. Не забудьте сделать активной кнопку ZTrans. Теперь во вкладке Shaders устанавливаем параметр Ref равным 0, а Emit – 1. не могу не показать, что у меня вышло уже на этом шаге.

Blender – уроки моделирования (урок №5)

Создавать светящиеся объекты мы научились – это будет полезно при моделировании, скажем, медузы, но, напомню, создаем мы все-таки стекло. Да и не до конца понятно, умеет ли наш бокал отражать световые лучи, пропускать он умеет, и светится тоже вроде бы неплохо. Чтобы проверить отражательную способность нашего бокала, я положил перед ним плюшку. Объект тор, его мы тоже создавали уже. Но ничего с плюшкой больше делать не стал, а вернулся к бокалу.

Продолжаем наши алхимические эксперименты. Добавляем новую текстуру – вторую по счету. На этот раз текстура имеет тип – EnvMap. В Material Buttons во вкладке Map Input сделайте активной кнопку Refl. Во вкладке Map To делаем активными кнопки Col, Alpha, Emit, при этом цветовые параметры R, G, B равны 1, Col – 0.7, Nor – 0.5.

Я умышленно сделал бокал голубым.

Blender – уроки моделирования (урок №5)

Во вкладке Material можно изменить этот цвет на любой другой, например, на белый или любой другой или любой другой. Вроде бы вполне достойно, все, что должен уметь стеклянный бокал, наш бокал умеет: отражать, пропускать, искажать. Что еще нужно для счастья начинающему алхимику Blender’а?

Blender – уроки моделирования (урок №5)

Шутки шутками, а сейчас займемся другой разновидностью стекла – зеркалом. Но для начала, чтобы отчетливее видеть работу будущего зеркала, немного модернизируем нашу сцену. Около бублика я добавил конус – все предметы раскрасил, чтобы картинки были более жизнерадостные. И похожие на мультик. И еще добавил коробку, удалив некоторые грани (faces), чтобы они не мешали камере.

Теперь в сцене все готово, чтоб в ней появилось зеркало, а чтобы было веселее, сделаем зеркало из комнаты смеха. Добавим в нашу сцену еще сферу, она будет моделировать наше зеркало. Расположим ее где-нибудь сзади – я разместил ее в углу коробки, а спереди положим еще пару-тройку примитивов, чтобы было чему отражаться. Саму сферу масштабируем по усмотрению. Но учтите, что она в итоге должна оказаться сплющенной по одной из осей. Для этого используйте кнопку, с соответствующем оси именем X, Y, Z после нажатия кнопки масштабирования объекта S. Свойства у зеркала такие, что оно отражает все лучи, ничего не пропуская. В этом плане с зеркалом проще, чем с обычным стеклом.

Заходим на вкладку Mirror Trans включаем кнопку Ray Mirror и бегунок с таким же именем переводим в положение 1.

Blender – уроки моделирования (урок №5)

Собственно говоря, зеркало готово.

Blender – уроки моделирования (урок №5)

Теперь, кажется, осталось смоделировать воду, и закончить урок, но внимательный читатель задаст вопрос: а зачем в самом начале статьи я вел разговор о физике, всяких там индексах, параметрах, преломлениях, где все это? И как сделать так, чтобы свет все же преломлялся по-разному в разных материалах.

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

Теперь еще раз создадим материал стекло. Снова воспользуемся нашим бокалом – не зря же мы его все же моделировали. И вот окружение сцены для примера мне очень нравится, возьмем сцену с зеркалом, изменять в ней ничего не станем, только материал для бокала: удалим все текстурные карты. Получим самый простой материал, не использующий ни одной текстуры.

Теперь можно приступать к созданию стекла, на этот раз уже с учетом IOR. Все же бокал будет у нас уже стеклянный. Цвет сделаем ближе к белому. На панели и установим параметры R, G, B – 0.9, 0.9, 1 соответственно, а вот параметр A установим равный 0.1. Hа вкладке Links and Pipeline оставляем активными кнопки Traceable и Shadbuf. А вот параметры на вкладке Shaders приведем в соответствии с изображением.

Blender – уроки моделирования (урок №5)

Теперь начинается самое интересно. Мы переходи на вкладку Mirror Trans. Там включаем кнопку Ray Trans и задаем параметр IOR, соответствующий стеклу – 1.52.

Blender – уроки моделирования (урок №5)

А вот после рендера так у меня выглядит наша сцена.

Blender – уроки моделирования (урок №5)

Здесь уже бокал больше похож на стеклянный – и ошибка при моделировании тоже на лицо. Надеюсь, при создании своих моделей, Вы не допустите того, что сделал я. Теперь, в рамках нашей темы, немного похулиганим. Не зря же я Вам давал IOR водки – воспользуемся и им. Создадим сцену, в которой будет стоять на плоскости рюмка, в рюмке будет налита водка, а какой-нибудь предмет, скажем, трубочка, будет торчать из рюмки. Таким образом мы увидим, как будут преломляется лучи в различных средах – за одно, тем самым продемонстрирую Вам пример из схемы в самом начале статьи, чтобы не быть голословным. Вам предстоит создать две фигуры вращения – рюмку и ее содержимое, содержимое, конечно, можно создавать и цилиндром, но чтобы точно соответствовать форме рюмке, все же советую, создавать именно как фигуру вращения, а вот трубочку можно создать уже цилиндром, приступим.

Вот так у меня выглядит заготовка будущей сцены.

Blender – уроки моделирования (урок №5)

Делаем все те же манипуляции с материалами для Glass и Water, что мы делали в предыдущем примере для бокала, только для материала Water выставляем IOR равный 1.36.

Это долго времени не займет, да и результат после рендера будет не сразу понятен, поэтому добавим в центр рюмки соломинку. У меня она будет просто торчать из центра, что не совсем соответствует физике, но кто Вам мешает положить ее так, как надо? Получилась вот такая сцена, достаточно точно отражающая физическую картину вопроса преломления лучей. Видны даже грани на рюмке.

Blender – уроки моделирования (урок №5)

Если возникнут сомнения, то просто налейте водку в рюмку и посмотрите, как это будет выглядеть. Уверен, большой разницы, кроме, может быть, формы рюмки Вы не увидите. А чтобы форма была наиболее реалистичная, используйте фотографию настоящей рюмки. Располагаете ее в окне проекции сбоку и обводите половину, потом просто вращаете профиль, и модель готова.

Вы разобрали еще одни урок, который приблизил Вас к созданию фотореалистичных изображений 3D-графики. Прощаясь с Вам, по традиции желаю Вам успехов и терпения, в этом не самом простом деле моделировании объектов, используя Blender. Успехов Вам!

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — первая статья из цикла о визуализации в Blender.

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

Дополнительные программы для удобства

Substance Painter — программа для текстурирования 3D-моделей или создания текстур/текстурных карт для них. По ходу работы мы будем импортировать текстуры отсюда.

Node Wrangler — аддон, который содержит разнообразные инструменты для улучшения и ускорения воркфлоу, основанного на нодах (node-based workflow).

Активируется он следующим образом:

Как работать в Material Editor

После того как портировали нужную модель в Blender, находим вверху вкладку Editor Type и выбираем Shader Editor. Нас перебрасывает в меню.

Material Editor имеет 2 режима:

Здесь есть две настройки:

Surface (поверхность) — сюда можем подключить обычный background (включен по умолчанию) и поменять его цвет или же добавить HDRI текстуру (удалить нод background и добавить Environment texture через Shift+A ). Я остановился на обычном бэкграунде.

2. Редактирование объектов, с которым мы и будем сегодня работать.

Пример создания пустого материала

Важно: не забываем активировать Node Wrangler.

Выделяем базовый шейдер и нажимаем Shift+Control+T. Комбинация откроет нам меню выбора файлов. Выделяем нужные нам текстуры и подгружаем.

Если по умолчанию в названии файла текстуры есть приписка с её назначением, прога сама привязывает соответствующие файлы к параметрам.

Редактировать эти приписки (или суффиксы/тэги) можно в меню:

Если значение определилось неверно, изменить привязку можно самостоятельно, соединив мышкой output нода и input шейдера.

Кроме того, текстуру можно так же вручную перетянуть из окна в программу и прилинковать.

Настройка материала высокополигональной модели

Стоит оговориться, что речь пойдёт о модели хайполи с высокой плотностью сетки, которая призвана проиллюстрировать навык дизайнера в рамках портфолио.

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

Metallic, Transmission и Transmission Roughness мы не используем на теле вообще.

Дальнейший процесс можно разделить условно на 2 этапа: работу над материалами для тела и зубов и настройку иллициев.

Тело и зубы

Для настройки материала тела мы используем обычный PBR-материал с Metal-Rough workflow или пайплайном. Карты экспортируем из упомянутого в начале статьи Substance Painter.

Наш материал состоит из следующих нодов: Albedo или Base Color, Roughness и Normal Map. Последний используется для мелкой детализации.

Что нужно знать при работе с материалом?

Текстурные карты, которые не передают цвет материала, должны быть в линейном пространстве. Поэтому в Color Space текстур мы ставим:

sRGB — для Albedo

Non color, либо Liner — для Roughness, Normal и т.д. в зависимости от вашей сборки

Эту конструкцию мы затем подключаем к Normal в Principled BSDF. Roughness (чёрно-белая карта, не требует манипуляций с каналами) подключается в соответствующий слот шейдера, так же как и Albedo (Base Color).

Вот так выгладит готовая сборка материала:

Фиолетовое поле — это наш Normal Map. Не обращаем внимания на неприлинкованные окна.

В случае с зубами настройки всё те же. Также флипаем при необходимости зелёный канал в нормалке.

Пошаговое создание светящихся иллициев

Примеры в референсах.

Рассмотрим, как распределить свечение по всей длине иллициев, — от наибольшей интенсивности к наименьшей.

нижнего слоя — овалы внутри, дающие основное свечение на концах;

среднего слоя — так же светящиеся трубки;

верхнего слоя — внешняя оболочка иллициев.

a) Нижний слой

Настройки материала нижнего слоя.

Как настроить свечение?

b) Средний слой

Ноды этого слоя те же, что и у предыдущего. В Principled BSDF значение Roughness мы выставляем меньше, примерно в 3 раза, что даёт нам более глянцевую поверхность. Значение IOR (индекса преломления) оставляем по умолчанию. Transmission, в случае второго слоя, у нас контролируется через Color Ramp и Layer Weight.

Настройки материала среднего слоя.

Layer Weight — нод, из которого мы берём значение Френелевского отражения.

В зависимости от того, под каким углом мы смотрим на поверхность объекта, сам объект кажется нам в большей или меньшей степени прозрачным. Коротко этот эффект можно описать так: чем ближе к 90° угол между направлением взгляда и поверхностью прозрачного объекта, тем более прозрачным он кажется.

Пример: рыба из референса. Мы видим, как поверхность всё больше теряет прозрачность и обретает цвет по краям.

Color Ramp — по своей сути, аналог уровней в Photoshop, с помощью которого мы можем:

1) инвертировать цвета — по умолчанию белый цвет справа, чёрный слева; перетягивая ползунки друг на друга, обращаем цвета.

2) настроить контрастность — чем меньше расстояние между ползунками, тем она больше.

Теперь, соединив этот нод с Transmission, мы получаем следующие параметры: чем ближе к белому цвет, тем прозрачнее будет отображаться материал на рендере.

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

c) Верхний слой

Наконец, настройки внешней оболочки выглядят следующим образом:
Общий принцип остаётся тот же: Principled BSDF, к которому подсоединяем Bace Color с Color Space sRGB, и упрощённая настройка volume — Volume Absorption.

На последнем останавливаться нет смысла, затронем основные моменты настройки Principled BSDF.

Для Roughness была использована готовая текстура из Substance Painter.

Аналогично применяем готовый градиент к Transmission и миксуем его с уже описанным Layer Weight (откуда берём френель) + Color Ramp (инверт LW).

Чтобы смешать прозрачность по френелю и по градиенту, создаём нод MixRGB и выбираем вариант смешивания Multiply, линкуем их к нему (Color1 и Color2), после чего соединяем нод Multiply с Transmission.

И не забываем инвертировать зелёный канал в Normal Map при необходимости.

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

В Blender'e, кстати есть режим TexturePaint - как раз специально для рисования текстур поверх 3D-модели прямо в Blender'e. Так-что куда-то что-то импортировать потом экспортировать вообще нет смысла, только время тратить. В инете тьма видеороликов на эту тему:


Читайте также: