# IsSupported(int)

> Allows you to check whether the current end user device supports the features required to run the specified compute shader kernel.

## Definition

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

```csharp
public bool IsSupported(int kernelIndex)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel to query.

### Returns

| Type                                                          | Description                                                                                          |
| ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | True if the specified compute kernel is able to run on the current end user device, false otherwise. |

### Remarks

The result of this call depends on which hardware requirements the compute shader in question is expected to rely on (as defined by the `#pragma require <requirement_a> <requirement_b> <requirement_c> ...` shader syntax). This method implicitly refers to the compute shader variant defined by the set of currently enabled shader keywords (the variant that would be run if [ComputeShader.Dispatch](/engine/6000.5/script-reference/unityengine/computeshader/dispatch.md) were called instead). This means that when the source code of the shader in question contains per-keyword requirements defined using the '#pragma require KEYWORD\_A KEYWORD\_B ... : \<requirement\_a> \<requirement\_b> \<requirement\_c>...' syntax the result of [ComputeShader.IsSupported](/engine/6000.5/script-reference/unityengine/computeshader/issupported.md) might depend on which shader keywords are enabled.

Additional Resources: Shader variants and keywords, [Declaring and using shader keywords in HLSL](/engine/6000.5/manual/materials-and-shaders/shaders/writing-custom/shader-writing/sl-multiple-program-variants.md), [Targeting shader models and GPU features in HLSL](/engine/6000.5/manual/materials-and-shaders/shaders/writing-custom/shader-writing/writing-shader-tags/sl-shader-compile-targets.md).
