Common.h 906 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. // Copyright (C) 2009-2021, Panagiotis Christopoulos Charitos and contributors.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. #pragma once
  6. #include <AnKi/Collision/Forward.h>
  7. #include <AnKi/Math.h>
  8. #include <AnKi/Util/Enum.h>
  9. namespace anki {
  10. /// @addtogroup collision
  11. /// @{
  12. /// The 6 frustum planes.
  13. enum class FrustumPlaneType : U8
  14. {
  15. NEAR,
  16. FAR,
  17. LEFT,
  18. RIGHT,
  19. TOP,
  20. BOTTOM,
  21. COUNT,
  22. FIRST = 0
  23. };
  24. ANKI_ENUM_ALLOW_NUMERIC_OPERATIONS(FrustumPlaneType)
  25. /// Collision shape type.
  26. enum class CollisionShapeType : U8
  27. {
  28. PLANE,
  29. LINE_SEGMENT,
  30. RAY,
  31. AABB,
  32. SPHERE,
  33. OBB,
  34. CONVEX_HULL,
  35. CONE,
  36. COUNT,
  37. FIRST = 0
  38. };
  39. ANKI_ENUM_ALLOW_NUMERIC_OPERATIONS(CollisionShapeType)
  40. /// Frustum type
  41. enum class FrustumType : U8
  42. {
  43. PERSPECTIVE,
  44. ORTHOGRAPHIC,
  45. COUNT,
  46. FIRST = 0
  47. };
  48. ANKI_ENUM_ALLOW_NUMERIC_OPERATIONS(FrustumType)
  49. /// @}
  50. } // end namespace anki