Текстурирование — создание смарт-материала в 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. При необходимости вы сможете удалить его оттуда, кликнув правой кнопкой мыши.
Думаю, на этом можно закончить. Не забывайте, что для уникальных и интересных текстур никогда не достаточно накинуть готовые смарт материалы, это лишь пресеты для экономии времени.