# SetVector

> Sets the value for a vector uniform.

## Definition

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

## SetVector(int, Vector4)

Sets the value for a vector uniform.

```csharp
public void SetVector(int nameID, Vector4 val)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The ID of the property as given by Shader.PropertyToID.**** (\[Vector4]\(/engine/6000.6/script-reference/unityengine/vector4)): The vector to set.

### Remarks

Only shaders defined in the .raytrace file can access the vector you designate as the argument for this method. To make this vector accessible to all ray tracing shader types (closest hit, any hit, miss, etc.), call the [Shader.SetGlobalVector](/engine/6000.6/script-reference/unityengine/shader/setglobalvector.md) method instead.

## SetVector(string, Vector4)

Sets the value for a vector uniform.

```csharp
public void SetVector(string name, Vector4 val)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The name of the property being set.**** (\[Vector4]\(/engine/6000.6/script-reference/unityengine/vector4)): The vector to set.

### Remarks

Only shaders defined in the .raytrace file can access the vector you designate as the argument for this method. To make this vector accessible to all ray tracing shader types (closest hit, any hit, miss, etc.), call the [Shader.SetGlobalVector](/engine/6000.6/script-reference/unityengine/shader/setglobalvector.md) method instead.
