# Translate

> Creates a translation matrix.

## Definition

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

## Translate(Vector3)

Creates a translation matrix.

```csharp
public static Matrix4x4 Translate(Vector3 vector)
```

### Parameters

**** (\[Vector3]\(/engine/6000.5/script-reference/unityengine/vector3)):&#x20;

### Returns

| Type                                                                  | Description |
| --------------------------------------------------------------------- | ----------- |
| [Matrix4x4](/engine/6000.5/script-reference/unityengine/matrix4x4.md) |             |

### Remarks

```csharp
// Translate, rotate and scale a mesh. Try varying
// the parameters in the inspector while running
// to see the effect they have.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public Vector3 translation;
    private MeshFilter mf;
    private Vector3[] origVerts;
    private Vector3[] newVerts;

    void Start() {
        mf = GetComponent<MeshFilter>();
        origVerts = mf.mesh.vertices;
        newVerts = new Vector3[origVerts.Length];
    }

    void Update() {
        Matrix4x4 m = Matrix4x4.Translate(translation);
        int i = 0;
        while (i < origVerts.Length) {
            newVerts[i] = m.MultiplyPoint3x4(origVerts[i]);
            i++;
        }
        mf.mesh.vertices = newVerts;
    }
}
```

Additional Resources: [Matrix4x4.TRS](/engine/6000.5/script-reference/unityengine/matrix4x4/trs.md), [Matrix4x4.Rotate](/engine/6000.5/script-reference/unityengine/matrix4x4/rotate.md), [Matrix4x4.Scale](/engine/6000.5/script-reference/unityengine/matrix4x4/scale.md), [Matrix4x4.SetTRS](/engine/6000.5/script-reference/unityengine/matrix4x4/settrs.md) functions.

## Translate(Vector3)

Creates a translation matrix.

```csharp
public static Matrix4x4 Translate(in Vector3 vector)
```

### Parameters

**** (\[Vector3]\(/engine/6000.5/script-reference/unityengine/vector3)):&#x20;

### Returns

| Type                                                                  | Description |
| --------------------------------------------------------------------- | ----------- |
| [Matrix4x4](/engine/6000.5/script-reference/unityengine/matrix4x4.md) |             |

### Remarks

```csharp
// Translate, rotate and scale a mesh. Try varying
// the parameters in the inspector while running
// to see the effect they have.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public Vector3 translation;
    private MeshFilter mf;
    private Vector3[] origVerts;
    private Vector3[] newVerts;

    void Start() {
        mf = GetComponent<MeshFilter>();
        origVerts = mf.mesh.vertices;
        newVerts = new Vector3[origVerts.Length];
    }

    void Update() {
        Matrix4x4 m = Matrix4x4.Translate(translation);
        int i = 0;
        while (i < origVerts.Length) {
            newVerts[i] = m.MultiplyPoint3x4(origVerts[i]);
            i++;
        }
        mf.mesh.vertices = newVerts;
    }
}
```

Additional Resources: [Matrix4x4.TRS](/engine/6000.5/script-reference/unityengine/matrix4x4/trs.md), [Matrix4x4.Rotate](/engine/6000.5/script-reference/unityengine/matrix4x4/rotate.md), [Matrix4x4.Scale](/engine/6000.5/script-reference/unityengine/matrix4x4/scale.md), [Matrix4x4.SetTRS](/engine/6000.5/script-reference/unityengine/matrix4x4/settrs.md) functions.
