Выражения Параметров в Unreal Engine 4

0
1
Выражения Параметров в Unreal Engine 4

Collection Parameter

Выражение Collection Parameter используется для ссылки на ресурс набора параметров. Это группы параметров, которые могут быть легко использованы много различными активами, такими как Материалы, Blueprints и многое другое. Для получения дополнительной информации о сборках параметров обязательно прочтите Документацию по Parameter Collections.

A Материал может ссылаться самое большее на два разных MaterialParameterCollections. Один из них обычно используется для общих значений игры, а другой может использоваться для конкретных параметров уровня. Коллекция может иметь до 1024 скалярных параметров и 1024 векторных параметра.

DynamicParameter

Выражение DynamicParameter обеспечивает канал для эмиттеров частиц для передачи до четырех значений материалу, который будет использоваться любым способом. Эти значения устанавливаются в Cascade через модуль ParameterDynamic, размещенный на эмиттере.

НазваниеОписание
Свойство
Param NamesМассив имен параметров. Значения здесь определяют текст, отображаемый на выходах выражения в редакторе материалов, и является именами, которые используются для ссылки на параметры модуля ParameterDynamic в Cascade.
Входы
Param1Выводит значение первого параметра в свойстве Param names. Имя этого вывода может изменяться в зависимости от значений в свойстве Param Names.
Param2Выводит значение второго параметра в свойстве Param names. Имя этого вывода может изменяться в зависимости от значений в свойстве Param Names.
Param3Выводит значение третьего параметра в свойстве Param names. Имя этого вывода может изменяться в зависимости от значений в свойстве Param Names.
Param4Выводит значение четвертого параметра в свойство Param names. Имя этого вывода может изменяться в зависимости от значений в свойстве Param Names.

FontSampleParameter

Выражение FontSampleParameter предоставляет способ выставить параметр на основе шрифта в константе экземпляра материала, упрощая использование разных шрифтов в разных экземплярах. Альфа-канал шрифта будет содержать значение контура шрифта. Разрешено указывать только допустимые страницы шрифтов.

НазваниеОписание
Свойство
Parameter Name
Group
FontУдерживает актив шрифта по умолчанию (из контент браузера), который должен содержаться в выражении.
Font Texture PageТекущая страница текстуры шрифта, которая будет использоваться как часть текстуры.

Пример Параметра Образца Шрифта UE4

ScalarParameter

Выражение ScalarParameter выводит одно значение с плавающей запятой (Constant), к которому можно получить доступ и изменить его в экземпляре материала или «на лету» по коду.

НазваниеОписание
Свойство
Parameter NameУказывает имя, используемое для идентификации параметра в экземпляре материала и кода.
GroupПредоставляет способ группировки имен параметров в группы или категории в MaterialInstanceConstant. Все параметры в материале, которые имеют одно и то же имя свойства группы, будут указаны под этой категорией в экземпляре.
Default ValueЗадает начальное значение, которое принимает константа.

Пример Скалярного Параметра UE4

StaticBoolParameter

StaticBoolParameter работает как StaticSwitchParameter, за исключением того, что он создает только параметр bool и не реализует коммутатор.

Этот параметр называется static (статичный), поскольку он не может меняться во время выполнения, его можно установить только в Редакторе Экземпляров Материала. Статические переключатели применяются во время компиляции, а не во время выполнения. Это означает, что любая ветвь материала была удалена никогда не будет выполнена, поэтому статические переключатели фактически свободны во время выполнения. С другой стороны, новая версия материала должна быть скомпилирована для каждой используемой комбинации статических параметров в материале, что может привести к взрыву шейдера при злоупотреблении. Попробуйте минимизировать количество статических параметров в материале и количество перестановок тех статических параметров, которые фактически используются.
НазваниеОписание
Свойство
Parameter NameУказывает имя, используемое для идентификации параметра в экземпляре материала и кода.
GroupПредоставляет способ группировки имен параметров в группы или категории в MaterialInstanceConstant. Все параметры в материале, которые имеют одно и то же имя свойства группы, будут указаны под этой категорией в экземпляре.
Default ValueЗначение bool по умолчанию для параметра, True (отмечено) или False.

Этот узел используется с MaterialFunctions.

StaticSwitchParameter

Выражение StaticSwitchParameter принимает два входа и выводит первое, если значение параметра равно true, а второе – соответственно в противном случае.

