@Override public void flush() { if (vertexOffset == 0) { return; } ctx.checkGLError("Shader.flush"); vertexData.position(0); glBufferData(GL_ARRAY_BUFFER, vertexData, GL_STREAM_DRAW); glBufferData(GL_ELEMENT_ARRAY_BUFFER, elementData, GL_STREAM_DRAW); ctx.checkGLError("Shader.flush BufferData"); glDrawElements(GL_TRIANGLES, elementOffset, GL_UNSIGNED_SHORT, 0); vertexOffset = elementOffset = 0; ctx.checkGLError("Shader.flush DrawElements"); }