From a556b45abf18f1bd509daaf63b66b7d55e9fd291 Mon Sep 17 00:00:00 2001 From: jjesswan Date: Mon, 22 Apr 2024 21:56:26 -0400 Subject: add engine version --- .../CollisionComponents/CollisionComponent.cpp | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 engine-ocean/Game/Components/CollisionComponents/CollisionComponent.cpp (limited to 'engine-ocean/Game/Components/CollisionComponents/CollisionComponent.cpp') diff --git a/engine-ocean/Game/Components/CollisionComponents/CollisionComponent.cpp b/engine-ocean/Game/Components/CollisionComponents/CollisionComponent.cpp new file mode 100644 index 0000000..bea3f9e --- /dev/null +++ b/engine-ocean/Game/Components/CollisionComponents/CollisionComponent.cpp @@ -0,0 +1,47 @@ +#include "collisioncomponent.h" +#include "Game/Components/CollisionComponents/BoundingTriangle.h" +#include "Game/Components/CollisionComponents/CylinderCollider.h" +#include "Game/Components/CollisionComponents/BoundingDynamicMesh.h" +#include "Graphics/shape.h" +#include + +// for dynamic objects +CollisionComponent::CollisionComponent(std::string shapeType, std::shared_ptr mt, const glm::vec3 &initial_pos) +{ + if (shapeType == "dynamic_mesh"){ + //addCollisionShape(std::make_shared(initial_pos, initial_scale)); + addCollisionShape(std::make_shared(mt, initial_pos)); + } +} + +CollisionComponent::CollisionComponent(std::string shapeType, std::shared_ptr mt, const glm::vec3 &initial_pos, std::vector &obj_data) +{ + if (shapeType == "dynamic_mesh"){ + addCollisionShape(std::make_shared(mt, initial_pos, obj_data)); + } +} + +// for rigid meshes / environment +CollisionComponent::CollisionComponent(std::string shapeType, + const std::vector &obj_data, + const std::shared_ptr &mt, + bool isGround){ + if (shapeType == "obj"){ + addCollisionShape(std::make_shared(obj_data, mt, isGround)); + } + +} + + + +bool CollisionComponent::isRigidBody(){ + return m_isRigid; +} + +float CollisionComponent::getReboundVel(){ + return m_rebound_vel; +} + +float CollisionComponent::getAcceleration(){ + return m_acceleration; +} -- cgit v1.2.3-70-g09d2