Unity 6.3
0 онлайн 20 гостей 3 в системе
Вход

Теги SubShader в ссылке ShaderLab

Эта страница содержит информацию об использовании блока Tags в коде ShaderLab для назначения тегов SubShader.

Информацию об определении SubShader см. ShaderLab: определение SubShader. Информацию о том, как работает объект Shader, и о взаимоотношениях между объектами Shader, SubShaders и Passes, см. Объекты шейдера.

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

Название особенности Universal Render Pipeline (URP) High Definition Render Pipeline (HDRP) Изготовленный на заказ SRP Built-in Render Pipeline
ShaderLab: SubShader Блок тегов Да Да Да Да
ShaderLab: RenderPipeline SubShader тег Да Да Нет Нет
ShaderLab: Очередь SubShader метка Да Да

Да

Примечание: в пользовательском SRP можно определить свой собственный порядок отображения и выбрать, использовать очереди отображения или нет. Дополнительные сведения см. в DrawingSettings и SortingCriteria.
Да
ShaderLab: RenderType SubShader тег Да Да Да Да
ShaderLab: DisableBatching SubShader тег Да Да Да Да
ShaderLab: IgnoreProjector SubShader тег Нет Нет Нет Да
ShaderLab: ForceNoShadowCasting SubShader тег Да Да

Это отключает обычные тени, но не влияет на тени контакта.
Да Да
ShaderLab: PreviewType SubShader тег Да Да Да Да

Синтаксис

Подпись Функция
Tags { “[name1]” = “[value1]” “[name2]” = “[value2]”} Применяет заданные теги к SubShader.

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

RenderPipeline метка

Подпись Функция
“RenderPipeline" = " [название] " Сообщает Unity, совместим ли этот SubShader с URP или HDRP.
Параметр Значение Функция
[название] UniversalPipeline Этот SubShader совместим только с URP.
HDRenderPipeline Этот SubShader совместим только с HDRP.
(любая другая значение или не указана) Этот SubShader не совместим с URP или HDRP.

Тег очереди

Подпись Функция
«Очередь» = [имя очереди] Использовать именованную очередь отображения.
" Очередность " = [имя очереди] + [смещение] Использовать безымянную очередь, на заданном смещении от именованной очереди.

Примером, когда это полезно, является прозрачная вода, которую следует рисовать после непрозрачных объектов, но перед прозрачными объектами.
Подпись Значение Функция
[имя очереди] 1. Справочная информация Указывает очередь фонового отображения.
Геометрия Указывает очередь отображения геометрии.
AlphaTest Указывает очередь отображения AlphaTest.
прозрачный Указывает очередь отображения прозрачных изображений.
Оверлей Указывает очередь отображения накладок.
[Оффис] целое число Указывает индекс, при котором Unity отображает неименованные очереди относительно именованных очередей.

RenderType метка

Подпись Функция
“RenderType” = “[renderType]” Установите значение RenderType для этого SubShader.
Подпись Значение Функция
[renderType] Струна Для этого параметра нет фиксированного набора значений. Чтобы определить значение RenderType любого заменяемого SubShader, откройте файл исходного кода этого шейдера.

Теги SubShader RenderType для устаревших встроенных шейдеров Unity перечислены на странице замены шейдеров.

Для пользовательских SubShader также можно создавать собственные значения.

ForceNoShadowCasting метка

Подпись Функция
“ForceNoShadowCasting” = “[state]” Предотвращать ли отбрасывание теней (и иногда их получение) для всех геометрий, использующих SubShader.
Подпись Значение Функция
[state] Истинно Unity запрещает геометрии в этом SubShader отбрасывать тени.

В Встроенном в Render Pipeline, с путями отображения Forward или Legacy Vertex Lit, Unity также запрещает геометрии в этом SubShader получать тени.

В HDRP это не запрещает геометрии отбрасывать контактные тени.
Ложные Unity не запрещает геометрии в этом SubShader отбрасывать или получать тени. Это значение по умолчанию.

DisableBatching метка

Подпись Функция
“DisableBatching” = “[state]” Предотвращает ли Unity динамическое пакетирование для всех геометрий, использующих этот SubShader.
Подпись Значение Функция
[state] Истинно Unity предотвращает динамическое пакетирование для геометрии, использующей этот SubShader.
Ложные Unity не запрещает Динамическое пакетирование для геометрии, использующей этот SubShader. Это значение по умолчанию.
LODFading Unity предотвращает Динамическое Пакетирование для всех геометрий, которые являются частью LODGroup со значением Режима Смещения, которое не является None. В противном случае Unity не предотвращает Динамическое Пакетирование.

IgnoreProjector метка

Этот тег поддерживается только во Встроенном Render Pipeline.

Подпись Функция
“IgnoreProjector” = “[state]” Игнорирует ли Unity проекторы при отображении геометрии.
Подпись Значение Функция
[state] Истинно Unity игнорирует Projectors при отображении этой геометрии.
Ложные Unity не игнорирует Projectors при отображении этой геометрии. Это значение по умолчанию.

PreviewType метка

Тег PreviewType SubShader говорит Unity Editor как отобразить материал, который использует этот SubShader в Материале Inspector.

Подпись Функция
“PreviewType" = [форма] Какая форма используется Unity Editor для отображения предварительного просмотра материала, который использует этот SubShader.
Подпись Значение Функция
[форма] Сфера Отображать материал на сфере. Это значение по умолчанию.
Самолёт Отображение материала на плоскости.
Skybox Отображение материала на экране Skybox.

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