(context:)
I’m using this:
gl.glEnableClientState(GL.GL_VERTEX_ARRAY);
gl.glVertexPointer(3, GL.GL_FLOAT, 0, positionBuffer.rewind());
then this:
gl.glDrawElements(GL.GL_TRIANGLES, count, depth, buffer.rewind());
…
and the (relevant part of the) render loop is roughly this:
(1) transform skinned vertices into positionBuffer
(2) gl.glEnableClientState(GL.GL_VERTEX_ARRAY);
(3) gl.glVertexPointer(3, GL.GL_FLOAT, 0, positionBuffer.rewind());
(4) gl.glDrawElements(GL.GL_TRIANGLES, count, depth, buffer.rewind());
(5) repeat from (1) with next mesh
(more context:)
certain libraries that I am familiar w/ actually copy the contents of NIO buffers passed to them upon invocation (the Java networking libraries, for instance)
(question:)
does the same thing happen upon invocation of render calls when using jogl? would positionBuffer and buffer be copied into other buffers upon invocation of glDrawElements(…)? if so, is there an intermediate buffer for these contents? how is it allocated? (etc …) … where can I find details on this?