MathUtils.h 676 B

123456789101112131415161718192021
  1. #pragma once
  2. #include "Vector.h"
  3. #include "Matrix4.h"
  4. NS_BF_BEGIN
  5. class AABB
  6. {
  7. public:
  8. Vector3 mMin;
  9. Vector3 mMax;
  10. };
  11. class Sphere;
  12. bool RayIntersectsTriangle(const Vector3& rayOrigin, const Vector3& rayVector, const Vector3& vtx0, const Vector3& vtx1, const Vector3& vtx2, Vector3* outIntersectionPoint, float* distance);
  13. bool RayIntersectsCircle(const Vector3& rayOrigin, const Vector3& rayVector, const Sphere& sphere, Vector3* outIntersectionPoint, Vector3* outNormal, float* outDistance);
  14. bool RayIntersectsAABB(const Vector3& rayOrigin, const Vector3& rayVector, const AABB& aabb, Vector3* outIntersectionPoint, Vector3* outNormal, float* outDistance);
  15. NS_BF_END