shaderKeywords
An array containing names of the local shader keywords that are currently enabled for this compute shader.
Read time 1 minuteLast updated 4 days ago
Definition
- Type: Property
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
public string[] shaderKeywords { get; set; }
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.
Note: It is more efficient to use ComputeShader.enabledKeywords, which returns an array of LocalKeyword structs.
This example prints the names of all currently enabled local shader keywords for a compute shader.
using UnityEngine;using UnityEngine.Rendering;public class Example : MonoBehaviour{ public ComputeShader computeShader; private void Start() { foreach (var localKeywordName in computeShader.shaderKeywords) { Debug.Log("Local shader keyword " + localKeywordName + " is currently enabled"); } }}
Additional Resources: Shader variants and keywords, LocalKeyword, GlobalKeyword, ComputeShader.EnableKeyword, ComputeShader.DisableKeyword, ComputeShader.SetKeyword, ComputeShader.keywordSpace, ComputeShader.IsKeywordEnabled, ComputeShader.enabledKeywords.