BerndNK/TweenSharp

Customizable easing functions

Opened this issue · 0 comments

I want an easy way to tweak the various easing functions. For example Backeasing. I want to be able to set a double value for how much the tweened objects overflows the target value.

Ideally a syntax similar to this:

point.Tween(x => x.X).To(10).In(0.5).Ease(Easing.BackEaseIn(0.5));

With this, the variation easing methods should be deleted.

BackEaseInStrong(),BackEaseOutSuperStrong(),BackEaseInOutStrong()

The previous calls without parenthesis should still work:

point.Tween(x => x.X).To(10).In(0.5).Ease(Easing.BackEaseIn);

As an implementation suggestion, provide the existing methods as properties and use the methods to create custom Func<>'s:

public static EasingFunction BackEaseIn => BackEaseIn(0.5);

public static EasingFunction BackEaseIn(double strength);