41

Делаем бетон в Substance Designer. Часть 1

Привет, это Антон Агеев, — я учу работать в Substance Painter и Designer и рассказываю, как создавать реалистичные процедурные текстуры на уровне профессионалов игровой индустрии.


Это — обучающий текст по созданию процедурной текстуры бетона в Substance Designer. Бетон — материал на первый взгляд тривиальный, но грамотное его использование поможет выстроить стилистику целой игры. Как, например, в прошлогодней Control.

Текстуры для неё, кстати, тоже делали в Substance Designer


Я подробно распишу процесс для новичков — попробуй повторить все шаги в статье. Начинать можно с нуля, в пробной версии Designer на месяц, — если не уверен, хочешь ли сразу тратиться на профессиональные программы.


В каждом шаге я буду указывать точные значения параметров, которые использовал я, но это не значит, что тебе нужно повторять всё за мной — экспериментируй!


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


Поехали!


Собираем референсы

Заходим на Artstation, Behance, Google и ищем подходящие образы.

Вот три картинки, которые понравились


Первая приглянулась мне трещинами, со второй я взял цвет и поры. В третьей понравился общий шум: штукатурка, светотень, и микродетализация.


Настраиваем программу

Интерфейс Substance Designer выглядит так:

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


Интерфейс делится на несколько рабочих областей: панель эффектов справа, 3D вьюпорт — отображение материала на 3D модели, 2D вьюпорт — показывает содержимое выбранной ноды. Снизу — рабочее место, которое называется Graph View, в котором мы создаем материал с помощью нод.

Нода — это блок кода или операция, которая создаёт или обрабатывает изображение

У нод есть исходящие порты — аутпуты, а у некоторых ещё и входящие — инпуты. Информация подаётся в инпуты, обрабатывается нодой и выходит из аутпута в следующую ноду.


Ноды связываются в цепочку действий, которая приводит к результату — текстуре или её отдельному элементу.


Например, нода Blur принимает на вход изображение, а на выходе отдаёт его более размытым:

Инпут слева, аутпут справа


Такой подход к созданию текстур и материалов называют процедурным.


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


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


В библиотеке Designer более двухсот нод. Они делятся на группы по задачам.


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


Существуют и другие группы: паттерны, операции и эффекты.


Вот, как выглядит исходная схема в Graph View. Я оставлю её в хорошем качестве на гугл-диске, чтобы ты мог обращаться к итоговому варианту, если запутаетесь.

В каждом шаге разберём по кусочку схемы


Новый проект

Первым делом создаём и настраиваем новый проект.

В окне нового проекта даём название будущему графику, устанавливаем разрешение — 2048х2048 точек, разрядность документа — 16 бит и в качестве шаблона из левого списка выбираем PBR(Metallic\Roughness).


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


Если забыли выбрать нужный шаблон или случайно удалили аутпуты в процессе работы, — не переживайте, их можно создать и настроить вручную.


Карта высот

Наша задача — грамотно построить карту высот (Height).


Height это чёрно-белая текстура, в которой яркость пикселя задаёт высоту точки в 2D пространстве.


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

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


Карта высот занимает 80% работы.


Она также оказывает влияние на все остальные текстуры материала — цвет, микрорельеф (roughness), затенения (AO) и так далее.


Анализ референсов

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


К примеру трещины на первом референсе имеют схожую форму и характер. Бетон на второй фотографии покрыт мелкими глубокими порами.


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


Фактура

Первый элемент — текстура, которую я сделал на основе процедурного шума Fractal Sum Base.


Её задача — добавить небольшие неровности и фактуру бетона, для того чтобы материала не был идеально ровным.


Я собрал эту текстуру из четырёх нод, начал с процедурного шума Fractal Sum Base.

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


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


Попробую объяснить ход мыслей в процессе создания текстуры.


Я начал с Fractal Sum Base потому что мне показалось что она похожа на однородную поверхность камня. Но в дефолтном состоянии она слишком сильно «шумит».


