Текстурирование — создание смарт-материала в Substance Painter

В этом текстовом уроке я расскажу о создании smart (смарт) материала в Substance Painter. Урок предназначен для начинающих и тех, кто уже освоился, но всё ещё нуждается в практике, в частности в работе со слоями, масками, генераторами и фильтрами.

Работать буду в Substance Painter версии 6.2.2 — если ваша версия одна из более ранних, то у вас может недоставать каких то файлов или отличатся интерфейс.

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

Что такое смарт-материал

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

Подготовка

Понадобится модель, на которой мы будем просматривать материал, хорошо подойдет сфера из проекта PreviewSphere, на ней есть углы и ровные поверхности. Чтобы открыть папку с примером, нажмите меню file в левом углу и выберите Open Sample…

Если у вас отсутствует такой проект, добавьте свою модель или бесплатно скачайте эту сферу на substance share.

В проекте уже всё настроено, нужно только удалить текущие слои, так как мы будем делать материал с нуля. Ещё я отключил пост-эффекты за ненадобностью, но если вам нравятся блики металла, то оставьте.

Проверьте наличие текстур в окне Texture Set Settings, а при создании нового проекта не забывайте запечь их на свою модель. Карты World Space Normal, Position, Curvature, Ambient Occlusion необходимы для работы генераторов и фильтров — без них смарт-материалы не смогут выдавать желаемый результат.

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

Создание материала

Начнём с металла — создайте папку с заливочным слоем и настройте его. Мои параметры будут такими: Metallic чуть ниже максимального — 0,9; Roughness ближе к глянцу — 0,25; Base Color — серый.

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

В текущем виде металл выглядит слишком идеальным, добавим шероховатости при помощи фильтра.

Что такое фильтры

Это различные эффекты для преобразования текстуры, цвета и масок, они добавляют рельеф, градиенты, сглаживают или наоборот повышают четкость краев. Фильтры, как и материалы с генераторами создаются в программе Substance Designer.

Нажмите на слой правой кнопкой мыши и в выпадающем меню, внизу списка вы найдете Add filter, появится пустая ячейка. Фильтр можно выбрать в окне Shelf, вкладка Filters, затем перенести его на слой или нажать на ячейку, чтобы открыть окно с выбором.

Я выбрал MatFinish Grainy, он добавляет шум в каналах Roughness и Normal, можете выбрать тот же или обратить внимание на MatFinish Grinded, он оставляет что-то вроде царапин. Остаётся только настроить его, уменьшить размер текстуры через параметр Scale и интенсивность рельефа (Grain intensity), чтобы металл не выглядел слишком «шершавым».

Смешивание слоёв

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

В Substance Painter, как и в Photoshop, можно смешивать слои разными методами, но не весь слой, а отдельно по каналам.

Ранее я писал, что фильтр MatFinish Grainy добавляет шум в канале Normal. В окне Layers, над слоями переключаемся на Normal и для краски выбираем другой метод смешивания — подойдёт Replace (Заменять). Теперь рельеф от фильтра будет проявляется только на не покрытом металле.

Маски и генераторы

Создадим царапины. Для этого понадобится маска для слоя краски и генератор. Правой кнопкой мыши по слою и в меню выбирайте Add black mask или белую — не имеет значения, так как её целиком окрасит генератор.

Затем правой кнопкой мыши по окошку маски и выбираем Add Generator, нажмите на пустую ячейку и в выпадающем меню выберите Metal Edge Wear

По какой-то причине генераторов нет в окне Shelf, но есть Smart Masks — те же генераторы, но с предустановками. Некоторые с дополнительными текстурами и их нужно применять сразу к маске, без создания ячейки генератора.

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

Что такое генератор

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

