Unity 6.3
0 онлайн 118 гостей 3 в системе
Вход
Материалы и шейдеры Шаг 328 из 442

Ссылка на структуру входа Surface Shader для встроенного Render Pipeline

Входная структура Input обычно имеет любые координаты текстуры, необходимые для шейдера. Координаты текстуры должны иметь название “uv” за которым следует имя текстуры (или начинаться с “uv2” для использования второго набора координат текстуры).

Дополнительные значения, которые могут быть включены в структуру ввода:

  • float3 viewDir — содержит направление зрения, для вычисления эффектов Параллакса, освещения края и т.д.
  • float4 с семантическим COLOR — содержит интерполированный цвет на вершину.
  • float4 screenPos — содержит позицию экранного пространства для отражения или эффектов экранного пространства. Обратите внимание, что это не подходит для GrabPass; вам нужно вычислить пользовательский UV самостоятельно, используя функцию ComputeGrabScreenPos.
  • float3 worldPos — содержит мировую космическую позицию.
  • float3 worldRefl — содержит вектор отражения мира , если шейдер поверхности не записывает в o.Normal. См. Reflect-Diffuse shader для примера.
  • float3 worldNormal — содержит мировой нормальный вектор , если шейдер поверхности не записывает в o.Normal.
  • float3 worldRefl; INTERNAL_DATA — содержит вектор отражения мира , если шейдер поверхности записывает в o.Normal. Чтобы получить вектор отражения, основанный на пиксельной карте нормалей, используйте WorldReflectionVector (IN, o.Normal). См. Reflect-Bumped shader для примера.
  • float3 worldNormal; INTERNAL_DATA — содержит мировой нормальный вектор , если шейдер поверхности записывает в o.Normal. Чтобы получить нормальный вектор, основанный на пиксельной карте нормалей, используйте WorldNormalVector (IN, o.Normal).