Version: 2021.3
Shader 类
着色器编译

着色器资源

着色器资源是 Unity 项目中的资源,它定义 Shader 对象。它是一个扩展名为 .shader 的文本文件。它包含着色器代码

创建新的着色器资源

要创建新着色器资源,请使用主菜单或 Project View 上下文菜单中的 Assets > Create > Shader

Inspector 参考

在 Unity 项目中选择着色器资源时,Inspector 会显示有关它定义的 Shader 对象的基本信息。它还提供用于编译和检查已编译代码的控件。

着色器检视面板 (Shader Inspector)。
着色器检视面板 (Shader Inspector)。

Import Settings

Inspector 的 Import settings 部分用于设置着色器资源的默认纹理。每当使用此着色器创建新材质时,都会自动分配这些纹理。

Imported object

Inspector 的 Imported object 用于查看和编辑与 Shader 对象本身相关的设置,以及着色器编译器对它的处理方式。

着色器编译弹出菜单。
着色器编译弹出菜单。

对于表面着色器,__Show generated code__ 按钮显示 Unity 从您的简化源文件生成的代码。如果要自定义生成的代码,只需将其复制并粘贴到着色器源文件中。

使用 Compile and show code 弹出菜单可以:

  • 为选定的图形 API 手动编译所有着色器变体。在 Unity 编辑器中,着色器在构建之前不会为所有图形 API 编译所有着色器变体。可以手动强制执行此操作以检查错误。有关着色器编译器的作用和时间的更多信息,请参阅着色器编译
  • 面向所选平台检查已编译的着色器代码。此功能在优化着色器性能时非常有用;通常情况下,您会想知道生成了多少低级指令。可以将生成的代码粘贴到 GPU 着色器性能分析工具(如 AMD GPU ShaderAnalyzerPVRShaderEditor)中。

The Preprocess Only checkbox lets you view the preprocessed source for that shader asset.

Shader 类
着色器编译