public float In(float time)
        {
            switch (type)
            {
            case AnimationEasingType.LinearEasing: return(time);

            case AnimationEasingType.QuadraticEasing: return(time * time);

            case AnimationEasingType.CubicEasing: return(time * time * time);

            case AnimationEasingType.QuarticEasing: return(Mathf.Pow(time, 4));

            case AnimationEasingType.QuinticEasing: return(Mathf.Pow(time, 5));

            case AnimationEasingType.SinusoidalEasing: return(Mathf.Sin((time - 1) * (Mathf.PI / 2)) + 1);

            case AnimationEasingType.ExponentialEasing: return(Mathf.Pow(2, 10 * (time - 1)));

            case AnimationEasingType.CircularEasing: return(-1 * Mathf.Sqrt(1 - time * time) + 1);

            case AnimationEasingType.BounceEasing: return(1 - Out(1 - time));

            case AnimationEasingType.BackEasing: return(EasingHelper.BackIn(time));

            case AnimationEasingType.ElasticEasing: return(ElasticIn(time));
            }
            return(time);
        }