#ifndef MINECRAFT_PHYSICS_COLLIDER_H_ #define MINECRAFT_PHYSICS_COLLIDER_H_ #include "../common.hpp" class ColliderBox { public: glm::vec3 Min; glm::vec3 Max; }; class Collider : public ColliderBox { public: }; // TODO: Trees class EntityCollider { public: EntityCollider(); // Surrounding blocks indexed XYZ // Returns point of collision glm::vec3 TerrainCollide(std::vector surroundingBlocks); ColliderBox Bounds; private: bool m_aabb(ColliderBox a, ColliderBox b); float m_xDepth(ColliderBox a, ColliderBox b); float m_yDepth(ColliderBox a, ColliderBox b); float m_zDepth(ColliderBox a, ColliderBox b); }; #endif