easing.cpp 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /*
  2. * Copyright 2010-2025 Branimir Karadzic. All rights reserved.
  3. * License: https://github.com/bkaradzic/bx/blob/master/LICENSE
  4. */
  5. #include <bx/easing.h>
  6. namespace bx
  7. {
  8. static const EaseFn s_easeFunc[] =
  9. {
  10. easeLinear,
  11. easeStep,
  12. easeSmoothStep,
  13. easeInQuad,
  14. easeOutQuad,
  15. easeInOutQuad,
  16. easeOutInQuad,
  17. easeInCubic,
  18. easeOutCubic,
  19. easeInOutCubic,
  20. easeOutInCubic,
  21. easeInQuart,
  22. easeOutQuart,
  23. easeInOutQuart,
  24. easeOutInQuart,
  25. easeInQuint,
  26. easeOutQuint,
  27. easeInOutQuint,
  28. easeOutInQuint,
  29. easeInSine,
  30. easeOutSine,
  31. easeInOutSine,
  32. easeOutInSine,
  33. easeInExpo,
  34. easeOutExpo,
  35. easeInOutExpo,
  36. easeOutInExpo,
  37. easeInCirc,
  38. easeOutCirc,
  39. easeInOutCirc,
  40. easeOutInCirc,
  41. easeInElastic,
  42. easeOutElastic,
  43. easeInOutElastic,
  44. easeOutInElastic,
  45. easeInBack,
  46. easeOutBack,
  47. easeInOutBack,
  48. easeOutInBack,
  49. easeInBounce,
  50. easeOutBounce,
  51. easeInOutBounce,
  52. easeOutInBounce,
  53. };
  54. static_assert(BX_COUNTOF(s_easeFunc) == Easing::Count);
  55. EaseFn getEaseFunc(Easing::Enum _enum)
  56. {
  57. return s_easeFunc[_enum];
  58. }
  59. } // namespace bx