I have also decided to provide an STL compliant iterator and const iterator so that u can sort vertices using STL. I have seeked professional advice on the structure of auto_vb and what's been said has been made note of and so a few adjustments will be made.
Namely i was advised that it would seem a more natural syntax to use += and + instead of << to put vertices into the buffer,although i beg to differ since syntactically i think >> is the best way to extract vertices from the buffer. This would make << and >> a matching syntactical pair, this being better in my opinion. I have also considered that accessor syntax might be better if i followed in the steps of STL by using push and pop_back. This may not be such a good idea since rarely is it important to have specific vertices at the front or back. Any opinions?
I also plan to reveal an even futher managed vertex buffer. This one will also have the built in functionality of indexing (note: i am yet to fully design this so it may end up not being feasable).
The concept behind this is that u can add vertices to the buffer in groups and an index keeps track of the groups. You can apply a descriptor for the group, like the texture that will be applied. this will then give you the ability to sort the groupings of vertices by texture. The new auto_vb would then be able to optimise by concatenating groups of vertices together, if you wish, in order to improve performance.
Well thats the update.
Any feedback would be appreciated.