Substance 3D Painter

Substance 3D Painter — стандарт текстурной живописи для игр: слои, маски и генераторы позволяют рисовать PBR-материалы быстро и неразрушающе.

Уровень: средний 18 разделов ⏱ 4–5 часов

1. Что такое PBR и Substance

PBR (Physically Based Rendering) — модель рендеринга, где материал задаётся наборами текстур: Base Color (цвет), Metallic (металл), Roughness (шершавость), Normal (карта нормалей), Height/AO (высота и окклюзия).

Substance 3D Painter — инструмент рисования прямо на модели: результат всегда совпадает с тем, что ты увидишь в Unreal/Unity (одинаковый PBR-пайплайн).

Лицензия: подписка Adobe. Есть бесплатная 30-дневная пробная версия на сайте Adobe Substance 3D.

2. Интерфейс

Панели можно перетаскивать и менять раскладку (пункт меню Window → Workspace).

3. PBR-карты

КартаЧто описывает
Base Colorточный цвет поверхности
Metallicметалл (белый) или диэлектрик (чёрный)
Roughnessмикрогеометрия: гладкая (тёмная) или шершавая (светлая)
Normalнаправление нормалей без геометрии
Heightвысота для параллакса/дисплейса
AOтени в углах и щелях

В реальном проекте чаще всего настраивают только Color и Roughness: остальное отдают генераторы.

4. Импорт модели

Начни новый проект: File → New. Поддерживаются FBX, OBJ, Alembic.

5. Запекание (Baking)

Baking генерирует Normal, AO, Curvature, Position и др. карты с высокой модели (High-poly) на низкую (Low-poly):

  1. Проект с низкополигональной моделью; в окне Baking укажи High Definition Mesh и Cage.
  2. Галочки на нужных картах: Normal (Tangent), AO, Curvature (для вариативности), Thickness.
  3. Увеличь Samples и края (Padding) для чистых результатов.
Плохой результат нормалей почти всегда от несовпадения UV с высокой сеткой. Сначала приведи развёртку в норму.

6. Слои, маски и кисти

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

Кисть: выбор из Shelf, настройки Symmetry (зеркальное рисование) и радиус по стриму мыши «pressure» (если есть планшет).

7. Материалы и Smart Materials

Material — набор PBR-карт. Smart Material — «живой» материал, привязанный к маскам/генераторам: растащи «грязь» по AO или накатай ржавчину по толщине.

Готовые умные материалы из Shelf (например «Sanded Wood», «Rusty Metal») — отличный учебный ход: посмотри их параметры и маски, потом пересоздай свои.

8. Генераторы

Генераторы добавляют эффекты автоматически через маски:

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

9. Высокопольное текстурирование и кастом

Добавь «жизнь» материалам:

Правило «2 слоёв»: сначала топ-слой (цвет/рисунок), затем слой износа (грязь, тени, царапины) сверху c пониженной непрозрачностью.

10. Экспорт текстур

Экспорт: File → Export Textures. Готовые шаблоны для движков:

Форматы: PNG/TGA без сжатия, JPEG с потерями. Заспакуй в записи репозитория GitLab с Git LFS.

11. Финальная проверка и презентация

Не забывай выставлять Sample Rate при экспорте нормалей 2048: если текстура «шумит» в новом движке — виновата фильтрация MFD. Меняй размер MIP-лав в настройках импорта движка.

12. Оптимизация текстур и тайлинг

Разрешение текстур напрямую влияет на производительность: пара наборов по 4K на сцену — это сотни мегабайт видеопамяти. До старта текстурирования реши, для чего нужен ассет: пропу хватает 2K, а персонажу на крупных планах — 4K.

# Параметры, которые стоит проверить перед экспортом
Tile size:     2048 x 2048
Texel density: 10.24 px/cm  (game) / 20.48 px/cm (cinematic)
Padding:       16
Max MIP level: 3
Тип объектаПлотность текселя
Проп в комнате10.24 px/cm
Персонаж, крупные планы20.48 px/cm
Фон и дальний план5.12 px/cm

Тайлинг: для больших плоскостей увеличь Tile U и Tile V — материал начнёт повторяться, а плотность текселя останется нужной. Этим удобно пользоваться на полах, заборах и стенах.

Сжатие в движке — не замена оптимизации в Painter. Ужатый PNG с артефактами даст «грязную» картинку, а грамотное сжатие типа BC7 почти незаметно глазу.

13. UDIM и большие ассеты

UDIM — это несколько UV-тайлов на одной модели (1001, 1002 и так далее). Каждый тайл получает собственные текстуры, поэтому суммарная детализация ассета растёт без снижения плотности текселя.

