This commit is contained in:
aozhiwei 2019-03-16 11:20:45 +08:00
parent 081ea350b0
commit aae438b6c7
3 changed files with 27 additions and 3 deletions

View File

@ -3,3 +3,7 @@
#include "entity.h"
#include "collider.h"
bool ColliderComponent::Intersect(ColliderComponent* b)
{
return false;
}

View File

@ -13,13 +13,16 @@ class ColliderComponent
public:
Entity* owner = nullptr;
ColliderType_e type = CT_None;
bool active = true;
bool Intersect(ColliderComponent* b);
};
class AabbCollider : public ColliderComponent
{
public:
Vector2D center;
Vector2D size;
Vector2D _min;
Vector2D _max;
};
class CircleCollider : public ColliderComponent

View File

@ -1,12 +1,29 @@
#include "precompile.h"
#include "entity.h"
#include "collider.h"
Entity::~Entity()
{
for (auto& itr : colliders) {
ColliderComponent* collider = itr;
delete collider;
switch (collider->type) {
case CT_Aabb:
{
delete (AabbCollider*)collider;
}
break;
case CT_Circle:
{
delete (CircleCollider*)collider;
}
break;
default:
{
delete collider;
}
break;
}
}
colliders.clear();
}