Этот параметр называется static (статичный), поскольку он не может меняться во время выполнения, его можно установить только в Редакторе Экземпляров Материала. Статические переключатели применяются во время компиляции, а не во время выполнения. Это означает, что любая ветвь материала была удалена никогда не буд
ет выполнена, поэтому статические переключатели фактически свободны во время выполнения.
 С другой стороны, новая версия материала должна быть скомпилирована для каждой используемой комбинации статических параметров в материале, что может привести к взрыву шейдера при злоупотреблении. Попробуйте минимизировать количество статических параметров в материале и количество перестановок тех статических параметров, которые фактически используются.
НазваниеОписание
Свойство
Parameter NameУказывает имя, используемое для идентификации параметра в экземпляре материала и кода.
GroupПредоставляет способ группировки имен параметров в группы или категории в MaterialInstanceConstant. Все параметры в материале, которые имеют одно и то же имя свойства группы, будут указаны под этой категорией в экземпляре.
Default ValueЕсли значение true, выводится первый вход. В противном случае выводится второй вход.
Extended Caption DisplayЕсли значение true, строка заголовка выражений отображает значение выражения.
Входы
AПринимает значение любого количества каналов.
BПринимает значение любого количества каналов.

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

Выражения Параметров в Unreal Engine 4Статический Параметр Коммутатора Пример A UE4

StaticComponentMaskParameter

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

Этот параметр называется static (статичный), поскольку он не может меняться во время выполнения, его можно установить только в Редакторе Экземпляров Материала. Статические переключатели применяются во время компиляции, а не во время выполнения. Это означает, что любая ветвь материала была удалена никогда не будет выполнена, поэтому статические переключатели фактически свободны во время выполнения. С другой стороны, новая версия материала должна быть скомпилирована для каждой используемой комбинации статических параметров в материале, что может привести к взрыву шейдера при злоупотреблении. Попробуйте минимизировать количество статических параметров в материале и количество перестановок тех статических параметров, которые фактически используются.
НазваниеОписание
Свойство
Parameter NameУказывает имя, используемое для идентификации параметра в экземпляре материала и кода.
GroupПредоставляет способ группировки имен параметров в группы или категории в MaterialInstanceConstant. Все параметры в материале, которые имеют одно и то же имя свойства группы, будут указаны под этой категорией в экземпляре.
Default RЕсли флажок установлен, красный или первый канал входного значения будут переданы на выход.
Default GЕсли флажок установлен, зеленый или второй канал входного значения будут переданы на выход.
Default BЕсли отмечено, синий или третий канал входного значения будут переданы на выход.
Default AЕсли флажок установлен, альфа-канал или четвертый канал входного значения будут переданы на выход.

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

Пример параметра маски статического компонента UE4

VectorParameter

Выражение VectorParameter идентично Constant4Vector, за исключением того, что оно является параметром и может быть изменено в экземплярах материала и через код. Одна из разновидностей VectorParameter заключается в том, что его значение можно установить с помощью Color picker (палитры выбора цвета).

НазваниеОписание
Свойство
Parameter NameУказывает имя, используемое для идентификации параметра в экземпляре материала и кода.
GroupПредоставляет способ группировки имен параметров в группы или категории в MaterialInstanceConstant. Все параметры в материале, которые имеют одно и то же имя свойства группы, будут указаны под этой категорией в экземпляре.
Default Value

  • R
  • G
  • B
  • A

 

Вектор выводится по умолчанию, если не переопределяется MaterialInstanceConstant.

  • Задает значение c плавающей запятой красного или первого канала вектора, который выдает выражение.
  • Задает значение c плавающей запятой зеленого или второго канала вектора выходов выражения.
  • Задает значение c плавающей запятой синего или третьего канала вектора выходов выражения.
  • Задает значение c плавающей запятой альфа-канала или четвертого канала вектора, который выдает выражение.

Пример векторного параметра UE4

VertexColor является взаимоисключающим с узлом Transform из-за ограниченных интерполяторов. Если вы используете как узел Transform, так и VertexColor, то VertexColor выйдет из белого.
Программисты: для частиц спрайтов цвета передаются шейдеру на вершину, тогда как цвета для частиц меши задаются как константы шейдера.

TextureObjectParameter

Выражение TextureObjectParameter определяет параметр текстуры и выводит объект текстуры, используемый в материалах, вызывающих функцию со вставками текстуры. Этот узел фактически не испытывал текстуру, поэтому он должен использоваться вместе с узлом TextureSample.

