Merge pull request #1796 from Azaezel/notSoEasy

retooled circular ease methods
This commit is contained in:
Areloch 2016-10-18 22:41:31 -05:00 committed by GitHub
commit 65f25cb0e6

View file

@ -289,13 +289,16 @@ inline F32 mEaseInOutExpo(F32 t, F32 b, F32 c, F32 d)
// t: current time, b: beginning value, c: change in position, d: duration
inline F32 mEaseInCirc (F32 t, F32 b, F32 c, F32 d)
{
return -c * (mSqrt(1 - (t/=d)*t) - 1) + b;
t/=d;
return -c * (mSqrt(1 - (t)*t) - 1) + b;
};
// circular easing out - decelerating to zero velocity
inline F32 mEaseOutCirc (F32 t, F32 b, F32 c, F32 d)
{
return c * mSqrt(1 - (t=t/d-1)*t) + b;
t/=d;
t--;
return c * mSqrt(1 - (t)*t) + b;
};
// circular easing in/out - acceleration until halfway, then deceleration
@ -303,8 +306,8 @@ inline F32 mEaseInOutCirc(F32 t, F32 b, F32 c, F32 d)
{
if ((t/=d/2) < 1)
return -c/2 * (mSqrt(1 - t*t) - 1) + b;
return c/2 * (mSqrt(1 - (t-=2)*t) + 1) + b;
t-=2;
return c/2 * (mSqrt(1 - (t)*t) + 1) + b;
};