ClassiCube
ClassiCube copied to clipboard
Investigate using vertex array objects for web client
With the web client on NA2's main (phobia), the performance is rather dreadful, only reaching around 25-30 FPS.
I ran a performance profiler test for 200,000 ms - and it reported that 85,000 ms was spent just drawing the map, which is rather terrible performance wise.
So need to investigate whether using vertex array objects to reduce more expensive draw setup calls would be beneficial
Isn't it called "vertex buffer objects" or is "vertex array objects" an alternate name?
Vertex buffer objects (object with arbitrary data) are different to vertex array objects (object with attribute bindings) - see here and here (compare OpenGL 2.0 to 3.0 way)
Because the overhead of GL function calls in WebGL is quite high, in theory, using vertex array objects should mean that all the overhead that happens per frame with glVertexAttribPointer
instead only need to happen once when the vertex array object is created.
Ah, I understand now