APPLE_vao level of support


What is the level of compatibilities for the APPLE_vertex_array_object extension? The ADC OpenGL extension page states that it is available for all the renderers since Jaguar, but what is the chance to see this extension working with a Rage128 VR for example?

What speed could I expect?


VAO is not a performance-enhancing extension, other than that it allows you to avoid making many gl*Pointer calls repeatedly.

VAR is the performance-enhancing extension, is only officially supported on Radeon/GeForce, and works well for static arrays. I have seen bugs with dynamic arrays recently still.

The Apple extension guide is accurate (except when they make a mistake ) – if it says an extension is supported, it will be.


I guess APPLE_vao is similar to ATI_vao extension which is a performance-enhancing extension, isnt-it?

By generating objects for static vertex arrays as it is possible to do with textures, vertex arrays become VRAM residents. So how this state could not be an improvement?

On Win32 system ATI_vao enhances performance, and is much more flexible to use than Nvidia var.

Even the new ARB_vbo is based upon ATI_vao…

Is the Apple version of vao a different implementation of the ATI one ?

Ok, I look at the ‘Vertex optimization’ sample on the ADC site, and it seems that APPLE_vao and APPLE_var have different behaviours than the ATI_vao and NV_var extensions:

  • Unlike APPLE_var, NV_var do not like multiple allocations (more than one allocation conduces to a serious performance decrease).
  • Unlike ATI_vao, APPLE_vao isn’t a concrete allocation manager, simply a state manager.
  • APPLE_var and APPLE_vao can (and should) work together.

Tell me if I’m wrong… And do you know how many array allocations these extensions can handle or what is the maximum size of such arrays?


The only recommendation I’ve heard is not to exceed the AGP GART or some other such technical jargon. The concrete recommendation was something along the lines of a max of 22-24MiB of VAR on a 32MiB card.

Basically, just do it, and see if it’s fast enough

Ok, thank you OneSadCookie!

Do you notice any limitation (or serious performance drop) when using many var?

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.