R-Type 0.1
Loading...
Searching...
No Matches
collisionBuffer.hpp
1#pragma once
2
3#include <vector>
4
5#include "components/AABBCollider.hpp"
6
7namespace rtk::collision {
16struct Collision {
17 std::size_t firstEntity;
18 std::size_t secondEntity;
19};
20
25public:
29 void clear() { _collisions.clear(); }
30
35 void push(const Collision &collision) { _collisions.push_back(collision); }
36
41 const std::vector<Collision> &collisions() const { return _collisions; }
42
43private:
44 std::vector<Collision> _collisions;
45};
46
48} // namespace rtk::collision
Collisions detected during the current frame.
Definition collisionBuffer.hpp:24
const std::vector< Collision > & collisions() const
Returns the stored collisions.
Definition collisionBuffer.hpp:41
void clear()
Removes every stored collision.
Definition collisionBuffer.hpp:29
void push(const Collision &collision)
Stores a collision.
Definition collisionBuffer.hpp:35
Pair of entities whose colliders overlap.
Definition collisionBuffer.hpp:16
std::size_t secondEntity
Entity with the higher id.
Definition collisionBuffer.hpp:18
std::size_t firstEntity
Entity with the lower id.
Definition collisionBuffer.hpp:17