]> git.localhorst.tv Git - blank.git/blobdiff - src/world/World.hpp
fix entity pitch clamping
[blank.git] / src / world / World.hpp
index ab563a7fa9e1e964bb49b10dc16762f2b623a99e..7ee5f4306a228260f172d594c8776056020fcb6d 100644 (file)
@@ -62,11 +62,16 @@ public:
                EntityCollision &);
 
        /// check if given entity intersects with the world
-//     bool Intersection(const Entity &e, std::vector<WorldCollision> &col) {
-//             return Intersection(e, e.GetState(), col);
-//     }
        bool Intersection(const Entity &e, const EntityState &, std::vector<WorldCollision> &);
 
+       /// check if given box (M * AABB) intersects with the world
+       /// M is assumed to be calculated in reference to given chunk coords
+       bool Intersection(
+               const AABB &box,
+               const glm::mat4 &M,
+               const glm::ivec3 &reference,
+               std::vector<WorldCollision> &);
+
        const BlockTypeRegistry &BlockTypes() noexcept { return block_type; }
        ChunkStore &Chunks() noexcept { return chunks; }
 
@@ -96,6 +101,7 @@ public:
        void Update(Entity &, float dt);
 
        void Render(Viewport &);
+       void RenderDebug(Viewport &);
 
 private:
        using EntityHandle = std::list<Entity>::iterator;