Template Function wt::intersect::intersect_ray_aabb_fast(const pqvec3_w_t<W>&, const vec3_w_t<W>&, const pqvec3_w_t<W>&, const pqvec3_w_t<W>&, const pqrange_t<>&)

Function Documentation

template<std::size_t W>
inline intersect_ray_aabb_w_ret_t<W> wt::intersect::intersect_ray_aabb_fast(const pqvec3_w_t<W> &ro, const vec3_w_t<W> &rinvd, const pqvec3_w_t<W> &aabb_min, const pqvec3_w_t<W> &aabb_max, const pqrange_t<> &range = pqrange_t<>::positive()) noexcept

Ray-AABB intersection test. Returns intersection range. If range is empty, no intersection occurs. Fast variant: ignores NaNs.

Parameters:
  • ro – ray origins

  • rinvd – reciprocals of ray directions

  • aabb_min – minimum of AABBs

  • aabb_max – maximum of AABBs