1#include "IndexBuffer.h"
6 IndexBuffer::IndexBuffer(Vector<unsigned int>& indices)
7 : m_Count(indices.size())
9 GLCall(glGenBuffers(1, &m_RendererID));
10 GLCall(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, m_RendererID));
11 GLCall(glBufferData(GL_ELEMENT_ARRAY_BUFFER, indices.size() *
sizeof(
unsigned int), indices.data(),
15 IndexBuffer::~IndexBuffer()
17 GLCall(glDeleteBuffers(1, &m_RendererID));
20 void IndexBuffer::Bind()
const
22 GLCall(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, m_RendererID));
25 void IndexBuffer::Unbind()
const
27 GLCall(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0));
30 Ref<IndexBuffer> IndexBuffer::Create(Vector<unsigned int>& indices)
32 return MakeRef<IndexBuffer>(indices);