Поделиться через


Служебные узлы

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

Ссылка вспомогательного узла

Узел

Подробные сведения

Свойства

Добавить вектор

Создает вектор, добавляя указанные входные данные вместе.

Вход:

Vector: float, float2 или float3

Добавляемые значения.

Value to Append: float

Добавляемое значение.

Результат

Output: float2, float3 или float4 в зависимости от типа входного значения Vector

Новый вектор.

None

Френель

Вычисляет спад по Френелю на основе заданной нормали к поверхности.

Значение спада по Френелю отражает степень близости между нормалью к поверхности, построенной из текущего пикселя, и вектором обзора.Если эти векторы параллельны, результат функции равен 0; результат возрастает по мере отклонения направлений векторов и достигает максимума для перпендикулярных векторов.Эту функцию можно использовать для изменения эффекта в зависимости от отношения между ориентацией текущего пикселя и положением камеры.

Вход:

Surface Normal: float3

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

Результат

Output: float

Коэффициент отражения текущего пикселя.

Экспонента

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

If

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

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

Вход:

X: float, float2, float3 или float4

Левое значение для сравнения.

Y: тип аналогичный вводу X

Правое значение для сравнения.

X > Y: тип аналогичный вводу X

Значения, которые выбираются при X больше Y.

X = Y: тип аналогичный вводу X

Значения, которые выбираются при X равно Y.

X < Y: тип аналогичный вводу X

Значения, которые выбираются при X меньше Y.

Результат

Output: float3

Выбранный результат для каждого компонента.

None

Ламберт

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

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

Вход:

Surface Normal: float3

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

Diffuse Color: float3

Диффузный цвет текущего пикселя, обычно Цвет точки.Если входные данные не предоставляются, значением по умолчанию будет белый цвет.

Результат

Output: float3

Диффузный цвет текущего пикселя.

None

Вектор маски

Маскирует компоненты заданного вектора.

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

Вход:

Vector: float4

Вектор для создания маски.

Результат

Output: float4

Маскированный вектор.

Красный цвет и x

Значение False, чтобы маскировать компонент красного цвета (x); в противном случае - значение True.

Зеленый и Y

Значение False, чтобы маскировать компонент зеленого цвета (y); в противном случае - значение True.

Z "/

Значение False, чтобы маскировать компонент синего цвета (z); в противном случае - значение True.

Альфа-версия/W

Значение False, чтобы маскировать альфа-компонент (w); в противном случае - значение True.

Вектор отражения

Вычисляет вектор отражения для текущего пикселя в пространстве касательных на основе положения камеры.

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

Вход:

Tangent Space Surface Normal: float3

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

Результат

Output: float3

Вектор отражения.

None

Отражающий

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

Отраженное освещение придает объекту блестящий, светящийся вид, как, например, у воды, пластмассы или металла.

Вход:

Surface Normal: float3

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

Результат

Output: float3

Цветовой вклад зеркальных отражений.

None