virtual void init() override
Initializes all necessary bits of the renderer.
std::vector< Glyph * > m_glyphs
virtual ~TexturelessRenderer()
std::shared_ptr< Camera2D > getCamera()
virtual void createRenderBatches() override
Constructs all of the render batches from data given by, say, draw() calls.
virtual void setCamera(std::shared_ptr< Camera2D > camera)
Sets the camera to a given pointer. This means that the renderer takes ownership.
virtual void draw(glm::vec4 destRect, float depth, Colour colour=Colour(255, 255, 255, 255), float angle=0.0f, glm::vec2 COR=glm::vec2(0.5f))
std::shared_ptr< Camera2D > m_camera
virtual void preRender() override
Does stuff inside of the render function, within the shader's use.
TexturelessRenderer(std::string &fragShader, std::string &vertShader, unsigned int perspectiveWidth=2, unsigned int perspectiveHeight=2)