表示在着色器源文件中声明的着色器关键字。
着色器关键字决定 Unity 使用哪些着色器变体。您可以使用 LocalKeyword
来启用、禁用或检查 **局部** 着色器关键字的状态。有关使用局部着色器关键字和 全局着色器关键字 以及它们之间如何交互的信息,请参阅 使用 C# 脚本使用着色器关键字。
当您在 Shader 或 ComputeShader 的源文件中声明着色器关键字时,Unity 会使用 LocalKeyword
表示该关键字,并将其存储在 LocalKeywordSpace 中。
对于 Shader
LocalKeywordSpace
,请使用 Material.shader 访问材质使用的 Shader,然后使用 Shader.keywordSpace。LocalKeywordSpace
,请使用 ComputeShader.keywordSpace。此外,您还可以使用 CommandBuffer
启用或禁用局部或全局关键字。为此,请使用 CommandBuffer.SetKeyword、CommandBuffer.EnableKeyword 或 CommandBuffer.DisableKeyword。
注意:LocalKeyword
特定于单个 Shader 或 ComputeShader 实例。您不能将其与其他 Shader 或 ComputeShader 实例一起使用,即使它们使用相同的 name
声明关键字。
其他资源:着色器变体和关键字、GlobalKeyword。
isDynamic | 指定此局部着色器关键字是否用于动态分支(只读)。 |
isOverridable | 此局部着色器关键字是否可以被全局着色器关键字覆盖。(只读)。 |
isValid | 指定此局部着色器关键字是否有效(只读)。 |
name | 着色器关键字的名称(只读)。 |
type | 着色器关键字的类型(只读)。 |
LocalKeyword | 初始化并返回一个 LocalKeyword 结构体,该结构体表示给定着色器的现有局部着色器关键字。 |
operator != | 如果着色器关键字不同,则返回 true。否则,返回 false。 |
operator == | 如果着色器关键字相同,则返回 true。否则,返回 false。 |