# InverseTransformVectors

> Transforms the vector x, y, z from world space to local space writing the transformed positions to a possibly different location. The opposite of Transform.TransformVector.

## Definition

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

## InverseTransformVectors(ReadOnlySpan\<Vector3>, Span\<Vector3>)

Transforms the vector x, y, z from world space to local space writing the transformed positions to a possibly different location. The opposite of [Transform.TransformVector](/engine/6000.0/script-reference/unityengine/transform/transformvector.md).

```csharp
public void InverseTransformVectors(ReadOnlySpan<Vector3> vectors, Span<Vector3> transformedVectors)
```

### Parameters

**** (\[ReadOnlySpan\<Vector3>]\(https\://learn.microsoft.com/dotnet/api/system.readonlyspan-1)): The vectors to be transformed, these vectors are not modified by the function unless the transformedVectors span overlaps.**** (\[Span\<Vector3>]\(https\://learn.microsoft.com/dotnet/api/system.span-1)): Receives the transformed vectors, must be the same length as vectors otherwise an exception will be thrown.  If this span overlaps vectors other than representing the exact same elements the behaviour is undefined.

### Remarks

This operation is not affected by position of the transform but it is affected by scale.The transformed vectors may have different lengths than the originals.

Additional Resources:[Transform.TransformVectors](/engine/6000.0/script-reference/unityengine/transform/transformvectors.md), [Transform.InverseTransformVector](/engine/6000.0/script-reference/unityengine/transform/inversetransformvector.md), [Transform.InverseTransformPoint](/engine/6000.0/script-reference/unityengine/transform/inversetransformpoint.md), [Transform.InverseTransformDirection](/engine/6000.0/script-reference/unityengine/transform/inversetransformdirection.md).

## InverseTransformVectors(Span\<Vector3>)

Transforms multiple vectors from world space to local space overwriting each original position with the transformed version. The opposite of [Transform.TransformVectors](/engine/6000.0/script-reference/unityengine/transform/transformvectors.md).

```csharp
public void InverseTransformVectors(Span<Vector3> vectors)
```

### Parameters

**** (\[Span\<Vector3>]\(https\://learn.microsoft.com/dotnet/api/system.span-1)): The vectors to be transformed, each is replaced by the transformed version.

### Remarks

This operation is not affected by position of the transform but it is affected by scale. The transformed vectors may have different lengths than the originals.

Additional Resources:[Transform.TransformVectors](/engine/6000.0/script-reference/unityengine/transform/transformvectors.md), [Transform.InverseTransformVector](/engine/6000.0/script-reference/unityengine/transform/inversetransformvector.md), [Transform.InverseTransformPoint](/engine/6000.0/script-reference/unityengine/transform/inversetransformpoint.md), [Transform.InverseTransformDirection](/engine/6000.0/script-reference/unityengine/transform/inversetransformdirection.md).
