Blender процедурный шейдер ткани

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

Текстовый урок

Для данного урока я подготовил небольшую сцену, в которой присутствует плоскость с модификатором ткани. Не забудьте выполнить развертку плоскости перед тем, как приступать к симуляции ткани. На изображении ниже вы можете видеть настройки симуляции:

В качестве текстуры ткани будет выступать нод Wave texture. Добавьте также ноды Texture Coordinate и Mapping и выставите настройки в соответствии с изображением:

Продублируйте ноды Mapping и Wave texture и измените настройки нода Mapping: вращение по оси Z — 135° и масштаб по оси X — 1:

Теперь смешайте оба паттерна с помощью нода MixRGB (режим Subtract). В итоге мы получим текстуру похожую на ткань:

Так как мы собираемся создать еще несколько паттернов, выделите ноды Mapping, Wave и Mix и объедините их в группу (назовите ее pattern 1 ). Подключите входы Scale обоих нодов Wave к входным значениям группы:

Продублируйте только что созданную группу нодов и переименуйте ее в pattern 2 . Также создайте для нее нового пользователя нажав кнопку 2 справа от названия группы нодов:

Измените масштаб по оси X для первого нода Mapping на 1 и масштаб по оси Y на 0.01. Для первого нода Wave установите все оставшиеся параметры в 0:

Подключите нод ColorRamp и измените положения его ползунков, чтобы создать более контрастный паттерн:

Установите оба значения Scale равными 80 и на этом мы закончили со вторым паттерном:

Продублируйте вторую группу, установите значения Scale равными 40 и назовите ее pattern 3 :

Теперь займемся созданием паттерна войлока. Добавьте ноды Texture Coordinate и Mapping и измените масштабы последнего по осям X, Y и Z на 7, 10 и 10:

Установите любой цвет для ткани:

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

Работа с материалами в Blender

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

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

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

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

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

Переходим во вкладку «Edit», заходим в настройки «Preferences» и в «Add-ons» ставим галочку на соответствующей вкладке. Для удобства ищем аддон через поисковую строку.

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

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

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

Volume (объём) — здесь я добавил шейдер principled volume, который отвечает за «туман» или условную прозрачность атмосферы вокруг объекта.

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

Чтобы создать нод, нажимаем Shift-A — этот хоткей вызывает панель с вкладками настроек. Мы можем как вручную искать во вкладках интересующую нас, так и ввести название в строку «search», после чего нод появится в меню.

Чтобы создать новый материал без названия и настроек, нажимаем вкладку Material Properties и щёлкаем «+».

Здесь же нажимаем «new», и у нас появляются базовые ноды: Material Output и Principled BSDF, с помощью которых мы будем проводить изменения.

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

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

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

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

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

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

Назначить материал для модели можно, снова перейдя в 3D Viewport. Выделяем нужный объект, и пакет назначается автоматически. Если нам нужен другой, жмём крестик, а затем вкладку «new» или выбираем из уже имеющихся сохранённых.

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

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

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

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

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

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

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

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

Читайте также: Ткань для строительных работ

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

Также, в зависимости от того, в каком пайплайне мы работали в Substance Painter и какой там пресет на экспорт текстур (под OpenGL или DirectX), может потребоваться «флипнуть» зелёный канал в Normal Map.

Для этого нажимаем Shift-A, находим Separate RGB и подключаем к нему output Color. Как понятно из названия, этот нод даёт нам провести необходимую манипуляцию с одним из каналов (Red, Green, Blue). Теперь, чтобы инвертировать зелёный канал (G), добавляем нод Invert со значением Fac «1.000» и подключаем обратно через Combine RGB.

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

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

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

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

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

Наши «удочки» будут состоять из:

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

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

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

Material Output нижнего слоя состоит из Principled BSDF, который идёт в Surface объекта, и Principled Volume, подсоединённого к параметру «внутреннего объёма».

Так как геометрия объектов простая, Normal Map нам не нужен, и его значения мы оставляем «по умолчанию». Основные манипуляции будем проводить с названными выше нодами.

Первый — это Principled BSDF. Здесь мы задаём Base Color значением HSV (Hue, Saturation, Value), оставляем Roughness по умолчанию и переходим к настройке прозрачности. Так как наш объект будет скрыт под другими слоями, и основное свечение будет исходить из внутреннего объёма, ставим значение Transmission «1.000» — это даёт нам полностью прозрачный объект. А параметр Transmission Roughness позволяет выбрать, насколько матовой или глянцевой будет поверхность (чем больше значение, тем меньше глянца).

Переходим к работе с Volume. Здесь мы задаём цвет внутреннего «тумана» и его плотность, выставив значение Density на 10.000.

Красивые процедурные текстуры в Blender

Вольный перевод видео с канала lotsalote. Под видео есть ссылка на файл с текстурами от автора. Lotsalote делает красивые ролики в Blender. Всем советую полюбоваться.

