X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fui%2FHUD.hpp;h=55f3afb806cb56d73a01f27d881a0adb8d76816a;hb=1bc6f085c53cdeaa08e2c00e821d4e2e25cae1c8;hp=ca6b7544a54ee9a15f7639bb2e1f6fba65376724;hpb=b7d09e1e35ef90282c97509e0020b20db3c7ea9f;p=blank.git diff --git a/src/ui/HUD.hpp b/src/ui/HUD.hpp index ca6b754..55f3afb 100644 --- a/src/ui/HUD.hpp +++ b/src/ui/HUD.hpp @@ -1,8 +1,10 @@ #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 @@ -11,37 +13,36 @@ namespace blank { class Block; class BlockTypeRegistry; -class DirectionalLighting; +class Font; +class Viewport; class HUD { public: - explicit HUD(const BlockTypeRegistry &); + HUD(const BlockTypeRegistry &, const Font &); 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 Display(const Block &); - void Render(DirectionalLighting &) noexcept; + void Render(Viewport &) 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; + bool block_visible; OutlineModel crosshair; - glm::mat4 crosshair_transform; - - float near, far; - glm::mat4 projection; - glm::mat4 view; };