public static FloatL LerpAngle(FloatL a, FloatL b, FloatL t) { FloatL num = FixPointMath.Repeat(b - a, 360f); if (num > 180f) { num -= 360f; } return(a + num * FixPointMath.Clamp01(t)); }
public static FloatL DeltaAngle(FloatL current, FloatL target) { FloatL num = FixPointMath.Repeat(target - current, 360f); if (num > 180f) { num -= 360f; } return(num); }
public static FloatL PingPong(FloatL t, FloatL length) { t = FixPointMath.Repeat(t, length * 2f); return(length - FixPointMath.Abs(t - length)); }