1
0
Fork 0
spectre/include/Spectre/Graphics/Renderer2D.h

34 lines
573 B
C++

#ifndef SPECTRE_GRAPHICS_RENDERER2D_H
#define SPECTRE_GRAPHICS_RENDERER2D_H
#include <Spectre/Graphics/Renderable.h>
#include <Spectre/Scene/Camera2D.h>
namespace sp {
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;
};
} // namespace sp
#endif /* SPECTRE_GRAPHICS_RENDERER2D_H */