8#ifndef GALAXY_GRAPHICS_GL_VERTEXBUFFER_HPP_
9#define GALAXY_GRAPHICS_GL_VERTEXBUFFER_HPP_
49 void buffer(std::span<Vertex>
vertices, std::span<unsigned int> indicies);
57 void buffer(
const int vertex_count, std::span<unsigned int> indicies);
78 int count()
const noexcept;
94 unsigned int id()
const noexcept;
thread_local const float vertices[]
Video.cpp galaxy.
Abstraction for OpenGL vertex buffer objects.
void buffer(std::span< Vertex > vertices, std::span< unsigned int > indicies)
Create vertex buffer object.
unsigned int m_id
ID returned by OpenGL when generating buffer.
int count() const noexcept
Get the index count.
int m_count
Index buffer count.
VertexBuffer()
Constructor.
VertexBuffer(const VertexBuffer &)=delete
Copy constructor.
void * offset() noexcept
Gets index offset.
VertexBuffer & operator=(VertexBuffer &&) noexcept
Move assignment operator.
~VertexBuffer()
Destructor.
void clear()
Clear buffer data.
std::size_t m_offset
Index buffer offset.
void sub_buffer(const unsigned int index, std::span< Vertex > vertices)
Sub-buffer vertex object.
unsigned int id() const noexcept
Get OpenGL handle.
VertexBuffer & operator=(const VertexBuffer &)=delete
Copy assignment operator.