// Update is called once per frame void FixedUpdate() { Vector2 averagePos = VectorFunctions.Midpoint(toFollow); //take the average pos and lerp towards it; add the offset afterward transform.position = Vector3.Lerp(transform.position, new Vector3(averagePos.x, averagePos.y, transform.position.z), lerpAmount) + offset; }