#ifndef SPECTRE_GRAPHICS_RENDERER2D_H #define SPECTRE_GRAPHICS_RENDERER2D_H #include #include #include class Renderer2D { public : Renderer2D(); virtual ~Renderer2D(); void setCamera(const Camera2D& camera); virtual void begin() {}; virtual void submit(const Renderable2D& renderable) = 0; // Drawing. virtual void draw(const Renderable2D* renderable) = 0; virtual void render() = 0; protected : const Camera2D* m_camera; }; #endif /* SPECTRE_GRAPHICS_RENDERER2D_H */