Настройка генератора

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

  • Invert— инвертирование маски. Сейчас краска нанесена там, где должны быть царапины, переключаем на true. Можно было поменять местами слои — но это не так важно.
  • Wear Level и Сontrast — ползунки, отвечающие за общую интенсивность маски и ее контраст.
  • Use Triplanar и Triplanar Blending contrast — трипланарное проецирование, при включении которого текстура проецируется на геометрию по осям XYZ, а не по UV как бывает обычно. Подробнее о нём и для чего это нужно я писал в прошлой статье.
  • Grunge Amount и Scale — параметры текстуры, её интенсивность и размер.
  • Use Custom Grunge — вы можете заменить текстуру маски на другую, из библиотеки Substance или свою. Для этого внизу будет пустая ячейка Custom grunge.
  • Edge Smoothness — сглаживание маски на углах.
  • Ambient Occlusion Masking — карта теней. Генератор использует эту текстуру как ещё одну маску, чтобы убрать износ в углублениях на геометрии.
  • Curvature Weight — уровень влияния маски Curvature. Напомню, что эта текстура обозначает углы на геометрии.

Попробуйте покрутить все параметры, чтобы посмотреть разницу и на что они влияют. Можете повторить значения, которые выставил я, или настроить по-своему.

Вернемся к слою краски — надо его настроить, сделать более глянцевым (параметр Roughness) и добавить неровности между слоями. Поднимите параметр height (высота) на 0,01 — это добавит детализации.

Грязь и пыль

Это будет третий, заливочный слой поверх предыдущих. Зададим тёмный цвет, высокое значение шероховатости (Roughness) и Metallic на ноль. Это будет тонкий слой пыли, поэтому каналы height и normal не нужны, можно отключить за ненадобностью или не трогать.

Добавляем маску и ячейку генератора — в этот раз выбираем генератор с названием Dirt. Этот генератор почти идентичен предыдущему, разница в том, что он преимущественно использует карту Ambient Occlusion (карта теней) и добавляет маску в тёмные уголки геометрии, как раз туда, где и скапливается грязь.

Сейчас грязи слишком много и не хватает хаотичности. Чтобы это исправить настроек самого генератора недостаточно, поэтому добавим в маску ещё одну текстуру.

Нажмите правой кнопкой мыши по маске и в этот раз выберете Add Fill. В эту ячейку поместим одну из процедурных текстур — вкладка Procedurals в окне Shelf. Я подобрал карту Grunge Leak Small; она создаёт подтеки. Чтобы найти её воспользуйтесь поиском в том же окне.

Чтобы увидеть текстуру маски на геометрии, зажмите клавишу ALT и левой кнопкой мыши кликнете на маску слоя или переключитесь в углу 3D-окна. Чтобы вернутся в режим отображения материала нажмите «M» (англ.).

Сейчас подтёки идут в разных направлениях, чтобы это исправить в окне Properties измените метод проецирования текстуры, UV planar на Tri-planar — что это такое, я писал выше. После переключения должно появиться гизмо (стрелочки XYZ) для перемещения текстуры. Остальные параметры я оставлю стандартными.

Маску генератора и выбранной текстуры смешаем так, чтобы подтёки удаляли маску от генератора. В окне Layers для маски с заливкой смените метод с Normal на Subtract (вычитать).

Теперь грязи стало меньше и появились подтёки, словно предмет слегка очистился под дождем.

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

Сделайте ещё один слой между краской и грязью, отключите в нём все каналы, кроме цвета, поставьте белый. Далее, как обычно, добавьте маску и ячейку генератора. Тут нужен градиент, и подойдёт генератор с названием Position — для своей работы он использует одноимённую текстуру, где отмечено, в каком положении находится модель, где у неё верх, а где низ.

Такой градиент меня не устраивает, я хочу получить более плавный. Настройки самого генератора довольно скудные, поэтому я добавлю уровни (Levels) — правая кнопка мыши по маске и Add Levels.

Что такое уровни (Levels)

При помощи этой функции мы можем регулировать баланс цвета. Она не создаёт новую текстуру, а редактирует созданную, поэтому её положение должно быть над генератором.

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

Теперь отрегулируем прозрачность белого слоя так, чтобы красный цвет преобладал больше. В окне Layers выберете канал Base Color для слоя с белым цветом и выставите значение Opacity на 10 единиц (цифры под режимом смешивания), чтобы белый был едва заметен.

