Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


SetKeyword(in GlobalKeyword, bool)

Sets the state of a global shader keyword.
Read time 1 minuteLast updated 4 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

SetKeyword(GlobalKeyword, bool)

public static void SetKeyword(in GlobalKeyword keyword, bool value)

Parameters

The GlobalKeyword to enable or disable.

value

The desired keyword state.

Remarks

Shader keywords determine which shader variants Unity uses. For information on working with local shader keywords and global shader keywords and how they interact, see Using shader keywords with C# scripts.
When
value
is
true
, this function calls Shader.EnableKeyword. Otherwise, it calls Shader.DisableKeyword.
The following example creates and caches a
GlobalKeyword
, and provides a function to toggle its state.
using UnityEngine;using UnityEngine.Rendering;public class GlobalKeywordExample : MonoBehaviour{ private GlobalKeyword exampleFeatureKeyword; private void Start() { // Create and cache the GlobalKeyword exampleFeatureKeyword = GlobalKeyword.Create("EXAMPLE_FEATURE_ON"); } public void ToggleExampleFeature() { // Get the current state of the global keyword bool state = Shader.IsKeywordEnabled(exampleFeatureKeyword); // Toggle the state Shader.SetKeyword(exampleFeatureKeyword, !state); }}