Блок шейдера в ссылке ShaderLab
Объект Shader — это специфическая концепция Unity; это оболочка для программ шейдеров и другой информации. Он позволяет определить несколько программ шейдеров в одном файле и сообщить Unity, как их использовать.
Объект Shader имеет вложенную структуру; он организует информацию в структуры, называемые SubShaders и Passes.
В блоке Shader вы можете:
- Определите свойства материала, используя блок
Properties. См. ShaderLab: определение свойств материала. - Определите один или несколько SubShaders, используя блок
SubShader. См. ShaderLab: определение SubShader. - Назначить пользовательский редактор, который определяет, как ассет шейдера будет отображаться в Unity Editor. По желанию, вы можете назначить различные пользовательские редакторы для различных конвейеров рендеринга. См. ShaderLab: назначение пользовательских редакторов.
- Назначьте резервный объект Shader, используя блок
Fallback. См. ShaderLab: назначение резервного объекта.
Совместимость конвейера отображения
| Название особенности | Universal Render Pipeline (URP) | High Definition Render Pipeline (HDRP) | Изготовленный на заказ SRP | Built-in Render Pipeline |
|---|---|---|---|---|
| ShaderLab: Блок шейдера | Да | Да | Да | Да |
Синтаксис
| Подпись | Функция |
|---|---|
Shader "<name>"{<optional: Material properties><One or more SubShader definitions><optional: custom editor><optional: fallback>} |
Определяет объект Shader с заданным именем. |