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() { var exampleFeatureKeyword = GlobalKeyword.Create("EXAMPLE_FEATURE_ON"); }
public void EnableExampleFeature() { Shader.EnableKeyword(exampleFeatureKeyword); }
public void DisableExampleFeature() { Shader.DisableKeyword(exampleFeatureKeyword); } }