# Пример структуры экспорта UDIM
vehicle_1001_BaseColor.png
vehicle_1001_Roughness.png
vehicle_1002_BaseColor.png
vehicle_1002_Roughness.png

Помните, что UDIM повышает и требования: каждая плитка — свои текстуры, значит экспорт занимает память и время движка. Используйте тайлы там, где детализация реально нужна, а гладкие поверхности оставляйте на одном UV-листе.

Для объектов длиннее восьми метров (стена, забор, фюзеляж) UDIM незаменим: один тайл на «метр» даёт одинаково чёткую текстуру по всей длине.

14. Финальный чек-лист

Перед отправкой ассета в движок пройдись по пунктам — это сэкономит часы на переделки уже после импорта.

Сравни результат с референсом в одном освещении и масштабе. Глаз быстро привыкает к ошибкам, а свежий взгляд после паузы замечает их сразу.
Заведи папку textures/_src для исходников и экспортируй итог отдельно: восстановить сцену после правок будет проще, а ревьюи заметят разницу быстрее.

15. Якоря Anchors и умная маскировка

Якорь (Anchor) — справочная точка, которая хранит то, что нарисовано ниже по стеку слоёв. На якорь ссылаются маски, генераторы и слои, поэтому «грязь» можно привязать к AO, а царапины — к карте высот, не перерисовывая ничего вручную.

  1. Создай якорь: ПКМ по слою → Add Anchor Point. Имя дай по смыслу: ao, curvature, height.
  2. В параметрах генератора укажи источник маски (Source) как этот якорь.
  3. Меняя нижележащие слои, ты автоматически обновляешь все маски, ссылающиеся на якорь.
# Схема стека
Paint layer (ржавчина)  -> маска ссылается на Anchor:ao
Fill layer (металл)     -> базовый материал
Anchor:ao               # запечённая ambient occlusion

Якоря незаменимы, когда текстурный стек вырастает до десятков слоёв: вместо копирования маски между слоями ты один раз создаёшь живую ссылку. Это и скорость, и предсказуемость результата.

Живые ссылки на якорь переживают правки нижележащих слоёв. Если маска «застыла» и не реагирует на слои внизу — проверь, действительно ли источником назначен Anchor, а не копия.
Не ссылайся на якорь самого верхнего слоя без необходимости: при перемещении якоря вниз по стеку все ссылки на него продолжат работать, но укажут на уже изменённый набор слоёв.

16. Практический кейс: sci-fi броня

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

  1. Запеки Normal, AO, Curvature и Thickness с высокой модели.
  2. Fill layer — базовый металл (Metallic белый, Roughness 0.2).
  3. Второй fill — краска: цвет, Roughness чуть выше, маска по Curvature (края).
  4. Генератор Dust по маске AO — затемнение в низинах.
  5. Царапины: кисть на нормальной карте по маске случайного шума.

Ключ к «правдоподобию» — порядок: краска поверх металла, а износ сверху. На каждом этапе включай превью Channel (Base Color, Roughness) и сравнивай с референсом.

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

17. Частые ошибки новичков

Большинство «косяков» в Painter повторяются из проекта в проект. Держи список под рукой — он сэкономит часы переделок.

# Быстрая проверка перед экспортом
UV seams      - закрыты масками?
Base Color    - нет полос и артефактов?
Normal        - tangent, не object
Padding       - 16
Size          - 2048/4096 по задаче

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

Ревью «свежим глазом»: оставь работу на день и вернись. Большинство очевидных ошибок находят именно так.

18. Смежные инструменты и альтернативы

Painter — стандарт индустрии, но не единственный способ текстурировать. Полезно знать соседей, чтобы выбирать инструмент под задачу.

ИнструментКогда удобен
Mariкино и большие UDIM-наборы, сотни тайлов
Quixel Mixerбыстрый «фото» примерно реальности из сканов
Marmoset Materializeгенерация PBR-карт из простых плиток
Blender + процедурыпростое текстурирование без отдельной лицензии

В реальном пайплайне стек часто выглядит так: Blender/Maya — моделинг, RizomUV — развёртка, Painter — текстуры, Marmoset Toolbag — презентация. Из Painter материалы уезжают в Unreal/Unity без потерь.

Перед выбором инструмента задай вопрос «что будет на каждом этапе?»: для игрового ассет-пайплайна Painter — лучший выбор, а для кинопроизводства со множеством UDIM-тайлов — Mari.

Не гонись за «магической» кнопкой: в любом инструменте основа — запечённые карты и продуманный стек слоёв.
Освой один инструмент до глубины, а соседний — до уровня «могу прочитать логику художника». Так ты будешь говорить на одном языке с командой.

