# SetComputeTextureParam

> Adds a command to set a texture parameter on a ComputeShader.

## Definition

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

## SetComputeTextureParam(ComputeShader, int, string, RenderTargetIdentifier)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, string name, RenderTargetIdentifier rt)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Name of the texture variable in shader code.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).

## SetComputeTextureParam(ComputeShader, int, int, RenderTargetIdentifier)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, int nameID, RenderTargetIdentifier rt)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Property name ID. Use [Shader.PropertyToID](/engine/6000.0/script-reference/unityengine/shader/propertytoid.md) to get this ID.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).

## SetComputeTextureParam(ComputeShader, int, string, RenderTargetIdentifier, int)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, string name, RenderTargetIdentifier rt, int mipLevel)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Name of the texture variable in shader code.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Optional mipmap level of the read-write texture.

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).

## SetComputeTextureParam(ComputeShader, int, int, RenderTargetIdentifier, int)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, int nameID, RenderTargetIdentifier rt, int mipLevel)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Property name ID. Use [Shader.PropertyToID](/engine/6000.0/script-reference/unityengine/shader/propertytoid.md) to get this ID.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Optional mipmap level of the read-write texture.

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).

## SetComputeTextureParam(ComputeShader, int, string, RenderTargetIdentifier, int, RenderTextureSubElement)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, string name, RenderTargetIdentifier rt, int mipLevel, RenderTextureSubElement element)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Name of the texture variable in shader code.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Optional mipmap level of the read-write texture.**** (\[RenderTextureSubElement]\(/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement)): Optional parameter that specifies the type of data to set from the RenderTexture.

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).

## SetComputeTextureParam(ComputeShader, int, int, RenderTargetIdentifier, int, RenderTextureSubElement)

Adds a command to set a texture parameter on a [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md).

```csharp
public void SetComputeTextureParam(ComputeShader computeShader, int kernelIndex, int nameID, RenderTargetIdentifier rt, int mipLevel, RenderTextureSubElement element)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.0/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.0/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Which kernel the texture is being set for. See [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Property name ID. Use [Shader.PropertyToID](/engine/6000.0/script-reference/unityengine/shader/propertytoid.md) to get this ID.**** (\[RenderTargetIdentifier]\(/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier)): Texture value or identifier to set, see [RenderTargetIdentifier](/engine/6000.0/script-reference/unityengine/rendering/rendertargetidentifier.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Optional mipmap level of the read-write texture.**** (\[RenderTextureSubElement]\(/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement)): Optional parameter that specifies the type of data to set from the RenderTexture.

### Remarks

Textures and buffers are set per-kernel. Use [ComputeShader.FindKernel](/engine/6000.0/script-reference/unityengine/computeshader/findkernel.md) to find kernel index by function name. Please note that the mipLevel parameter is ignored unless the shader specifies a read-write (unordered access) texture.

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: [RenderTextureSubElement.Color](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/color.md), [RenderTextureSubElement.Depth](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/depth.md), and [RenderTextureSubElement.Stencil](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement/stencil.md).

Additional Resources: [CommandBuffer.DispatchCompute](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/dispatchcompute.md), [CommandBuffer.SetComputeFloatParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparam.md), [CommandBuffer.SetComputeFloatParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputefloatparams.md), [CommandBuffer.SetComputeIntParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparam.md), [CommandBuffer.SetComputeIntParams](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputeintparams.md), [CommandBuffer.SetComputeMatrixParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixparam.md), [CommandBuffer.SetComputeMatrixArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputematrixarrayparam.md), [CommandBuffer.SetComputeVectorParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorparam.md), [CommandBuffer.SetComputeVectorArrayParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputevectorarrayparam.md), [CommandBuffer.SetComputeBufferParam](/engine/6000.0/script-reference/unityengine/rendering/commandbuffer/setcomputebufferparam.md), [RenderTextureSubElement](/engine/6000.0/script-reference/unityengine/rendering/rendertexturesubelement.md).
