Easing functions make any movement look pretty. So you’re going to need them at some point.
And implementations are so widely available that you don’t have an excuse not to use them. I found this ActionScript reference to be very helpful in creating my own C# easing functions library, which I’d like to share… so here it is!
First line is EaseIn, second is EaseOut, third is EaseInOut
Download
Easing.cs (4 kb – C# class)
It’s a static class and it’s framework-agnostic, completely standalone. The screenshot you see above is my TV3D test class. I won’t post the whole sample, but here’s the code if you want to see how I used it. In order to run, one would need a version of my components framework that I haven’t released yet.
I also didn’t implement each and every function that Robert Penner presents, just the ones I figured I’d use. Bounce and Elastic sound like physics to me, I don’t think I’d use easing functions to achieve that.

Pingback: Squaring The Thumbsticks | The Instruction Limit
“It’s a static class and it’s framework-agnostic, completely standalone.”
This is not true. You use the XNA specific MathHelper class.
Nope, a MathHelper static class stub is right there in the code file. I just named it the same as the XNA class so you can discard it if you do use XNA, but it doesn’t depend on anything.
Hey there Renaud. I was wondering how one can get a hold of your unreleased component that will allow me to use your ported easing functions. I would love to try it out. Thanks!
Hemm, the link is right in the middle of the post! Here it is again for your convenience, but I doubt it could be clearer. http://theinstructionlimit.com/wp-content/uploads/2009/07/Easing.cs
Pingback: Unity curved path following with easing « Mike Talbot's Blog