#ifndef BLANK_GRAPHICS_VIEWPORT_HPP_
#define BLANK_GRAPHICS_VIEWPORT_HPP_
+#include "align.hpp"
#include "BlendedSprite.hpp"
#include "BlockLighting.hpp"
#include "Camera.hpp"
#include "DirectionalLighting.hpp"
#include <glm/glm.hpp>
-#include <SDL.h>
namespace blank {
void Clear() noexcept;
void ClearDepth() noexcept;
+ void SetCursor(const glm::vec3 &);
+ void SetCursor(const glm::vec3 &, Gravity);
+ void MoveCursor(const glm::vec3 &);
+ const glm::mat4 &Cursor() const noexcept { return cursor; }
+
BlockLighting &ChunkProgram() noexcept;
DirectionalLighting &EntityProgram() noexcept;
DirectionalLighting &HUDProgram() noexcept;
const glm::mat4 &Perspective() const noexcept { return cam.Projection(); }
const glm::mat4 &Ortho() const noexcept { return canv.Projection(); }
- const glm::mat4 &CenterTransform() const noexcept { return center; }
private:
- SDL_GLContext ctx;
Camera cam;
Canvas canv;
- glm::mat4 center;
+ glm::mat4 cursor;
BlockLighting chunk_prog;
DirectionalLighting entity_prog;