public Tween(float duration, EasingType easingType, EasingPhase easingPhase, System.Action <float> applyTransition, System.Action endTransition = null) { this.duration = duration; this.easingType = easingType; this.easingPhase = easingPhase; this.applyTransition = applyTransition; this.endTransition = endTransition; }
/// <summary> /// Get the easing fuction. /// </summary> /// <returns>The easing fuction.</returns> /// <param name="type">Easing type.</param> /// <param name="phase">Easing phase.</param> public static EasingFunction GetEasingFuction(EasingType type, EasingPhase phase) { return(EasingFunctions[(int)type * 3 + (int)phase]); }
/// <summary> /// Calculate the eased value from 0 to 1. /// </summary> /// <param name="type">Easing type.</param> /// <param name="phase">Easing phase.</param> /// <param name="time">Current time.</param> /// <param name="duration">Total duration.</param> public static float Ease(EasingType type, EasingPhase phase, double time, double duration = 1) { return((float)GetEasingFuction(type, phase)(0, 1, time, duration)); }