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

Передавать метки в ссылке ShaderLab

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

Для получения информации о том, как работает объект Shader, и о взаимосвязи между объектами Shader, SubShaders и проходы, см. Основы объекта шейдера.

Совместимость конвейера отображения

Название особенности Universal Render Pipeline (URP) High Definition Render Pipeline (HDRP) Изготовленный на заказ SRP Built-in Render Pipeline
ShaderLab: Блок пропуска теги Да Да Да Да
ShaderLab: LightMode Пропускной знак Да Да Да Да

Синтаксис

Подпись Функция
Tags {"<name1>" = "<value1>" "<name2>" = "<value2>"} Применяет данные теги к Пропуску.

Вы можете определить столько тегов, сколько хотите.

LightMode метка

Подпись Функция
&quot; LightMode &quot; = [значение] Устанавливает значение LightMode для этого Пропуска.

Тег LightMode определяет, когда Unity выполняет проход.

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

PassFlags метка

В Built-in Render Pipeline используйте тег PassFlags Pass, чтобы указать, какие данные Unity предоставляет в Pass.

Значение Функция
OnlyDirectional Действительно только в Built-in Render Pipeline, когда путь отображения установлен на Продолжение, в проходе с LightMode значение тега ForwardBase.

Unity предоставляет только основные данные датчика направленного света и окружающего/света для этого пропуска. Это означает, что данные неважных светов не передаются в вертикальный свет или сферические гармонические изменения шейдера. См. Путь прямого отображения для деталей.

Пример

Shader "Examples/ExamplePassFlag"
{
    SubShader
    {
        Pass
        {    
              Tags { "LightMode" = "ForwardBase" "PassFlags" = "OnlyDirectional" }
            
              // The rest of the code that defines the Pass goes here.
        }
    }
}

RequireOptions метка

В Built-in Render Pipeline тег RequireOptions Pass включает или отключает Pass в зависимости от настроек проекта.

Значение Функция
SoftVegetation Отображать этот Пропуск только если включено QualitySettings-softVegetation.

Дополнительные ресурсы