# SetComputeMatrixArrayParam

> Adds a command to set a matrix array parameter on a ComputeShader.

## Definition

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

## SetComputeMatrixArrayParam(ComputeShader, int, Matrix4x4\[])

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

```csharp
public void SetComputeMatrixArrayParam(ComputeShader computeShader, int nameID, Matrix4x4[] values)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.7/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.7/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Property name ID. Use [Shader.PropertyToID](/engine/6000.7/script-reference/unityengine/shader/propertytoid.md) to get this ID.**** (\[Matrix4x4\[]]\(/engine/6000.7/script-reference/unityengine/matrix4x4)): Value to set.

### Remarks

Constant buffers are shared between all kernels in a single compute shader asset. Therefore this function affects all kernels in the passed ComputeShader.

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

## SetComputeMatrixArrayParam(ComputeShader, string, Matrix4x4\[])

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

```csharp
public void SetComputeMatrixArrayParam(ComputeShader computeShader, string name, Matrix4x4[] values)
```

### Parameters

**** (\[ComputeShader]\(/engine/6000.7/script-reference/unityengine/computeshader)): [ComputeShader](/engine/6000.7/script-reference/unityengine/computeshader.md) to set parameter for.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Name of the variable in shader code.**** (\[Matrix4x4\[]]\(/engine/6000.7/script-reference/unityengine/matrix4x4)): Value to set.

### Remarks

Constant buffers are shared between all kernels in a single compute shader asset. Therefore this function affects all kernels in the passed ComputeShader.

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