mirror of
https://github.com/Cardidi/dotween-upm-fork.git
synced 2025-12-21 01:36:05 +08:00
35 lines
832 B
C#
35 lines
832 B
C#
public static class GoEaseBounce
|
|
{
|
|
public static float EaseOut( float t, float b, float c, float d )
|
|
{
|
|
if( ( t /= d ) < ( 1 / 2.75 ) )
|
|
{
|
|
return c * ( 7.5625f * t * t ) + b;
|
|
}
|
|
else if( t < ( 2 / 2.75 ) )
|
|
{
|
|
return c * ( 7.5625f * ( t -= ( 1.5f / 2.75f ) ) * t + .75f ) + b;
|
|
}
|
|
else if( t < ( 2.5 / 2.75 ) )
|
|
{
|
|
return c * ( 7.5625f * ( t -= ( 2.25f / 2.75f ) ) * t + .9375f ) + b;
|
|
}
|
|
else
|
|
{
|
|
return c * ( 7.5625f * ( t -= ( 2.625f / 2.75f ) ) * t + .984375f ) + b;
|
|
}
|
|
}
|
|
|
|
public static float EaseIn( float t, float b, float c, float d )
|
|
{
|
|
return c - EaseOut( d - t, 0, c, d ) + b;
|
|
}
|
|
|
|
public static float EaseInOut( float t, float b, float c, float d )
|
|
{
|
|
if( t < d / 2 )
|
|
return EaseIn( t * 2, 0, c, d ) * 0.5f + b;
|
|
else
|
|
return EaseOut( t * 2 - d, 0, c, d ) * .5f + c * 0.5f + b;
|
|
}
|
|
} |