Поэтому добавилась нода Slope Blur для понижения детализации.


Slope Blur одновременно размывает и искажает текстуру, что привело меня к результату:

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


Следующий шаг — нода Blur HQ с помощью которой я смягчаю получившуюся фактуру.


Последняя нода — Histogram Range. В ней с помощью параметра Range я управляю интенсивностью элемента:

Поры

Структура бетона неоднородна — в ней, помимо трещин, есть много мелких отверстий, разбросанных по всей поверхности, которые образуются из-за испарения воды изнутри материала.


Я создал поры из процедурной текстуры текстуры Dirt 1.

Для того, чтобы сделать глубину пор разнообразнее, я продублировал Dirt 1 и настроил их по-разному с помощью параметра Position в нодах Histogram Scan.


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

После этого я применяю Slope Blur к обеим текстурам, чтобы упростить форму пор и сделать их похожими на отверстия в камне:

Поры в материале


Процедурные шумы и эффекты

Slope Blur управляется другой текстурой. В нашем примере чёрно-белая текстура управляет интенсивностью эффекта. Чем ярче пиксель, тем сильнее в этом месте действует Slope Blur.


Чаще всего другими эффектами управляют процедурные шумы — дальше я буду называть их драйверами.

У Slope Blur для пор, драйвером является BnW Spots 2


Результат эффекта зависит от текстуры-драйвера, поэтому не бойтесь экспериментировать. Это быстрее приведёт к результату и научит работе с разными эффектами и текстурами.


Трещины

Это сложная деталь, которая состоит из нескольких нод и эффектов.

Я начинаю с простых форм, создаю текстуру Cells 1. В её основе лежат прямые линии, которые образуют узор, похожий на трещины.

С помощью эффекта Directional Warp я немного искажаю текстуру Cells 1, потому что на камне трещины не такие прямые.


Создаю драйвер для эффекта Directional Warp из текстуры Gaussian Noise. Она делает изгибы трещины мягкими и плавными. Результат настраиваю одновременно с помощью параметра Scale в драйвере и Intensity в ноде DW.

Продолжаю работу над формой трещин, создав ещё один Directional Warp.


На этот раз в качестве драйвера использую текстуру Crystal 1. Она состоит из градиентов, в основе которых линии ломаной формы. В результате эффект DW добавляет на плавные линии трещин изломы.

Я создаю ноду Blend, в которой смешиваю трещины с текстурой Gaussian Noise. Чтобы паттерн не читался явно, местами их лучше стереть.


Перед этим добавляю Gaussian Noise в ноду Levels, с помощью которой можно настроить радиус маски.


Последняя операция — уже знакомый Slope Blur. С помощью него я добавляю сколы и фактуру камня на грани трещин.

Для этого использую драйвер Clouds2.


Последнюю ноду — Histogram Scan, — создаю, чтобы контролировать интенсивность трещин.

Повреждения

От стен иногда отпадают целые куски цемента — они обнажают внутренности материала с более крупной и пористой фактурой. Эти тёмные пятна мы сейчас и создадим.

1. Создаю фактуру грубого и пористого цемента, затем подмешиваю его к материалу с помощью маски, сделанной из процедурного шума — BnW Spots 1.


2. Маску делаю с помощью ноды Histogram Scan, увеличив контрастность текстуры. С помощью Position настраиваю площадь повреждения.


3. Применяю к маске Slope Blur, в качестве драйвера использую BnW Spots 3, который уже есть в графике — участвует в создании пор.


4. Перед тем, как смешать фактуру из BnW Spots 1, смещаю текстуру в сторону и поворачиваю её нодой Transform 2D, чтобы рисунок текстуры не совпадал с рисунком маски.

Читай продолжение во 2 части статьи.

CGI Media

3.1K постов6.5K подписчик

Правила сообщества

• Посты должны соответствовать тематике cообщества.

• Не допускается спам и нарушение правил сайта pikabu.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества