diff options
Diffstat (limited to 'engine-ocean/Game/Components/CollisionComponents/CylinderCollider.h')
-rw-r--r-- | engine-ocean/Game/Components/CollisionComponents/CylinderCollider.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/engine-ocean/Game/Components/CollisionComponents/CylinderCollider.h b/engine-ocean/Game/Components/CollisionComponents/CylinderCollider.h new file mode 100644 index 0000000..3363b84 --- /dev/null +++ b/engine-ocean/Game/Components/CollisionComponents/CylinderCollider.h @@ -0,0 +1,37 @@ +#ifndef CYLINDERCOLLIDER_H +#define CYLINDERCOLLIDER_H + +#include "Game/Components/CollisionComponents/BoundingTriangle.h" +#include "Graphics/modeltransform.h" +#include "glm/glm.hpp" +#include "BoundingShape.h" +#include <memory> + + +struct Cylinder { + glm::vec2 point; // bottom Center + float radius; + + // lines + float height; + float min; + float max; + + glm::vec3 aabbDimensions; + glm::vec3 aabbCenterPos; + Bounds3f bounds; +}; + +class CylinderCollider +{ +public: + CylinderCollider(glm::vec3 initial_pos, glm::vec3 initial_scale); + Cylinder getCylinder();// override; + void updateCollisionPos(glm::vec3 new_pos); + void updateBounds(); +private: + glm::vec3 m_scale; + Cylinder m_cyl; +}; + +#endif // CYLINDERCOLLIDER_H |