]> git.localhorst.tv Git - blank.git/blob - src/hud.hpp
store block type as ID rather than pointer
[blank.git] / src / hud.hpp
1 #ifndef BLANK_HUD_H_
2 #define BLANK_HUD_H_
3
4 #include "model.hpp"
5 #include "shader.hpp"
6 #include "world.hpp"
7
8 #include <glm/glm.hpp>
9
10
11 namespace blank {
12
13 class HUD {
14
15 public:
16         HUD();
17
18         HUD(const HUD &) = delete;
19         HUD &operator =(const HUD &) = delete;
20
21         void Viewport(float width, float height);
22         void Viewport(float x, float y, float width, float height);
23
24         void Display(const BlockType &);
25
26         void Render(DirectionalLighting &);
27
28 private:
29         Model block;
30         glm::mat4 block_transform;
31         bool block_visible;
32
33         OutlineModel crosshair;
34         glm::mat4 crosshair_transform;
35
36         float near, far;
37         glm::mat4 projection;
38         glm::mat4 view;
39
40 };
41
42 }
43
44 #endif