# SetPositions

> Sets the positions of all vertices in the trail.

## Definition

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

## SetPositions(Vector3\[])

Sets the positions of all vertices in the trail.

```csharp
public void SetPositions(Vector3[] positions)
```

### Parameters

**** (\[Vector3\[]]\(/engine/6000.6/script-reference/unityengine/vector3)): The array of positions to set.

### Remarks

You can only use this method to modify existing positions in the Trail. You cannot use it to add new positions.

When setting all positions, use this method instead of [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) because it is more efficient to set all positions using a single command than to set each position individually.

Additional Resources: [TrailRenderer.positionCount](/engine/6000.6/script-reference/unityengine/trailrenderer/positioncount.md) property.

Additional Resources: [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) function.

## SetPositions(NativeArray\<Vector3>)

Sets the positions of all vertices in the trail.

```csharp
public void SetPositions(NativeArray<Vector3> positions)
```

### Parameters

**** (\[NativeArray\<Vector3>]\(/engine/6000.6/script-reference/unity/collections/nativearray1)): The array of positions to set.

### Remarks

You can only use this method to modify existing positions in the Trail. You cannot use it to add new positions.

When setting all positions, use this method instead of [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) because it is more efficient to set all positions using a single command than to set each position individually.

Additional Resources: [TrailRenderer.positionCount](/engine/6000.6/script-reference/unityengine/trailrenderer/positioncount.md) property.

Additional Resources: [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) function.

## SetPositions(NativeSlice\<Vector3>)

Sets the positions of all vertices in the trail.

```csharp
public void SetPositions(NativeSlice<Vector3> positions)
```

### Parameters

**** (\[NativeSlice\<Vector3>]\(/engine/6000.6/script-reference/unity/collections/nativeslice1)): The array of positions to set.

### Remarks

You can only use this method to modify existing positions in the Trail. You cannot use it to add new positions.

When setting all positions, use this method instead of [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) because it is more efficient to set all positions using a single command than to set each position individually.

Additional Resources: [TrailRenderer.positionCount](/engine/6000.6/script-reference/unityengine/trailrenderer/positioncount.md) property.

Additional Resources: [TrailRenderer.SetPosition](/engine/6000.6/script-reference/unityengine/trailrenderer/setposition.md) function.
