# Lerp(Vector2, Vector2, float)

> Linearly interpolates between vectors a and b by t.

## Definition

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

```csharp
public static Vector2 Lerp(Vector2 a, Vector2 b, float t)
```

### Parameters

**** (\[Vector2]\(/engine/6000.0/script-reference/unityengine/vector2)): The first vector to interpolate between.**** (\[Vector2]\(/engine/6000.0/script-reference/unityengine/vector2)): The second vector to interpolate between.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): The amount to interpolate between.

### Returns

| Type                                                              | Description                                                                                                                              |
| ----------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md) | When `t` is equal to 0, returns `a`. When `t` is equal to 1, returns `b`. When `t` is equal to 0.5, returns the midpoint of `a` and `b`. |

### Remarks

The parameter `t` is clamped to the range \[0, 1].

When t = 0 returns a.

When t = 1 return b.

When t = 0.5 returns the midpoint of a and b.

Additional Resources: [Vector2.LerpUnclamped](/engine/6000.0/script-reference/unityengine/vector2/lerpunclamped.md).

### Examples

```csharp
using UnityEngine;

public class Example : MonoBehaviour
{
    public Vector2 destination;

    void Update()
    {
        //Moves the GameObject from it's current position to destination over time
        transform.position = Vector2.Lerp(transform.position, destination, Time.deltaTime);
    }
}
```
