5 лайфхаков с использованием генераторов в Substance Painter
Мы уже успели поговорить об основных ошибках при текстурировании, про разнообразие и контрасты, про износ и точки интереса. В этой статье разберем несколько подходов, которые упрощают создание текстур в Substance Painter.
Curvature в канале Base Color
На некоторых объектах, в качестве финального штриха, можно добавлять запеченную карту Curvature в цветовой канал верхнего Fill layer. Режим смешивания в таком случае нужно выставить «Overlay».
Курватура в таком режиме высветлит углы и грани, которые запеклись на ней белым цветом — это добавит объема.
Если нужно подредактировать яркость или тоновый баланс карты — используй Levels или крути прозрачность слоя.
AO в канале Base Color
Также можно добавить карту АО в цветовой канал для создания объемных затенений на объекте. Тогда режим смешивания используй «Multiply», а для корректировки — все те же изменения прозрачности или Levels.
Внимание! Описанные способы могут нарушить работу PBR: по его правилам, в карте Albedo не должно быть информации о запеченном свете. Поэтому пользуйся ими аккуратно и осознанно.
Position generator
Генератор position можно использовать для создания загрязненности/запыленности на частях объекта, которые стоят на земле. Это может быть какой-то забор, столб, ящик, или даже автомобиль. Генератор использует Position map и World Space Normal, чтобы определить, где у модели низ, а где — верх. И если на этих картах остались какие-то артефакты — они проявятся.
Создаем Fill layer с грязью/пылью/ржавчиной, накладываем маску и добавляем в неё ячейку Generators. В списке generators выбираем «Position».
Дальше крутим контраст/баланс/размытие, настраиваем нужную интенсивность.
В конце можно добавить несколько гранжей с помощью заливочного слоя в режиме multiply внутри маски, чтобы разнообразить монотонный градиент.
Использование гранжей дает творческую свободу. Можно добавить потеки на верхней части шкафа или хлопья ржавчины на нижней части автомобиля. Все, на что фантазии хватит. Художник из Naughty Dog, работавший над The Last of Us 2, в своем ArtStation[a] показал решение проблемы с генеративным загрязнением машин. Для этого они использовали специальный шейдер, работающий на Position и World Space Normal картах. Конечно, он устроен сложнее, чем в Substance Painter, но принцип работы тот же.
Curvature generator
Помимо добавления Curvature map напрямую в цвет объекта, можно использовать генератор для создания маски на углах. Это отлично работает с деревянными и кожаными объектами, если нужно высветлить стертые грани. Создание и рандомизация маски выглядят следующим образом:
Сначала в маску добавляем генератор курватуры и редактируем в нем контрастность/размытие/баланс:
В генераторе можно настроить контрастность линий и разбить их гранж картой, но если тебе нужно сделать линии шире — используй хитрость. Добавляй слой Blur, размывай немного маску и добавляй Levels поверх. Levels в комбинации с Blur позволяет расширять/сужать пятна и линии.
В конце добавляем заливочный слой в маску с настроенным Multiply смешиванием.
Light generator
Ещё один достойный внимания генератор — Light generator. Он использует Position и World Space Normal maps, чтобы симулировать освещение. Этим инструментом можно создавать направленную запыленность. К примеру, если у вас есть воздухозаборник и нужно прорисовать скопившуюся пыль на открытых участках — Light generator незаменим. Он также удобен для создания запыленности на тканях со множеством складок.
В работе со шлемом он не применялся, но все же рассмотрим принцип использования.
Назначаем его в маску, настраиваем с помощью двух ползунков «Horizontal Angle» и «Vertical Angle» направленность света.
Настраиваем контрастность и интенсивность с помощью стандартных ползунков или дополнительных слоев с Levels и Blur.
В конце, как обычно, можно добавить гранж-карту для разнообразия. Готово!
Мы описали основные подходы чтобы показать тебе, что генераторы не такие страшные и непонятные, какими кажутся на первый взгляд. Существует еще много хитростей, которые можно использовать для решения специфичных задач. Мы расскажем о них в будущем. Stay tuned. Хочешь получить бесплатный урок курса «3D PRO. Game Environment Pipelines»? Оставляй заявку: https://render.ru/ru/course/19296
Шлем из примера на ArtStation: https://www.artstation.com/artwork/OoGwGv
734 0 850 14
Мне кажется или в разделе «AO в канале Base Color» иллюстрация должна быть другой, а то сейчас используется первая иллюстрация статьи.
Как вставить изображение в маску сабстенс пейнтер
Навигация по разделам:

