X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fui%2FHUD.hpp;h=245d886e795ffaccf35b658e7fde710457d46d9d;hb=55dbd6b35a39888f245e247d2e140f141f918178;hp=ca6b7544a54ee9a15f7639bb2e1f6fba65376724;hpb=b7d09e1e35ef90282c97509e0020b20db3c7ea9f;p=blank.git diff --git a/src/ui/HUD.hpp b/src/ui/HUD.hpp index ca6b754..245d886 100644 --- a/src/ui/HUD.hpp +++ b/src/ui/HUD.hpp @@ -1,22 +1,26 @@ #ifndef BLANK_UI_HUD_H_ #define BLANK_UI_HUD_H_ +#include "../graphics/Texture.hpp" #include "../model/Model.hpp" #include "../model/OutlineModel.hpp" +#include "../model/SpriteModel.hpp" #include namespace blank { +class BlendedSprite; class Block; class BlockTypeRegistry; class DirectionalLighting; +class Font; class HUD { public: - explicit HUD(const BlockTypeRegistry &); + HUD(const BlockTypeRegistry &, const Font &); HUD(const HUD &) = delete; HUD &operator =(const HUD &) = delete; @@ -26,14 +30,21 @@ public: void Display(const Block &); - void Render(DirectionalLighting &) noexcept; + void Render(DirectionalLighting &, BlendedSprite &) noexcept; private: const BlockTypeRegistry &types; + const Font &font; Model block; Model::Buffer block_buf; glm::mat4 block_transform; + + Texture block_label; + SpriteModel label_sprite; + glm::mat4 label_transform; + SDL_Color label_color; + bool block_visible; OutlineModel crosshair;