НазваниеОписание
Свойство
Parameter Name
Group
TextureОпределяет текстуру, выбранную выражением.
Sampler TypeТип данных, которые будут отбираться и выводиться из узла.
MipValueModeВыбирает, как настроить уровень mip-образца или производные от выбранного оборудования по умолчанию. Влияет на внешний вид и производительность.

Этот узел используется с MaterialFunctions.

TextureSampleParameter2D

Выражение TextureSampleParameter2D идентично TextureSample, за исключением того, что это параметр, который может быть изменен в экземплярах материала и через код.

НазваниеОписание
Свойство
Parameter Name
Group
TextureОпределяет текстуру, выбранную выражением.
Sampler TypeТип данных, которые будут отбираться и выводиться из узла.
MipValueModeВыбирает, как настроить уровень mip-образца или производные от выбранного оборудования по умолчанию. Влияет на внешний вид и производительность.
Входы
UVsПринимает координаты UV-текстуры, используя для текстуры. Если никакие значения не введены в UVs, используются текстурные координаты меши, к которой применяется материал.
Выходы
RGBВыводит трехканальное векторное значение RGB для цвета.
RВыводит красный канал цвета.
GВыдает зеленый канал цвета.
BВыводит синий канал цвета.
AВыдает альфа-канал цвета. Если текстура не содержит альфа-канал, соединение альфа-канала с чем-то, хотя и не является технически незаконным, всегда приведет к нулю (черный).

TextureSampleParameterSubUV

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

НазваниеОписание
Свойство
Parameter Name
Group
BlendСмешивает каждый кадр структуры спрайта SubUV, а не мгновенно «выскакивает» от одного кадра к другому.
TextureОпределяет текстуру, выбранную выражением.
Sampler TypeТип данных, которые будут отбираться и выводиться из узла.
MipValueModeВыбирает, как настроить уровень mip-образца или производные от выбранного оборудования по умолчанию. Влияет на внешний вид и производительность.
Входы
UVsUV инпут игнорируется и ничего не делает.
Выходы
RGBВыводит трехканальное векторное значение RGB для цвета.
RВыводит красный канал цвета.
GВыдает зеленый канал цвета.
BВыводит синий канал цвета.
AВыдает альфа-канал цвета. Если текстура не содержит альфа-канал, соединение альфа-канала с чем-то, хотя и не является технически незаконным, всегда приведет к нулю (черный).

TextureSampleParameterCube

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

НазваниеОписание
Свойство
Parameter Name
Group
TextureОпределяет текстуру, выбранную выражением.
Sampler TypeТип данных, которые будут отбираться и выводиться из узла.
MipValueModeВыбирает, как настроить уровень mip-образца или производные от выбранного оборудования по умолчанию. Влияет на внешний вид и производительность.
Входы
UVsПринимает координаты UV-текстуры, используя для текстуры. Если никакие значения не введены в UVs, используются текстурные координаты меши, к которой применяется материал. Это должно быть трехканальное векторное значение.
Выходы
RGBВыводит трехканальное векторное значение RGB для цвета.
RВыводит красный канал цвета.
GВыдает зеленый канал цвета.
BВыводит синий канал цвета.
AВыдает альфа-канал цвета. Если текстура не содержит альфа-канал, соединение альфа-канала с чем-то, хотя и не является технически незаконным, всегда приведет к нулю (черный).

TextureSampleParameterMovie

Выражение TextureSampleParameterMovie идентично выражению TextureSample, за исключением того, что оно принимает только текстуры фильмов (фильмы Bink), и это параметр, который можно изменить в экземплярах материала и через код.

НазваниеОписание
Свойство
Parameter Name
Group
TextureОпределяет текстуру, выбранную выражением.
Sampler TypeТип данных, которые будут отбираться и выводиться из узла.
MipValueModeВыбирает, как настроить уровень mip-образца или производные от выбранного оборудования по умолчанию. Влияет на внешний вид и производительность.
Входы
UVsПринимает координаты UV-текстуры, используя для текстуры. Если никакие значения не введены в UVs, используются текстурные координаты меши, к которой применяется материал.
Выходы
RGBВыводит трехканальное векторное значение RGB для цвета.
RВыводит красный канал цвета.
GВыдает зеленый канал цвета.
BВыводит синий канал цвета.
AВыдает альфа-канал цвета. Если текстура не содержит альфа-канал, соединение альфа-канала с чем-то, хотя и не является технически незаконным, всегда приведет к нулю (черный).