/// <summary>This returns a smooth point between the previous and current screen position based on a 0..1 progress value.</summary> public Vector2 GetSmoothScreenPosition(float t) { if (Snapshots.Count > 0 && Set == true) { var d = Snapshots[Mathf.Max(0, Snapshots.Count - 4)].ScreenPosition; var c = Snapshots[Mathf.Max(0, Snapshots.Count - 3)].ScreenPosition; var b = Snapshots[Mathf.Max(0, Snapshots.Count - 2)].ScreenPosition; var a = Snapshots[Mathf.Max(0, Snapshots.Count - 1)].ScreenPosition; return(LeanHelper.Hermite(d, c, b, a, t)); } return(Vector2.LerpUnclamped(LastScreenPosition, ScreenPosition, t)); }