/// <summary> /// Calculate a Ease InOut from a pourcent /// </summary> /// <param name="linearStep">Pourcent on the ease</param> /// <param name="type">Easing Type</param> public static float EaseInOut(float linearStep, EasingType type) { switch (type) { case EasingType.Step: return(Mathf.Round(linearStep)); default: case EasingType.Linear: return(linearStep); case EasingType.Sine: return(Sine.EaseInOut(linearStep)); case EasingType.Quadratic: return(Power.EaseInOut(linearStep, 2)); case EasingType.Cubic: return(Power.EaseInOut(linearStep, 3)); case EasingType.Quartic: return(Power.EaseInOut(linearStep, 4)); case EasingType.Quintic: return(Power.EaseInOut(linearStep, 5)); case EasingType.Elastic: return(Elastic.EaseInOut(linearStep)); case EasingType.Bounce: return(Bounce.EaseInOut(linearStep)); case EasingType.Back: return(Back.EaseInOut(linearStep)); case EasingType.Expo: return(Expo.EaseInOut(linearStep)); case EasingType.Circ: return(Circ.EaseInOut(linearStep)); } }
public static float EaseInOut(float linearStep, EaseType type) { switch (type) { case EaseType.None: return(1); case EaseType.Linear: return(linearStep); case EaseType.Sine: return(Sine.EaseInOut(linearStep)); case EaseType.Quad: return(Power.EaseInOut(linearStep, 2)); case EaseType.Cubic: return(Power.EaseInOut(linearStep, 3)); case EaseType.Quartic: return(Power.EaseInOut(linearStep, 4)); case EaseType.Quintic: return(Power.EaseInOut(linearStep, 5)); case EaseType.Circ: return(Circ.EaseInOut(linearStep)); case EaseType.Bounce: return(Bounce.EaseInOut(linearStep)); case EaseType.Back: return(Back.EaseInOut(linearStep)); case EaseType.Elastic: return(Elastic.EaseInOut(linearStep)); } Debug.LogError("Um."); return(0); }