keyword | 要启用的 GlobalKeyword。 |
keyword | 要启用的 GlobalKeyword 的名称。 |
启用全局着色器关键字。
着色器关键字决定 Unity 使用哪些着色器变体。有关使用 局部着色器关键字 和 全局着色器关键字 以及它们如何交互的信息,请参阅 使用 C# 脚本的着色器关键字。
如果传递一个字符串,并且不存在具有给定名称的 GlobalKeyword,则此函数会自动创建它。
采用字符串作为参数的此函数版本比采用 GlobalKeyword 的版本速度慢。如果您多次调用此函数,最佳做法是创建一个 GlobalKeyword 结构,缓存它,然后使用它。
关键字区分大小写。
以下示例创建了一个名为 EXAMPLE_FEATURE_ON
的 GlobalKeyword
结构,并将其缓存。它提供了启用和禁用它的函数。
using UnityEngine; using UnityEngine.Rendering;
public class GlobalKeywordExample : MonoBehaviour { private GlobalKeyword exampleFeatureKeyword;
private void Start() { exampleFeatureKeyword = GlobalKeyword.Create("EXAMPLE_FEATURE_ON"); }
public void EnableExampleFeature() { Shader.EnableKeyword(exampleFeatureKeyword); }
public void DisableExampleFeature() { Shader.DisableKeyword(exampleFeatureKeyword); } }