9 #ifndef YAGE_SPRITE_BATCH_H
10 #define YAGE_SPRITE_BATCH_H
12 #include "../data/vertex.h"
15 #include <glad/glad.h>
16 #include <glm/glm.hpp>
31 RenderBatch(GLint offset_i, GLsizei num_vertices_i, GLuint texture_i)
47 Glyph(GLuint texture_i,
float depth_i,
const Vertex &top_left_i,
49 const Vertex &bottom_left_i)
67 std::vector<details::Glyph> glyphs_;
68 std::vector<details::Glyph *> glyph_ptrs_;
69 std::vector<details::RenderBatch> render_batches_;
85 void draw(
const glm::vec4 &destination_rect,
const glm::vec4 &uv_rect,
86 GLuint texture,
const Colour &colour,
float depth);
91 void createRenderBatches();
void draw(const glm::vec4 &destination_rect, const glm::vec4 &uv_rect, GLuint texture, const Colour &colour, float depth)
Definition: spritebatch.cpp:78
GLuint texture
Definition: spritebatch.h:29
void end()
Definition: spritebatch.cpp:72
Glyph(GLuint texture_i, float depth_i, const Vertex &top_left_i, const Vertex &top_right_i, const Vertex &bottom_right_i, const Vertex &bottom_left_i)
Definition: spritebatch.h:47
Definition: spritebatch.h:59
GLuint texture
Definition: spritebatch.h:40
void begin()
Definition: spritebatch.cpp:65
Vertex bottom_left
Definition: spritebatch.h:45
void render()
Definition: spritebatch.cpp:108
Vertex bottom_right
Definition: spritebatch.h:44
SpriteBatch & operator=(const SpriteBatch &)=delete
Vertex top_left
Definition: spritebatch.h:42
RenderBatch(GLint offset_i, GLsizei num_vertices_i, GLuint texture_i)
Definition: spritebatch.h:31
GLint offset
Definition: spritebatch.h:27
static const int NUM_VERTICES
Definition: spritebatch.h:62
Definition: spritebatch.h:26
SpriteBatch()
Definition: spritebatch.cpp:25
float depth
Definition: spritebatch.h:41
Vertex top_right
Definition: spritebatch.h:43
Glyph with information of the texture.
Definition: spritebatch.h:39
GLsizei num_vertices
Definition: spritebatch.h:28
~SpriteBatch()
Definition: spritebatch.cpp:55