19. Сканы и фотограмметрия: работа с реальным миром

Фотограмметрия — восстановление текстуры и геометрии из десятков фотографий. Сканы дают «живой» результат: реальную грязь, микронеровности и цвет на материалах вроде камня, бетона или ржавого металла, которые вручную нарисовать дорого.

1. Снимите объект со всех сторон (50–200 фото)
2. Соберите меш в Reality Capture / Metashape
3. Импортируйте модель в Painter (раздел 4)
4. Запеките текстуры (раздел 5) и доучите вручную
ИсточникКогда использовать
Свой скан (фотограмметрия)уникальный объект клиента, сайт-специфика
Megascans / Quixelприрода и «мир» в стиле готовых библиотек
Poly Haven и стокибыстрые тесты и базовые тайлы

Сканы редко лежат «как есть»: в Painter их подчищают — убирают грязь с датчика, швы, выравнивают нормали (normalize) и поверх добавляют собственные слои.

Сканы + смарт-материалы — сильная связка: реализм скана усиливается вариативностью смарт-слоёв без ручной прорисовки.
Следите за требованиями движка по памяти: текстуры 8k из фотографий весят много. Держите боевой размер 2k–4k там, где движок не требует большего.

20. Substance Designer и .sbsar в пайплайне

Substance Designer — «промышленный» способ делать материалы: вместо кистей пишутся графы нод, которые генерируют карты процедурно. Результат пакуется в файл .sbsar, который Painter читает как обычный источник текстур.

# Панель библиотеки Painter
1. Add resource → Designer (.sbsar)
2. Разместите на панели как источник
3. Настройте параметры (износ, масштаб, вариации)

Разница с рисованием: изменение параметра в Designer перестраивает весь материал. Кирпич с «тьящими» случайными вариациями, металл с параметрической ржавчиной — без перерисовки слоёв вручную.

Создавайте .sbsar под переиспользование: «универсальная грязь», «базовый металл» — это активы, которые покупает вся команда.
Помните: Designer требует отдельного обучения (граф-мышление). Начать можно с готовых шаблонов и маленьких модификаторов.
Продумайте, где останется рука художника: полностью «алгоритмичный» материал звучит стерильно. Микс процедурного и ручных слоёв — золотая середина.

21. Варианты и экземпляры: одна текстура на много состояний

Предмет в игре почти всегда существует в нескольких состояниях: чистый, грязный, сломанный, мокрый. Делать для каждого копию — расточительство. Решение — варианты материала и параметрические слои.

# Painter: Material Variants
1. Создайте variants на слое (иконка "variants")
2. Для каждого варианта — своя маска или параметры
3. Экспортируйте нужный набор карт под состояние
ВариантЧто меняется
Cleanбазовая чистая текстура
Dirtyмаски грязи + пыли (параметрические слои)
Brokenмаски царапин, сколов, смещение roughness

В движке состояния переключаются через material instance / параметр — без нескольких загруженных текстур для одного объекта.

Начните с двух вариантов (Clean/Rough) — этого хватает 80% случаев, третий добавляйте по надобности.
Варианты работают и для повторяемых объектов: панель с одинаковыми ручками, но разной «потёртостью» — один проект, много состояний.

22. Командный пайплайн: стандарты и ревью ассетов

В одиночку ассет можно собрать «как душа пожелает». В команде это путь к хаосу: художники перезаписывают чужие слои, движок ломается на чужих пресетах, а ревью упирается в «мне так видно». Стандарты решают большую часть проблем.

# Правила на проект
- Разрешение: 2048/4096 (зависит от задачи)
- Формат карт: PNG (Base Color) / TGA или PNG (Normal)
- Packed-ключи: OC (R), Roughness (G), Metalness (B)
- Именование: ассет_тип_канала.png

Ревью ассета делается «насквозь»: сначала общий план (silhouette и игра света в движке), затем карты по каналам (нет ли замыленных нормалей, пересветов в roughness), потом экономика (память, разрешение).

Заведите чек-лист ревью: канал за каналом — ревью перестаёт быть вкусовщиной и становится проверкой по фактам.
Скриншоты и версии храните рядом с отчётом: спор «было/стало» решается за минуту, а не вспоминанием.
Если ассет хорошо смотрится только под одним светом — это красный флаг. Критичные ассеты проверяйте в нескольких условиях освещения: это ловит большинство сюрпризов.

Что дальше

Текстурирование — финал пайплайна: сначала ZBrush для скульптига, RizomUV для развёртки, затем Painter и презентация в Marmoset Toolbag. Платье на персонаже — Marvelous Designer.

← Вернуться к курсам