Как добавить реалистичности PBR материалу с помощью фото-текстур
Для создания правдоподобных, реалистичных текстур существует множество инструментов и подходов — от процедурных материалов и генераторов до фотограмметрии.
В этой статье мы поговорим об использовании фото-текстур. Разберем, зачем они нужны, когда их лучше применять и какие возможности они открывают.
Фото-текстуры — это текстуры, которые создаются на основе реальных фотографий. Полностью создать материал таким образом будет сложно, зато этот способ хорошо подходит для добавления отдельных интересных элементов. Например, ржавчины, масляных подтеков или сколов краски.
Разберем пайплайн работы на примере простого плейна. Предположим, что это задняя стенка общедомового мусорного бака.
Приступим: создаем и экспортируем плейн в Substance Painter, делаем базовый материал для него.
Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 2. Маски и текстуры
Продолжаем серию уроков о том, как стать художником по поверхностям.
Hello there! Моё имя Денис Кузнецов. Я — программист.
- Часть 1. Пиксель. Здесь.
- Часть 2. Маски и текстуры. Вы ее читаете.
- Часть 3. PBR и материалы. Здесь.
- Часть 4. Модели, нормали и развертка. Здесь.
- Часть 5. Система материалов.Здесь.
- Часть 6. Погружение в систему материалов. Здесь.
Важно. Я не буду рассматривать в этой серии статей о том, как должна быть настроена гамма, какой должен быть оттенок под камушком у того-то листочка. Это не курс о том, как нарисовать красиво. Это курс о том, как это все работает глубоко под капотом с точки зрения ПО и математики. Прочитав эти статьи вы не станете супер-художником 120-го уровня, но теперь вы сможете работать в материалах, программах без каких-либо сложностей, будете понимать, как собрать очень сложный материал в UE4 за несколько минут.
Итак, котятки, погнали! =)
Маски
В прошлой части мы рассмотрели принципы работы каналов и нашу первую маску, которую я создал — маску прозрачности.
Маска прозрачности в примере с котиком была создана с помощью отдельного канала под названием «альфа-канал». Этот канал также имел размерность 8 бит на пиксель.
Каждый пиксель маски может иметь значение от 0 до 255 (или до 1), где 0 — это полностью прозрачный пиксель, а 255 (или 1) — полностью не прозрачный пиксель.
А вот если посмотреть на альфа-канал, как на обычный канал, то станет понятно, что он ничем не отличается от любого другого канала RGB. Альфа-канал — это всё те же значения, у которых есть такая же интенсивность от 0 до 255 (до 1). Это всё тот же градиент серого. И если бы мы взяли любой другой канал, скопировали бы его и вставили в альфа-канал, то получили бы интересный эффект.
Если обратите внимание на альфа-канал в списках справа, то там стоит в градациях серого все тот же котик =) Кот
Маска накладывается на всё изображение, но там, где интенсивность пикселей максимально яркая (близкая к 1 или 255), там цвет маски наименьший, а где интенсивность максимально низкая (ближе к 0), то там маска наоборот очень ярко выделяется красным цветом.
И теперь, если такое изображение экспортировать и открыть в любой программе для просмотра изображений, то получится такая картинка Кот
Большая часть пикселей в этой картинке имеет полу-прозрачность согласно интенсивности, указанной в альфа-канале. Но если маска прозрачности такая же, как и другие каналы, тогда следует вопрос — обязательно ли её использовать в альфа-канале?
На самом деле, не обязательно. Альфа-канал необходим, чтобы изображение могло сохранять данные о цвете и иметь при этом данные о прозрачности. То есть, получается, что в изображении 1 пиксель имеет обязательных 3 канала, а 4-й канал является дополнительным и не обязательным.
Итого, в нашем изображении не 32 бита цвета, а всего 24 бита цвета (8 бит * 3 канала) + 8 бит прозрачности. Причём, мы можем не включать канал прозрачности в изображение, и тогда размер файла будет на 1/4 меньше.
Что такое маска?
Для начала нам надо расписать всё то, что мы узнали.
Изображение — это набор пикселей. Картинки в интернете, у вас в папке с фотографиями пор. тативных кансолей. Тут вроде все легко.
Пиксель изображения — это одна точка в изображении, которая состоит из нескольких данных. Если мы говорим об изображении, то пиксель состоит обычно из 3-4 каналов. 3 канала на цвета (RGB) и 4-ый канал на прозрачность, если он есть в изображении (может и не быть).
Каналы — это то параметры одного цвета в пикселе. А как мы помним, пиксель состоит из трех цветов — RGB. Тут вроде тоже все легко.
Когда мы говорим о сложных программах (например, Photoshop), в которых мы рисуем текстуры или просто картинки, то мы обязательно сталкиваемся со слоями и результатом изображения (конечным результатом).
Слои — это изображения, которые накладываются друг на друга и перекрывают собой все те изображения, которые были ниже по иерархии расположения. Например, когда иконка в дизайне UI будет отдельным слоем, который лежит над слоем общего окна.
Результат изображения — это сумма всех слоев, где у каждого слоя проверяется его расположение над другими слоями, а у каждого пикселя этого слоя проверяется его цвет и альфа канал для прозрачности. Таким образом, смешав все пиксели всех слоев, мы получаем конечный результат изображения.
Так, например, у нас может быть 2 слоя — на одном слое красный круг, а на втором слое только видимый текст, а все пиксели вне текста полностью прозрачные. И результатом этих слоев будет текст на красном круге.
Если мы возьмем один слой изображения и наложим на другой (например, полностью залитый зеленым цветом слой сверху на синий), то на конечном результате изображения мы будем видеть зеленую картинку. А если мы хотим получить половину зеленого изображения, а вторую половину — синего, а еще немного смешенного цветов? И так, чтобы оба слоя нам не пришлось портить и обрезать?
Слева конечный результат изображения — зеленый квадрат, даже не смотря на то, что есть синий цвет. Справа слои, где слой с зеленой заливкой выше, чем слой с синей заливкой.
На изображении выше видно, что Слой 1 выше по иерархии, чем Слой 0, из-за этого первый слой перекрывает нулевой и полностью виден, а синий слой полностью не виден. Чтобы нам не портить зеленый слой, но при этом показать синий слой, мы можем воспользоваться масками.
Маска — это изображение, которое состоит из 1-го канала (является черно-белой с градациями серого) и нужна, чтобы по ней можно было определять, какой пиксель слоя будет прозрачным, полупрозрачным или четко видимым без дополнительных примесей цвета из другого слоя.
Давайте к Слою 1 добавим маску прозрачности.
Из прозрачности =)
Теперь, когда мы ее создали, у нас к слою добавился еще один квадратик-изображение белого цвета:
Созданная нами маска.
Это и есть наша маска. Сейчас она белая, что значит — все ее пиксели равны 1. Конечным результатом все еще является полностью зеленый квадрат.
Если мы выделим этот квадратик (маску), переключимся в режим рисования кисти и что-нибудь нарисуем черным цветом, то в этом месте зеленый слой станет прозрачным, и проявится наконец-то синий слой.
Да, это новые правки в статье, а вы не знали? =)
Так выглядит сама маска.
Как видите, на том месте, где пиксели у маски стали равны 0 (черный цвет) — на конечном результате стал отображаться нижний слой.
Запомните и осознайте, маска всегда смешивает только 2 слоя. Тот, к которому маска прикреплена, и тот, который под ним. Сложности появляются тогда, когда нам нужно смешать 3 слоя и более. В этом случае мы всегда смешиваем более верхний слой с конечным результатом нижних слоев.
Итак. Маска — это обычно черно-белое изображение, которое использует 1 канал данных с диапазоном от 0 до 1. Черно-белое оно исключительно потому, что так удобно нам с вами его воспринимать. Но что более важно, так это понять то, что маска — это просто набор данных о пикселях, в которых не 3, а 1 канал.
Посмотрите на эту маску:
Как вы думаете, что будет, если мы используем эту маску для наших двух слоев — зеленого и синего? Как будет распределяться тогда цвет?
Как видите, зеленый цвет виден ровно там, где маска белая, и не виден там, где маска черная. Представьте, что зеленое — это красное, а синее — это черное? Пятна крови на черном полу? =)
Как вставить изображение в маску? Скопируйте изображение в буфер обмена (ctrl+C). Выделите маску в слоях и перейдите в «каналы». Там выделите появившийся канал «Слой маски» и вставьте из буфера изображение (CTRL+V). Ну а дальше можно растянуть или сжать картинку, нажав CTRL+T.
Маска в текстурировании — это изображение, которое состоит из 1-го канала и необходимо для смешения двух слоев. В нашем примере, слоев с зеленым и синим цветами. Маска в текстурировании используется для решения нескольких задач:
- Определение степени прозрачности одного слоя над другим.
- Определение интенсивности чего-либо. Например, это может карта высот, где самые белые пиксели — это горы, а черные — это впадины. Или второй пример — глубина кадра — где светлый — это самый отдаленный объект.
На самом деле, делить на две задачи работу масок не обязательно — и там и там используется степень интенсивности.
- В первом случае — это интенсивность видимости верхнего слоя.
- Во втором случае — интенсивность выдавливания вертексов (для определения гор), или определения глубины.
Маски в Substance Painter.
Сейчас мы рассмотрим наглядно принцип работы масок в Substance Painter и попробуем напялить стильную шляпу Коту.
Как вы заметите, принцип работы со слоями будет такой же, как в Photoshop’е — чем выше слой, тем он главнее, и если нам надо где-то отобразить нижний слой, нам придется подключать маски или рисовать их вручную.
Хорошее отличие Substance Painter от Photoshop’а — это крайне удобная система работы с масками. В SP она более удобная, наглядная и гибкая. Маски можно даже переносить в отдельные слои и выгружать в отдельные каналы.
Для этого мы создадим новый проект, укажем и добавим наши фотографии шляпки и кота в программу.
Заметка: Substance Painter не позволит создать проект без 3D-модели, поэтому я создал квадратный plane в Autodesk Maya. Создание моделей находится за рамками наших туторов, поэтому эту информацию вам нужно найти самостоятельно.
Так же мы не будем рассматривать детально интерфейс Substance Painter, чтобы не затягивать.
Если вы работаете с Substance Painter впервые, то, если ничего лишнего не нажимать, все окна должны отображаться корректно, и найти нужные параметры будет не сложно.
Далее нам необходимо создать 2 слоя заливки:
Прежде, чем мы продолжим дальше, мы должны уяснить то, что всё в этой программе (да и в других) построено на каналах, масках и слоях.
Разница между Photoshop’ом и Substance Painter в том, что слои в SP имеют куда больший потенциал и хранят в себе куда больше данных, нежели Photoshop. Все эти данные нужны для работы с PBR (системой текстурирования, которая приближена к реалистичному отображению поверхностей), и мы обязательно будем разбирать их в этой части, но ниже. А пока представьте, что слои — это просто изображения.
Слой заливки в Substance Painter — это набор параметров, который будет храниться в этом слое.
Слои в SPсостоят из каналов, которые мы можем добавлять, удалять и настраивать. Если в Photoshop’е мы не могли регулировать у каждого слоя каналы отдельно, то переходя в SP у нас появляется такая возможность, так как каналы — это набор данных, который можно подключать и отключать у каждого слоя. А так же это возможность придать каждому слою дополнительные свойства.
Параметры в Substance Painter— это по сути каналы и даже группы каналов, из которых они формируются. Например, есть параметр BaseColor (Color), который формируется из 3 каналов (RGB). Или карта нормалей, которой так же для корректного отображения так же требуется 3 канала.
Настройка доступных каналов в каждом слое. Красным выделены каналы, которые нам сейчас не нужны, и я их отключил.
По умолчанию слой состоит из:
- 3 основных канала, которые выделяются для построения цвета. Эти три канала объединены в один параметр «Color».
- 3 дополнительных канала, каждый из которых отвечает за какие-то визуальные эффекты. Это Height (отвечает за ощущение высоты на текстуре). Это Metal (отвечает за ощущение металла в поверхности). Это Rough (отвечает за ощущение шероховатости поверхности).
- 3 канала для работы с картой нормалей (Normal map).
Нас интересует только первые 3 канала — параметр Color. Остальные параметры отвечают за PBR текстурирование, и мы к ним придем в следующей части. Поэтому все ненужные каналы можно отключить, как это сделано у меня на скриншоте выше.
Теперь нам необходимо распределить наши картинки в слои и настроить их корректное отображение. Для этого выбираем слой, находим картинку, импортированию в папку Project (в панели Shelf) и перетаскиваем картинку в параметр Base Color. Интересно то, что этому параметру можно и задать цвет, чтобы весь слой был какого-то одного конкретного цвета.
Повторяем это действие со вторым слоем и шляпой.
Важно. Слой со шляпой должен находиться выше по иерархии, чем котик, так как мы хотим, чтобы шляпа была НА коте, а не ПОД ним.
Помните, что контролировать видимость слоев можно с помощью кнопки в виде глаза слева от слоя.
Когда мы добавили котика, то его картинка растянулась, и он стал широким (не как Фил). Так как SP рассчитан на создание текстур (не на надевание шляп котикам, как мы хотели бы), а текстуры полагается делать квадратными, то изображение котика будет слегка растянутым вширь, так как фотография его является прямоугольной по вертикали, и Substance Painter ее растянул до квадратной формы.
В связи с этим нам необходимо изменить масштаб картинки и растянуть фотографию на слое вертикально. Для этого мы снимаем блокировку сохранения соотношений и вытягиваем картинку, установив вертикальный scale на 0.7.
Теперь нужно подогнать таким же образом размер шляпы, однако теперь отключать сохранение отношений уже не нужно. Так как шляпа у меня очень большая получилась, то при изменении масштаба начинает работать такой эффект, как тайлинг — текстура начинает повторяться по горизонтали и по вертикали, таким образом система не позволяет оставлять пустые места (как это можно делать в Photoshop), если изображение меньше, чем размер конечного изображения (в нашем случае, меньше, чем 1024х1024 пикселей).
Мы сделали скейл шляпы до нужного нам размера (Значения подберите самостоятельно). Теперь нам необходимо поместить шляпу плюс-минус над головой кота — для этого начинаем крутить параметры Offset (смещение), сдвигая нужную нам шляпу на котика. Настройка Offset находится там же, где и Scale — чуть ниже.
У нас получилась примерно следующая картинка:
Как сделать один слой маской второго?
Есть зеленый слой и есть слой черно-белый текстуры дерева. Я хочу, что бы белые части текстуры дерева заменились на зеленый цвет. Т.е. текстура дерева пробивалась в зеленом фоне.

