Last night I made vertex arrays and glDrawArrays in display list without glMaterial. The results were the same as DLWM. This means that glDrawArrays is just a simple loop calling glVertex and other vertex functions without any special optimization. My conclusion is that vertex arrays are useless as performance gainer if used in this manner.
what does DLWM mean? display list without material?
if you use VertexArrays inside a display list, they will be copied completely into vram or any other fast accessible memory. you can modify the vertex data later but the display list call will not take care of this modifications. there is no performance gain to glVertex calls inside a display list, but only, because you can’t render any faster on most cards. display list are static, all state changes are precompiled and so on.
try both methods outside display lists and start your benchmarks again.
you are right: vertex arrays are useless as performance gainer if used in this manner.