8#include "galaxy/error/Log.hpp"
24 this->
m_vao = std::move(s.m_vao);
33 this->
m_vao = std::move(s.m_vao);
51 meta::vector<unsigned int>
indices;
55 for (
auto counter = 0; counter <
m_max_quads; counter++)
57 indices.push_back(0 + increment);
58 indices.push_back(1 + increment);
59 indices.push_back(3 + increment);
60 indices.push_back(1 + increment);
61 indices.push_back(2 + increment);
62 indices.push_back(3 + increment);
#define GALAXY_LOG(level, msg,...)
thread_local const float vertices[]
Video.cpp galaxy.
thread_local const unsigned int indices[]
Abstraction for OpenGL vertex array objects.
void buffer(std::span< Vertex > vertices, std::span< unsigned int > indicies)
Create vertex array object.
void sub_buffer(const unsigned int index, std::span< Vertex > vertices)
Sub-buffer vertex array.
VertexBuffer & vbo()
Get vertex buffer.
Batches together vertex data to reduce draw calls.
VertexArray & vao()
Get vertex array object.
int m_index
Current index.
void clear()
Clears out vertex buffer.
~VertexBatch()
Destructor.
int m_max_quads
Maximum quads allowed.
int push(std::span< Vertex > vertices)
Buffer some vertices into the spritebatch.
VertexBatch & operator=(VertexBatch &&)
Move assignment operator.
VertexBatch()
Constructor.
void sub_buffer(const unsigned int index, std::span< Vertex > vertices)
Sub-buffer vertex object.
VertexArray m_vao
Vertex data.
void init(const int max_quads)
Initialize vertex batch data.
void clear()
Clear buffer data.