Сохраняем результат

Чтобы сохранить материал, нажмите правой кнопкой мыши по папке, в которой находятся все слои, в контекстном меню выберете create a smart material. Сохранённый материал вы найдёте в библиотеке, окно Shelf, вкладка Smart materials. При необходимости вы сможете удалить его оттуда, кликнув правой кнопкой мыши.

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

0
24 комментария
Написать комментарий...
Vans3001

Хорошая статья для введения в эту пучину слоев,якорей,генераторов.)

Ответить
Развернуть ветку
Руслан Феликин
Автор

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

Ответить
Развернуть ветку
Hy6oMeT .

Та на этом же шарике стандартном отбить альфой что-то на канале height-а и потом пересчитать все эти царапки и сколы.
Будет норм.

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

Ответить
Развернуть ветку
Vans3001

Для краски,грунта под ней и проявлением ржавчины-вариантов множество;)

Ответить
Развернуть ветку
Victor Victorson

Спасибо, урок повторил, все получилось) Иногда вот в таком текстовом виде удобнее чем видео смотреть. Вот только про запекание не вполне понял (тот урок с фонарем я тоже делал). Я изначально думал что запекание нужно для переноса деталей с хайполи на лоуполи то-есть нормали. А тут получается генерируются AO и Curvature, и я понимаю что на них потом вся генерация потертостей и строится. А вот откуда они берутся? В том уроке от сабстансов они запекали их с другой модели вроде, вот зачем это?

Ответить
Развернуть ветку
Руслан Феликин
Автор

Информация о тенях (АО), углах (Curvature) создается на основе лоу поли, в случаи если нет хай поли или готовой КН. Просто без хай поли на этих картах не будет деталей.

Ответить
Развернуть ветку
Victor Victorson

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

Ответить
Развернуть ветку
принц снежных эльфов
смарт интервалы

Это как процедурные текстуры в блендере?

Ответить
Развернуть ветку
Руслан Феликин
Автор

Нум, это попроще чем процедурность

Ответить
Развернуть ветку
принц снежных эльфов

их суть же в том что это материалы которые генерируются по заданным свойствам?

Ответить
Развернуть ветку
Руслан Феликин
Автор

Ну если сравнивать именно так, то да, почти тоже самое.

Ответить
Развернуть ветку
принц снежных эльфов

спасибо

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Эльдар Галиулин

Продолжайте, пжлста

Ответить
Развернуть ветку
Shugel

Отличная статья, спасибо большое!

Ответить
Развернуть ветку
Блестящий меч

Комментарий недоступен

Ответить
Развернуть ветку
Руслан Феликин
Автор

Я уже привык к substance. Пока не было повода для изучения других программ.

Ответить
Развернуть ветку
Клуб фанатов Billie Eilish
Metallic чуть ниже максимального — 0,9;

Разве метал не должен быть 0 или 1.  Не бывает же метала 0.9.

Ответить
Развернуть ветку
Vitaly

почему? почему вы так не думаете о других параметрах?
почему шероховатость может быть не 0 или 1 а металлик нет? либо шероховатый либо нет. 
почему излучение быть не 0 или 1 а металлик нет? либо излучает либо нет.

Ответить
Развернуть ветку
Vольтрон

Зарегистрировался на дтф, что бы написать - спасибо! Жду продолжения...

Ответить
Развернуть ветку
HAXall

Зарегистрировался . Чтобы сказать спасибо тебе!!

Ответить
Развернуть ветку
Руслан Феликин
Автор

Ну тогда можешь и подписаться заодно. Я буду и дальше писать о 3D

Ответить
Развернуть ветку
Turbo

Есть небольшой косяк в уроке. 
Слой, который выбеливает краску, так же выбеливает и металл, на который влиять не должен. 

Ответить
Развернуть ветку
Руслан Феликин
Автор

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

Ответить
Развернуть ветку
Читать все 24 комментария
null