#define BLANK_HUD_H_
#include "model.hpp"
-#include "shader.hpp"
#include "world.hpp"
#include <glm/glm.hpp>
namespace blank {
+class BlockTypeRegistry;
+class DirectionalLighting;
+
class HUD {
public:
- HUD();
+ explicit HUD(const BlockTypeRegistry &);
HUD(const HUD &) = delete;
HUD &operator =(const HUD &) = delete;
- void Viewport(float width, float height);
- void Viewport(float x, float y, float width, float height);
+ void Viewport(float width, float height) noexcept;
+ void Viewport(float x, float y, float width, float height) noexcept;
- void Display(const BlockType &);
+ void Display(const Block &);
- void Render(DirectionalLighting &);
+ void Render(DirectionalLighting &) noexcept;
private:
+ const BlockTypeRegistry &types;
+
Model block;
Model::Buffer block_buf;
glm::mat4 block_transform;