Понятия Основного Материала в Unreal Engine 4

0
4
Понятия Основного Материала UE4

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

Если вы уже знакомы с созданием Материала из предыдущих итераций Unreal Engine, вам может быть интересно узнать о кратком руководстве, которое быстро отображает основные свойства, которые вам нужно знать, чтобы максимально использовать нашу физическую систему Материалов!

Узлы и Сети Материального выражения

Первое и самое главное, что нужно знать о Материалах, – это то, что они создаются не через код, а через сеть узлов визуального скрипта (называемых Material Expressions) в Редакторе Материалов. Каждый узел содержит фрагмент кода HLSL, предназначенный для выполнения конкретной задачи. Это означает, что по мере создания Материала вы создаете код HLSL посредством визуального скриптинга.

Понятия Основного МатериалаВ этом случае у нас очень простая сеть, определяющая паркет. Тем не менее, Сети Material Expression (выражения материала) не должны быть настолько простыми. Обычно есть некоторые материалы, в которых есть много десятков узлов Material Expression.

Вы можете найти документацию по всем доступным выражениям Material Expression Reference.

Работа с Цветом и Цифрами

Как вы знаете, цвет – с точки зрения цифровых изображений – разбит на 4 первичных канала:

R – Красный 
G – Зеленый 
B – Синий
A – Альфа

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

Для хранения данных цвета используются значения с плавающей запятой. Обычно это означает, что значения для каждого канала будут варьироваться от 0.0 до 1.0, а не от 0 до 255, как в некоторых приложениях для редактирования изображений. Важно отметить, что вы всегда можете перегружать значения, которые в некоторых случаях приводят к специальному поведению. Например, если вы отправляете цвет в Эмиссионный инпут (вход) Материала, который вызывает свечение, то значения, превышающие 1,0, увеличивают яркость свечения.

Когда вы думаете о Материалах в UE4, имейте в виду, что многие выражения работают независимо от каждого цветного канала. Например, узел Add принимает два инпута и добавляет их вместе для каждого канала. Если вы добавите два цвета RGB (3-х канальные векторные значения), тогда выходной цвет будет: (Red1 + Red2, Green1 + Green2, Blue1 + Blue2).

Red 1 + Red 2 = Red 3
Green 1 + Green 2 = Green 3
Blue 1 + Blue 2 = Blue 3

Узлы, которые выполняют операции на каждом канале, обычно нуждаются в инпутах с одинаковым количеством каналов. Например, вы можете добавить цвет RGB в другой цвет RGB, но вы не можете добавить RGBA (4-канальный) цвет к RGB (3-канальному) цвету, потому что цвет RGB не имеет альфа-канала. Это вызывает ошибку, и Материал не будет компилироваться. Исключение из этого правила заключается в том, что один из инпутов (входов) является одноканальным (скалярным) значением. Когда это произойдет, значение скаляра просто применяется ко всем другим каналам. Например:

  • Если добавить значение RGB (0,35, 0,28, 0,77) к скалярному значению 1.0, результатом будет:
    0.35 + 1.0 = 1.35
    0.28 + 1.0 = 1.28
    0.77 + 1.0 = 1.77

Текстуры

В случае Материалов текстуры – это просто изображения, которые предоставляют некоторые данные на основе пикселя. Эти данные могут быть цветом объекта, насколько он блестящий, его прозрачность и множеством других аспектов. Существует стиль старой школы, что «текстурирование» – это то, как вы применяете цвет к своим игровым моделям. Хотя процесс создания текстур по-прежнему имеет решающее значение, важно подумать о текстурах как о компоненте Материалов, а не о самом конечном результате.

Один Материал может использовать несколько текстур, которые все отбираются и применяются для разных целей. Например, простой Материал может иметь Текстуру Базового Цвета, Зеркальную Текстуру и Текстуру Карты Нормали. Кроме того, может существовать Текстура для Эмиссий и Резкости, хранящихся в Альфа – Каналах одной или нескольких из этих текстур.

Вы можете видеть, что, хотя все они и имеют один и тот же макет, используемые цвета специфичны для цели текстуры.

После создания и импорта в Unreal Editor текстуры приводятся в Материал посредством специальных узлов Expression Material, таких как узлы Texture Sample. Вы можете увидеть их в приведенном выше примере лиственных пород. Эти узлы ссылаются на объект текстуры, который существует вне Материала и может быть найден отдельно в Контент браузере. В отличие от некоторых 3D – приложений, для материала не существует способа содержать его текстуры.

Для получения дополнительной информации о текстурах и создании текстур см. Документацию по Текстурам.

Свойства и Инпуты

Большая часть того, что вы можете делать с Материалами, зависит от различных свойств, которые вы задаете в самом Материале, а также о том, как вы создаете и соединяете сеть узлов Material Expression (выражений Материала), которая ее определяет. Прежде чем вы сможете действительно развить мощь системы Материалов Unreal Engine, было бы огромной выгодой для просмотра доступных свойств и исходных данных. Их можно найти ниже:

Material PropertiesMaterial Inputs

Применение Материалов к Поверхностям

Способ применения Материалов немного отличается от типа поверхности.

Меши

Применение Материала к Меши (Static, Dynamic или Skeletal) можно обрабатывать разными способами. Просто используйте слот элемента Материалов, расположенный в свойствах для меши. Их можно найти на панели Details, если на уровне выбрана меш или щелкнув правой кнопкой мышки по ячейке и выбрав Properties (Свойства) в контекстном меню. Вы также найдете их в различных редакторах, таких как Редактор Статик Меши или Persona Skeletal Mesh Editor.

  1. Выберите Меш, к которой вы хотите применить Материал.

Материал применяется к меши UE42. На панели Details щелкните стрелку в раскрывающемся списке Material Element. Это покажет все доступные Материалы в вашем проекте и будет доступно с помощью панели поиска.список Material Element UE4

Материал UE43. Кроме того, вы можете выбрать нужный Материал в Контент браузере, а затем нажать кнопку со стрелкой, чтобы применить его.применить материал UE4

Если вы хотите, чтобы Материал стал стандартным для данной Meши, обязательно установите Материал в свойствах Mesh, щелкнув правой кнопкой мыши и выбрав Properties в Контент браузере или дважды щелкнув Mesh в Контент браузере, и установите Материал с помощью появившегося редактора ресурсов (например, Редактора Статик Меши или Persona).

Помните, что если вы измените Материал из редактора активов или из Контент браузера, это изменение повлияет на сам актив. Если вы измените его, используя сведения о Mesh, уже помещенной в сцену, это повлияет только на размещенную копию Mesh.

Поверхности Кисти

Применение Материала к поверхности Кисти – это простой процесс:

  1. Выберите материал из Контент браузера.

Выбор материала UE42. Нажмите на поверхность Кисти, на которую вы хотите присвоить Материал.

присвоить Материал UE43. На панели Details нажмите кнопку . Нажатие этой кнопки приведет к нанесению Материала на поверхность Кисти.нанесение Материала на поверхность Кисти UE4

нанесение Материала на поверхность Кисти 1 UE4