12 #ifndef YAGE_SPRITE_BATCH_H
13 #define YAGE_SPRITE_BATCH_H
17 #include <glad/glad.h>
18 #include <glm/glm.hpp>
95 void draw(
const glm::vec4 &destination_rect,
const glm::vec4 &uv_rect,
96 GLuint texture,
const Color &color,
float depth);
Definition: spritebatch.h:52
std::vector< Glyph * > glyph_ptrs_
Definition: spritebatch.h:78
GLuint texture_
Definition: spritebatch.h:59
Vertex bottom_left_
Definition: spritebatch.h:37
void end()
Definition: spritebatch.cpp:58
Definition: spritebatch.h:69
Vertex bottom_right() const
Definition: spritebatch.h:48
void init()
Definition: spritebatch.cpp:46
void createVertexArray()
Definition: spritebatch.cpp:105
void begin()
Definition: spritebatch.cpp:51
Vertex top_left_
Definition: spritebatch.h:34
Vertex bottom_left() const
Definition: spritebatch.h:49
void render()
Definition: spritebatch.cpp:95
SpriteBatch & operator=(const SpriteBatch &)=delete
Glyph(GLuint texture, float depth, const Vertex &top_left, const Vertex &top_right, const Vertex &bottom_right, const Vertex &bottom_left)
Definition: spritebatch.cpp:19
GLuint vbo_
Definition: spritebatch.h:75
float depth_
Definition: spritebatch.h:33
GLint offset() const
Definition: spritebatch.h:64
friend SpriteBatch
Definition: spritebatch.h:54
void createRenderBatches()
Definition: spritebatch.cpp:143
GLuint texture_
Definition: spritebatch.h:32
float depth() const
Definition: spritebatch.h:45
Vertex bottom_right_
Definition: spritebatch.h:36
static const int NUM_VERTICES
Definition: spritebatch.h:72
GLuint vao_
Definition: spritebatch.h:76
GLuint texture() const
Definition: spritebatch.h:44
std::vector< RenderBatch > render_batches_
Definition: spritebatch.h:79
std::vector< Glyph > glyphs_
Definition: spritebatch.h:77
GLint offset_
Definition: spritebatch.h:58
void draw(const glm::vec4 &destination_rect, const glm::vec4 &uv_rect, GLuint texture, const Color &color, float depth)
Definition: spritebatch.cpp:64
GLsizei num_vertices() const
Definition: spritebatch.h:65
Vertex top_right_
Definition: spritebatch.h:35
GLuint texture() const
Definition: spritebatch.h:66
void sortGlyphs()
Definition: spritebatch.cpp:181
Glyph with information of the texture.
Definition: spritebatch.h:29
GLsizei num_vertices_
Definition: spritebatch.h:57
RenderBatch(GLint offset, GLsizei num_vertices, GLuint texture)
Definition: spritebatch.cpp:28
~SpriteBatch()
Definition: spritebatch.cpp:35
Vertex top_left() const
Definition: spritebatch.h:46
Vertex top_right() const
Definition: spritebatch.h:47