В ролике lotsalote демонстрирует маленький мультик в начале. В этом уроке мы будем делать шар из этого мультика с использованием процедурных текстур.

Создаем новый файл. Жмем A (выбрать всё), потом X (удалить). Shift+A/ico Sphere — добавить сферу из треугольников. Subdivisions (подразделение) выставляем 5.

G-Z-Ctrl — перемещаем по оси Z вверх, контролируя привязку. Низ шара установился на 0,00.

Shift+A/Plane — выставляем плоскость, S — масштабируем, да побольше.

В Scene переключаемся в режим Cycles и устанавливаем Device/GPU Computer.

Примечание — в общих настройках Edit/Preferencec в Sistem/Cycles Render Devices отмечаем CUDA с галочкой на Geforce GTX 950M(Display). Сохраняем настройки.

Создаем новую плоскость, поднимаем её над шаром. Идем в материалы и создаем новый материал Material — New, называем Light top, меняем Surface (поверхность) c Principled BSDF (основной фактор поверхности ((или как то так))))) на Emission (излучение).

Мы сделали свечение, но сейчас мы его не видим. Нужно переключиться на Viewport Shading (область просмотра с затенением). Не забудьте CYCLES — CUDA — GEFORCE — как на картинке выше. Подумать только, мой ноут при этик настройках перестал надрываться и греться при переходе в Cykles. такой простой life huck.

В World Settings (настройки окружения) его Color (цвет) делаем черным.

Масштабируем светящуюся плоскость по оси X для добавления света и смягчения теней.

Сейчас важный момент для новичков. Возможно, для кого то будут в новинку ноды и процедурные текстуры. По этому этой части урока лучше уделить больше внимания (вольный перевод TF).

Нам нужно попасть в поле с этими нодами. Для разделения экрана идем в View (вид)/ Area(площадь)/Vertical Split (вертикальное разделение) и разделяем на нужные нам области .

В Editor Type ( тип редактора) устанавливаем Shader editor (редактор текстур).

В окне Shader Editor мы уже видим два нода. (Прим. TF — если ничего не видите, то в окне Layout (макет) выберите объект — верхнюю плоскость с новой текстурой)))). Итак — основной нод Material Output (выходящий материал) имеет три параметра: Surface — поверхность, Volume — объем, Displacement — смещение. Нод Emission (излучение) имеет параметры Color — цвет и Strength — сила.

Нод Emission соединен с нодом Material Output в параметре Surface, это и заставляет поверхность объекта светится. Можете поэкспериментировать и разделить ноды, сместив связь — посмотрите что получиться. Так же, можно поиграться цветом и силой света в ноде Emission.

Еще один life huck для фото реалистичного рендера. Shift+A (добавить) — Converter (конвертер) — Blackbody (черное тело))) — этот нод имеет только один параметр — температура цвета. Поэкспериментируйте с нодом. Для нашего нового материала будут хороши такие параметры Blackbody/Temper: 3200, Emission/Strength: 5.

Наконец, мы можем создать материю шару. Если выбрать шар, поле Shader Editor (редактор текстур) будет пустым. У нас нет материала шара. Идем в Material (материалы), щелкаем на New (новый), называем Ball (шар). В поле Shader Editor (редактор текстур) появляются два нода — уже известный нам Material Output и Principled BSDF (основной фактор поверхности). Удаляем Х — Principled BSDF (основной фактор поверхности) (примечание переводчика: автор ролика недоумевает для чего сделана такая новая фича в 2.8)

Shift+A (добавить)/Shader(текстура)/Glossy BSDF (глянцевый) — добавили нод с глянцем, соединяем с Material Output, понятное дело, в Surface (поверхность). Параметр Routhness (шероховатость) ставим на 0. Сейчас на шаре стали видны грани. Выделяем шар, жмем правой кнопкой мыши и выделяем Shader Smooth (сгладить текстуру), любуемся на блестящий золотой шарик))))

Читайте также: Как обшить ткань камнями

Теперь посмотрим, что интересного мы можем сделать. Жмем Shift+A/Texture (текстуры) и любуемся большим набором. и выбираем нашу любимую Voronoi Texture, конечно. куда бы её присоединить. присоединяем к Glossy-Color и наблюдаем пятнышки на шаре, можем присоединить к Routhness и полюбоваться чередованием гладкой и шероховатой поверхности. А можно присоединить прямо к Material Output в Displacemet. но, что то не то. мы не можем контролировать глубину текстуры. Ставим нод, который за это в ответе Shif+A/Vector/Displacement . ну кто бы мог подумать. )))

Color вороного соединяем с Hight (высота) нода смещения, ну а Dispacement, понятно, в Displecement. Теперь, изменяя масштаб в ноде Displacment мы можем контролировать глубину текстуры. В диапазоне 0,02-0,05 симпотно получается.

