# Vector3.Lerp

## Overload 1

```csharp
static Vector3 Lerp(Vector3 a, Vector3 b, float frac, bool clamp = True)
```

Performs linear interpolation between 2 given vectors.

### Parameters

- `a` (`Vector3`): Vector A
- `b` (`Vector3`): Vector B
- `frac` (`float`): Fraction, where 0 would return Vector A, 0.5 would return a point between the 2 vectors, and 1 would return Vector B.
- `clamp` (`bool`), default `True`: Whether to clamp the fraction argument between [0,1]

### Returns

`Vector3`

## Overload 2

```csharp
static Vector3 Lerp(in Vector3 a, in Vector3 b, Vector3 frac, bool clamp = True)
```

Performs linear interpolation between 2 given vectors, with separate fraction for each vector component.

### Parameters

- `in a` (`Vector3`): Vector A
- `in b` (`Vector3`): Vector B
- `frac` (`Vector3`): Fraction for each axis, where 0 would return Vector A, 0.5 would return a point between the 2 vectors, and 1 would return Vector B.
- `clamp` (`bool`), default `True`: Whether to clamp the fraction argument between [0,1] on each axis

### Returns

`Vector3`

Declared in [Vector3](/api/Vector3).
Assembly: `Sandbox.System`.