Не помню как назначить один слой маской другому. Помогите, пожалуйста.
На сайте c 01.03.2010
Сообщений: 403
Екатеринбург\Ереван
я бы через blend делал. Материал дерева базовый, потом зеленфый материал и в слот смешивания — черно-белую текстуру.
На сайте c 04.03.2008
Сообщений: 324
Краснодар
Я бы тоже так поступил.
Но мне еще нужно на текстуру наложить не однородную потертость. Т.е. я собираюсь рисовать патину. И если использовать дирт, то он везде оинаковый радиус дает, а мне нужно разный радиус в разных углах.
Короче Дирт не так реалистичен.
Вот чего я хочу добиться:

В углах получается больше потертостей, чем на ребрах.
На сайте c 29.06.2008
Сообщений: 308
Montréal
вам нужно черно белая текстура с фактурой дерева и закинуть в микс.- текстуру на маску- белый поменять на нужный цвет. Это на дифуз. Остольное рефлект, бамп по вкусу
на примере еще дирт нужен будет. если хотите такой же эффект
На сайте c 04.03.2008
Сообщений: 324
Краснодар
Цитата jppasha:
вам нужно черно белая текстура с фактурой дерева и закинуть в микс.- текстуру на маску- белый поменять на нужный цвет. Это на дифуз. Остольное рефлект, бамп по вкусу
Дак разве речь идет о 3d max? Я же написал в ветку форума Photoshop 🙂
На сайте c 29.06.2008
Сообщений: 308
Montréal
Цитата arhitec:
Цитата jppasha:
вам нужно черно белая текстура с фактурой дерева и закинуть в микс.- текстуру на маску- белый поменять на нужный цвет. Это на дифуз. Остольное рефлект, бамп по вкусу
Дак разве речь идет о 3d max? Я же написал в ветку форума Photoshop 🙂
упс. не внимательный. пятница)))
Но суть таже. нужно черно-белая. потом отделый слой (весь зеленый) и смешивание через мультиплай
На сайте c 04.03.2008
Сообщений: 324
Краснодар
Упс. не внимательный. пятница)))
Но суть таже. нужно черно-белая. потом отделый слой (весь зеленый) и смешивание через мультиплай
Не все так просто. Сделать в максе такой мат я вроде могу. А вот как добавить потертость в разных местах разную?
На сайте c 25.10.2011
Сообщений: 952
Пенза
еще вариант — применить к черно-белому слою корректирующий слой — градиентную заливку (от черного к зеленому)
На сайте c 10.12.2009
Сообщений: 5684
Kalevan
Цитата arhitec:
И если использовать дирт, то он везде оинаковый радиус дает, а мне нужно разный радиус в разных углах.
Вообще-то дерту можно назначить маску на радиус. И будет разный радиус сбора в разных местах.
НО. Если хотите прям художественно сделать — сдаётся мне Substance painter в помощь. хотя. В современных версиях макса есть возможность раскрашивать прям по модели. так можно любые маски рисовать «на лету», единственный момент — моделька должна быть развёрнута по UWV, но это решаемо в принципе.
На сайте c 04.03.2008
Сообщений: 324
Краснодар
Вообще-то дерту можно назначить маску на радиус. И будет разный радиус сбора в разных местах.
Можно подробнее? Как Ditr настраивается с разными радиусами в разных углах?
Цитата red-rimm:
еще вариант — применить к черно-белому слою корректирующий слой — градиентную заливку (от черного к зеленому)
Предположим, но тогда будет градиент между черной маской и зеленым фоном. Это не то, что бы я хотел получить 🙂
На сайте c 23.09.2009
Сообщений: 7395
Киев
А если то что у вас есть зеленое ляпнуть на геометрию с планарным маппингом?
Цитата arhitec:
Вот чего я хочу добиться
Ну, вот это и ложить. Или другой цвет нужен? Уже ж есть цвет, или что не так? Другая геометрия панели?
На сайте c 04.03.2008
Сообщений: 324
Краснодар
Другая :)))) Это просто пример.
Мне нужно на свою модель, она даже немного отличается, наложить материал-текстуру как на примере.
На сайте c 23.09.2009
Сообщений: 7395
Киев
Ну тут только рисовашки. Специальную карту распределения дирта рисовать надо — в углах чернее.
На сайте c 14.12.2010
Сообщений: 1790
spb.ru
режим смешивания слоев меняйте или используйте ч/б как маску на другой цвет/материал


На сайте c 10.12.2009
Сообщений: 5684
Kalevan
Цитата arhitec:
Можно подробнее? Как Ditr настраивается с разными радиусами в разных углах?
В слот радиус дёрта кидаем чёрно-белую маску. она работает так — чем более цвет маски тем ближе радиус к предельному значению, которое задано в параметре радиус.
Касаемо самой маски — я бы нарисовал её прямо по модели используя инструмент Viewport canvas. Модельке потребуется маппинг — но в принципе можно тупо планарку кинуть. И дальше малюем — заливаем всю маску чёрным и кисточкой мажем где нам нужен дёрт — чем белее тем больше дёрта будет. И потом ещё для пущей крутизны можно замиксовать эту маску с процедурным нойзом родным максовским или берконом если есть возможность, чтобы добавить больше неоднородности патинированию. Миксуем там же в слоте радиуса нойза через шейдер Compoite понятно.
На сайте c 16.03.2016
Сообщений: 2144
Москва
Во-первых есть плагин — Dirtizer
во-вторых такие материалы лучше и быстрее делать в специально предназначенных для этого дела программах. Substans Designer, например.