YAGE
0.02
Yet Another Game Engine
include
YAGE
Physics
collider.hpp
1
/* ----------------------------------------------------------------------------
2
* collider.hpp
3
*
4
* Copyright (c) 2017 Yann Herklotz Grave <ymherklotz@gmail.com> -- MIT License
5
* See file LICENSE for more details
6
* ----------------------------------------------------------------------------
7
*/
8
9
#ifndef YAGE_COLLIDER_HPP
10
#define YAGE_COLLIDER_HPP
11
12
#include <glm/glm.hpp>
13
14
namespace
yage
15
{
16
17
// The Collider class helps collision detection by providing a general shape
18
// for different shapes to have their own collision algorithms.
19
class
Collider
20
{
21
protected
:
22
// position of the object
23
glm::vec2 position_;
24
25
// size of the object
26
glm::vec2 size_;
27
28
public
:
29
Collider(
const
glm::vec2 &position,
const
glm::vec2 &size) : position_(position), size_(size) {}
30
31
// virtual deconstructor for classes that inherits
32
virtual
~Collider() {}
33
34
// function that checks if two colliders are colliding
35
virtual
bool
collides(
const
Collider &collider)
const
=0;
36
37
// function that returns if a point is inside the shape
38
virtual
bool
inside(
const
glm::vec2 &point)
const
=0;
39
};
40
41
}
// yage
42
43
#endif
yage
Definition:
camera2d.hpp:17
Generated on Mon Jul 31 2017 20:56:38 for YAGE by
1.8.13