]> git.localhorst.tv Git - blank.git/blobdiff - src/ui/HUD.hpp
group entity updates in as few packets as possible
[blank.git] / src / ui / HUD.hpp
index 245d886e795ffaccf35b658e7fde710457d46d9d..1917b130c926772b5518806c1fc04af157447271 100644 (file)
@@ -1,21 +1,19 @@
 #ifndef BLANK_UI_HUD_H_
 #define BLANK_UI_HUD_H_
 
-#include "../graphics/Texture.hpp"
-#include "../model/Model.hpp"
+#include "FixedText.hpp"
+#include "../model/EntityModel.hpp"
 #include "../model/OutlineModel.hpp"
-#include "../model/SpriteModel.hpp"
 
 #include <glm/glm.hpp>
 
 
 namespace blank {
 
-class BlendedSprite;
 class Block;
 class BlockTypeRegistry;
-class DirectionalLighting;
 class Font;
+class Viewport;
 
 class HUD {
 
@@ -25,34 +23,24 @@ public:
        HUD(const HUD &) = delete;
        HUD &operator =(const HUD &) = delete;
 
-       void Viewport(float width, float height) noexcept;
-       void Viewport(float x, float y, float width, float height) noexcept;
-
+       void DisplayNone();
        void Display(const Block &);
 
-       void Render(DirectionalLighting &, BlendedSprite &) noexcept;
+       void Render(Viewport &) noexcept;
 
 private:
        const BlockTypeRegistry &types;
        const Font &font;
 
-       Model block;
-       Model::Buffer block_buf;
+       EntityModel block;
+       EntityModel::Buffer block_buf;
        glm::mat4 block_transform;
 
-       Texture block_label;
-       SpriteModel label_sprite;
-       glm::mat4 label_transform;
-       SDL_Color label_color;
+       FixedText block_label;
 
        bool block_visible;
 
        OutlineModel crosshair;
-       glm::mat4 crosshair_transform;
-
-       float near, far;
-       glm::mat4 projection;
-       glm::mat4 view;
 
 };