
Основная работа над созданием environment artа проходит в Unreal Engine 5, поэтому часть работы по созданию текстур стремится к тому, чтобы быть собранной «в движке». Для этого я применяю систему Material Layering на базе UE5.
Пайплайн достаточно прост:
1. Сгенерировать карты шумов в другом ПО 2. Создать Master Material и подключить функцию Material Attributes, чтобы открылась возможность подключить «Слои» 3. Создать Material Layers под каждый вид материала (дерево, растительность, камни и тд) с помощью карт шумов 4. Создать Material Layers Blends для смешивания между собой различных слоев 5. Собрать Master Material Instances из слоев и блендов
Noise Textures
Для создания карт шумов я использую Substance Designer. Нодовая система этого ПО отлично подходит для того, чтобы генерировать различные карты при помощи нескольких манипуляций и кнопок. Я создаю достаточно простые, но абсолютно разные карты, для которых не нужно подробно изучать программу. Основные ноды, которые я использую: Blend, Blur HQ, Slope, Histogram, Mosaic Grayscale, Flood Fill, Levels, Shape, Transformation 2D и карты Perlin Noise, Clouds, Crystal, Gaussian Blur и Anisotropic Noise. На каждую карту я трачу примерно 15 минут. Главное, чтобы они были разными по форме и при этом текстурными и стилизованными, например, в виде мазков кисти или точек.
Кроме того, чтобы уменьшить размер карт, я помещаю карты шумов в 3 канала (Red, Green и Blue). Таким образом, вес карт уменьшится и в дальнейшем работать непосредственно в самом движке будет намного удобнее. Это также можно сделать в Substance Designer с помощью ноды RGBA Merge. На графах я выделила ноды каждого канала.
Создание Master Material в UE5
В Unreal Engine 5 мы создаем простой Master Material и в панели Details ставим галочку напротив Use Material Attributes. Таким образом, разблокируется функция Layers в Материале.
После этого из Master Material необходимо сделать Material Instance. В нем справа от панели Details откроется панель Layer Parameters. В ней можно добавлять Слои и смешивать их между собой при помощи Блендов.
На скриншоте изображается слой-бэкграунд, или слой-фундамент (MI_Stone), сверху на него накладывается другой слой (MI_Moss) и смешиваются они при помощи простого бленда (MLB_SimpleGradient).
Создание Material Layers
Создать Material Layers можно также, как и обычный Материал: Material > Layers > Material Layer.
Я собираюсь собрать простую локацию, которая будет состоять из зданий и поросших травой и мхом поверхностей, земли, камней и дерева. Для этого я создаю небольшое количество Material Layers под определенные группы материалов: Moss, Stone, Wood, Wallpaint, Gold и Plaster.
В Material Layer нода MakeMaterialAttributes схожа с созданием обычного материала в Unreal Engine 5.
Для того, чтобы сделать Слои более комплексными и текстурными, в Material Layer с помощью карт шумов, предварительно сгенерированных в Substance Designer, я создаю несколько «мазков», дополнительно добавляя к ним скалярные параметры, такие как Tiling, Contrast, Opacity, а также цвет. Таким образом, впоследствии в панели Layers Parameters в Material Instance я могу менять размер «мазков», их цвет и контрастность. Это главное преимущество Material Instance, которое позволяет делать процесс создания локации в Unreal Engine быстрее и комфортнее.
Теперь пройдемся по всей многоступенчатой системе «мазков». Для этого создадим Material Layer для мха и травы (далее ML_Moss). Первым этапом будут Brushstrokes. Чтобы их было удобнее визуально разделять, я обрамляю ноды, даю им название, применяю цвет и делю на группы.