OpenGL defines the concept of indexes in addition to vertexes. Will this merely be sequential in SFML?
SFML doesn't handle indices (this is not needed in this context, really).
Also, although OpenGL seems to define glVertexPointer, modern OpenGL seems to define glGenBuffers, glBindBuffer, glBufferData and glVertexAttribPointer functions. I'm guessing SFML doesn't take advantage of this, but wouldn't a "Lock()"(or some other better name) in VertexArray improve the opportunities of optimization by ensuring that a given Vertex Array would never be modified again?
SFML doesn't use VBOs (vertex buffer objects), only VAs (vertex arrays). Again, this is not necessary for what SFML does.
I understand that people wonder why SFML doesn't use the most powerful things that OpenGL allows, but this is not the right question to ask. The first step is to find a good/clean/efficient design, and then to find the best implementation for it. Doing things the other way round ("
VBOs are so cool, let's use them") would potentially lead to bloated design ("
I need a Lock() function") for virtually no gain ("
I get 5100 FPS instead of 5000")