21 #include "hx3d/graphics/buffers/index_array_buffer.hpp" 37 IndexArrayBuffer::~IndexArrayBuffer()
41 glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,
_buf);
42 glBufferData(GL_ELEMENT_ARRAY_BUFFER,
_vector.size() *
sizeof(GLushort),
_vector.data(), GL_STATIC_DRAW);
44 glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
48 glBindBuffer(GL_ELEMENT_ARRAY_BUFFER,
_buf);
49 glDrawElements(GL_TRIANGLES,
_vector.size(), GL_UNSIGNED_SHORT, BUFFER_OFFSET(0));
51 glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
std::vector< GLushort > _vector
Data.
virtual void begin(const Ptr< Shader > &shader) override
Begin the use with a shader.
virtual void upload() override
Upload the data to the GPU.
IndexArrayBuffer()
Build an empty index buffer.
virtual void end(const Ptr< Shader > &shader) override
End the use with a shader.
std::shared_ptr< T > Ptr
Quick-typing shared ptr.
OpenGL GPU uploadable buffer.