# DisableKeyword

> Adds a command to disable a global or local shader keyword.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Rendering](/engine/6000.6/script-reference/unityengine/rendering.md)
* **Assembly:** UnityEngine.CoreModule

## DisableKeyword(GlobalKeyword)

Adds a command to disable a global or local shader keyword.

```csharp
public void DisableKeyword(in GlobalKeyword keyword)
```

### Parameters

**** (\[GlobalKeyword]\(/engine/6000.6/script-reference/unityengine/rendering/globalkeyword)): The global or local shader keyword to disable.

### Remarks

Shader keywords determine which shader variants Unity uses. For information on working with [local shader keywords](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md) and [global shader keywords](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md) and how they interact, see [Using shader keywords with C# scripts](/engine/6000.6/manual/materials-and-shaders/shaders/writing-custom/shader-writing/sl-multiple-program-variants/shader-keywords-scripts.md).

Additional Resources: Shader variants and keywords, [CommandBuffer.SetKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/setkeyword.md), [CommandBuffer.EnableKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/enablekeyword.md), [GlobalKeyword](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md), [LocalKeyword](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md), [Shader.DisableKeyword](/engine/6000.6/script-reference/unityengine/shader/disablekeyword.md), [Material.DisableKeyword](/engine/6000.6/script-reference/unityengine/material/disablekeyword.md), [ComputeShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/computeshader/disablekeyword.md), [RayTracingShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/disablekeyword.md).

## DisableKeyword(Material, LocalKeyword)

Adds a command to disable a global or local shader keyword.

```csharp
public void DisableKeyword(Material material, in LocalKeyword keyword)
```

### Parameters

**** (\[Material]\(/engine/6000.6/script-reference/unityengine/material)): The material on which to disable the local shader keyword.**** (\[LocalKeyword]\(/engine/6000.6/script-reference/unityengine/rendering/localkeyword)): The global or local shader keyword to disable.

### Remarks

Shader keywords determine which shader variants Unity uses. For information on working with [local shader keywords](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md) and [global shader keywords](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md) and how they interact, see [Using shader keywords with C# scripts](/engine/6000.6/manual/materials-and-shaders/shaders/writing-custom/shader-writing/sl-multiple-program-variants/shader-keywords-scripts.md).

Additional Resources: Shader variants and keywords, [CommandBuffer.SetKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/setkeyword.md), [CommandBuffer.EnableKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/enablekeyword.md), [GlobalKeyword](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md), [LocalKeyword](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md), [Shader.DisableKeyword](/engine/6000.6/script-reference/unityengine/shader/disablekeyword.md), [Material.DisableKeyword](/engine/6000.6/script-reference/unityengine/material/disablekeyword.md), [ComputeShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/computeshader/disablekeyword.md), [RayTracingShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/disablekeyword.md).

## DisableKeyword(ComputeShader, LocalKeyword)

Adds a command to disable a global or local shader keyword.

```csharp
public void DisableKeyword(ComputeShader computeShader, in LocalKeyword keyword)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.6/script-reference/unityengine/computeshader)): The compute shader for which to disable the local shader keyword.**** (\[LocalKeyword]\(/engine/6000.6/script-reference/unityengine/rendering/localkeyword)): The global or local shader keyword to disable.

### Remarks

Shader keywords determine which shader variants Unity uses. For information on working with [local shader keywords](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md) and [global shader keywords](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md) and how they interact, see [Using shader keywords with C# scripts](/engine/6000.6/manual/materials-and-shaders/shaders/writing-custom/shader-writing/sl-multiple-program-variants/shader-keywords-scripts.md).

Additional Resources: Shader variants and keywords, [CommandBuffer.SetKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/setkeyword.md), [CommandBuffer.EnableKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/enablekeyword.md), [GlobalKeyword](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md), [LocalKeyword](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md), [Shader.DisableKeyword](/engine/6000.6/script-reference/unityengine/shader/disablekeyword.md), [Material.DisableKeyword](/engine/6000.6/script-reference/unityengine/material/disablekeyword.md), [ComputeShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/computeshader/disablekeyword.md), [RayTracingShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/disablekeyword.md).

## DisableKeyword(RayTracingShader, LocalKeyword)

Adds a command to disable a global or local shader keyword.

```csharp
public void DisableKeyword(RayTracingShader rayTracingShader, in LocalKeyword keyword)
```

### Parameters

**** (\[RayTracingShader]\(/engine/6000.6/script-reference/unityengine/rendering/raytracingshader)): The ray tracing shader for which to disable the local shader keyword.**** (\[LocalKeyword]\(/engine/6000.6/script-reference/unityengine/rendering/localkeyword)): The global or local shader keyword to disable.

### Remarks

Shader keywords determine which shader variants Unity uses. For information on working with [local shader keywords](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md) and [global shader keywords](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md) and how they interact, see [Using shader keywords with C# scripts](/engine/6000.6/manual/materials-and-shaders/shaders/writing-custom/shader-writing/sl-multiple-program-variants/shader-keywords-scripts.md).

Additional Resources: Shader variants and keywords, [CommandBuffer.SetKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/setkeyword.md), [CommandBuffer.EnableKeyword](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/enablekeyword.md), [GlobalKeyword](/engine/6000.6/script-reference/unityengine/rendering/globalkeyword.md), [LocalKeyword](/engine/6000.6/script-reference/unityengine/rendering/localkeyword.md), [Shader.DisableKeyword](/engine/6000.6/script-reference/unityengine/shader/disablekeyword.md), [Material.DisableKeyword](/engine/6000.6/script-reference/unityengine/material/disablekeyword.md), [ComputeShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/computeshader/disablekeyword.md), [RayTracingShader.DisableKeyword](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/disablekeyword.md).
