Is it possible to use the same buffer for both
I load both vertex data and index data into a big slab of memory, so it would be easier for me to just load it all into a single buffer. So naturally, I do like this
glBindBuffer(GL_ARRAY_BUFFER, vboId); glBufferData(GL_ARRAY_BUFFER, dataSize, data, usage); glBindBuffer(GL_ARRAY_BUFFER, 0);
Is it legal to – during rendering – simply use it as both?
glBindBuffer(GL_ARRAY_BUFFER, vboId); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, vboId); glVertexAttribPointer(...); ... glDrawElements(mode, count, dataType, (void*)indexOffset);
I can't find anything in the spec saying it's ok to do so, but I can't find anything that says that I can't either. Googling doesn't turn up much either, but I might be looking in the wrong places.