static public float Lerp(float a, float b, float t, LerpMod lerpMod = LerpMod.SmoothStep) { if (t <= 0f) { return(a); } if (t >= 1f) { return(b); } t = factorFuncs[(int)lerpMod](t); return(a + t * (b - a)); }
static public float Factor(float t, LerpMod lerpMod = LerpMod.SmoothStep) { return(factorFuncs[(int)lerpMod](t)); }
static public float LerpUnclamped(float a, float b, float t, LerpMod lerpMod = LerpMod.SmoothStep) { t = factorFuncs[(int)lerpMod](t); return(a + t * (b - a)); }