branchless wrapAngle

master
Mathias Labeyrie ago%!(EXTRA string=11 years)
parent b38a8b4e5a
commit 72a5de2320
  1. 6
      glm/gtx/fast_trigonometry.inl

@ -9,12 +9,10 @@
namespace glm namespace glm
{ {
template <typename T> template <typename T>
GLM_FUNC_QUALIFIER T wrapAngle(T const & angle) GLM_FUNC_QUALIFIER T wrapAngle(T const & angle)
{ {
T result = angle - floor<T>(angle * one_over_two_pi<T>()) * two_pi<T>(); return abs<T>(mod<T>(angle, two_pi<T>()));
result = result > T(0) ? result : -result;
return result;
} }
VECTORIZE_VEC(wrapAngle) VECTORIZE_VEC(wrapAngle)

Loading…
Cancel
Save