12 #ifndef YAGE_SPRITE_BATCH_H
13 #define YAGE_SPRITE_BATCH_H
17 #include <glad/glad.h>
18 #include <glm/glm.hpp>
Definition: spritebatch.h:53
std::vector< Glyph * > glyph_ptrs_
Definition: spritebatch.h:79
GLuint texture_
Definition: spritebatch.h:60
Vertex bottom_left_
Definition: spritebatch.h:38
void end()
Definition: spritebatch.cpp:58
Definition: spritebatch.h:70
Vertex bottom_right() const
Definition: spritebatch.h:49
void init()
Definition: spritebatch.cpp:46
void draw(const yage::Vector4f &destination_rect, const yage::Vector4f &uv_rect, GLuint texture, const Color &color, float depth)
Definition: spritebatch.cpp:64
void createVertexArray()
Definition: spritebatch.cpp:105
void begin()
Definition: spritebatch.cpp:51
Vertex top_left_
Definition: spritebatch.h:35
Vertex bottom_left() const
Definition: spritebatch.h:50
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:76
float depth_
Definition: spritebatch.h:34
GLint offset() const
Definition: spritebatch.h:65
friend SpriteBatch
Definition: spritebatch.h:55
void createRenderBatches()
Definition: spritebatch.cpp:143
GLuint texture_
Definition: spritebatch.h:33
float depth() const
Definition: spritebatch.h:46
Vertex bottom_right_
Definition: spritebatch.h:37
static const int NUM_VERTICES
Definition: spritebatch.h:73
GLuint vao_
Definition: spritebatch.h:77
GLuint texture() const
Definition: spritebatch.h:45
std::vector< RenderBatch > render_batches_
Definition: spritebatch.h:80
std::vector< Glyph > glyphs_
Definition: spritebatch.h:78
GLint offset_
Definition: spritebatch.h:59
GLsizei num_vertices() const
Definition: spritebatch.h:66
Vertex top_right_
Definition: spritebatch.h:36
GLuint texture() const
Definition: spritebatch.h:67
void sortGlyphs()
Definition: spritebatch.cpp:181
4D Vector class
Definition: matrix.h:376
Glyph with information of the texture.
Definition: spritebatch.h:30
GLsizei num_vertices_
Definition: spritebatch.h:58
RenderBatch(GLint offset, GLsizei num_vertices, GLuint texture)
Definition: spritebatch.cpp:28
~SpriteBatch()
Definition: spritebatch.cpp:35
Vertex top_left() const
Definition: spritebatch.h:47
Vertex top_right() const
Definition: spritebatch.h:48