У нодов текстур есть замечательный параметр — Vector — это ваш лучший друг. Он поможет управлять текстурой.

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

Для создания шара для ролика, автор использовал Noise Texture (шумную текстуру) с параметрами, указанными на картинке ниже. К ноду Glossy (глянец) добавили нод Fresnel (Френель) через нод Color Ramp (распределение цвета).

Прим. TF: Noise (шум) — в фото и рендеринге это хаотичный набор видимых точек разной светлости, например — тень от шара на скриншоте выше.

По роликом с канала lotsalote находится ссылка на файл с текстурами автора.

Работа с материалами в Blender

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

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

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

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

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

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

Переходим во вкладку «Edit», заходим в настройки «Preferences» и в «Add-ons» ставим галочку на соответствующей вкладке. Для удобства ищем аддон через поисковую строку.

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

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

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

1.Редактирование «мира» сцены.

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

Volume (объём) — здесь я добавил шейдер principled volume, который отвечает за «туман» или условную прозрачность атмосферы вокруг объекта.

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

Чтобы создать нод, нажимаем Shift-A — этот хоткей вызывает панель с вкладками настроек. Мы можем как вручную искать во вкладках интересующую нас, так и ввести название в строку «search», после чего нод появится в меню.

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

Чтобы создать новый материал без названия и настроек, нажимаем вкладку Material Properties и щёлкаем «+».

Здесь же нажимаем «new», и у нас появляются базовые ноды: Material Output и Principled BSDF, с помощью которых мы будем проводить изменения.

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

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

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

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

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

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

Назначить материал для модели можно, снова перейдя в 3D Viewport. Выделяем нужный объект, и пакет назначается автоматически. Если нам нужен другой, жмём крестик, а затем вкладку «new» или выбираем из уже имеющихся сохранённых.

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

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

В связи с этим, геометрия позволяет нам не использовать отдельную карту под 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 и т.д. в зависимости от вашей сборки

Читайте также: Джинсовая ткань это какая ткань

Также, в зависимости от того, в каком пайплайне мы работали в Substance Painter и какой там пресет на экспорт текстур (под OpenGL или DirectX), может потребоваться «флипнуть» зелёный канал в Normal Map.

Для этого нажимаем Shift-A, находим Separate RGB и подключаем к нему output Color. Как понятно из названия, этот нод даёт нам провести необходимую манипуляцию с одним из каналов (Red, Green, Blue). Теперь, чтобы инвертировать зелёный канал (G), добавляем нод Invert со значением Fac «1.000» и подключаем обратно через Combine RGB.

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

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

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

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

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

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

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

Наши «удочки» будут состоять из:

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

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

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

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

Material Output нижнего слоя состоит из Principled BSDF, который идёт в Surface объекта, и Principled Volume, подсоединённого к параметру «внутреннего объёма».

Так как геометрия объектов простая, Normal Map нам не нужен, и его значения мы оставляем «по умолчанию». Основные манипуляции будем проводить с названными выше нодами.

Первый — это Principled BSDF. Здесь мы задаём Base Color значением HSV (Hue, Saturation, Value), оставляем Roughness по умолчанию и переходим к настройке прозрачности. Так как наш объект будет скрыт под другими слоями, и основное свечение будет исходить из внутреннего объёма, ставим значение Transmission «1.000» — это даёт нам полностью прозрачный объект. А параметр Transmission Roughness позволяет выбрать, насколько матовой или глянцевой будет поверхность (чем больше значение, тем меньше глянца).

Переходим к работе с Volume. Здесь мы задаём цвет внутреннего «тумана» и его плотность, выставив значение Density на 10.000.

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

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

На скриншоте выше мы видим, что Emission поверхности — чёрный. Это значит, что свечение будет исходить не от неё, а от Volume. Для этого мы и задавали максимальную прозрачность оболочки. Так как этот слой будет ещё под двумя, задаём большое значение в параметре Emission Strength («сила излучения») — «1700.000».

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

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

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

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

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

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

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

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

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

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

От настройки поверхности переходим к свечению. Оно берётся из нода Principled Volume, который мы также подключаем к Material Output (Volume). Цвет тумана — красный, испускаемого света — оранжевый. Выбираем значение плотности — «1.000», и Emission — «400.000».

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

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 при необходимости.

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

Если хочешь научиться создавать стилизованных 3D-персонажей — записывайся на курс STYL. Стартуем 1 октября — если записаться сейчас, можно успеть получить скидку.
Все подробности по ссылке: https://www.school-xyz.com/styl

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


  • Свежие записи
    • Балкон в многоквартирном доме: является ли он общедомовым имуществом?
    • Штраф за остекление балкона в 2022: что это и как избежать наказания
    • Штраф за мусор с балкона: сколько заплатить за выбрасывание окурков
    • Оформление балконного окна: выбираем шторы из органзы
    • Как выбрать идеальные шторы для маленькой кухни с балконом
Sunny Lady