Seems Nvidia has released OpenGL 3.0 drivers for Linux (yay!) but they don't support my GeForce 7600GS (sigh). I'm thinking maybe I should buy a kick-posterior gaming laptop with an uber-3D chip so I'm not always tied to my workstation at home if I want to do OpenGL 2.0 or above work.
Anyway, tried to port the ARB shader_objects wrappers to 2.0 this evening, been letting the 2.0 versions fall behind, as I have no way to test them (I'm guessing there's a way to get OpenGL 2.0 drivers for this gentoo box). I also wrapped the get uniform location APIs to auto-append a \000 character if it's not provided.Lastly, I'm punting on the glMultiDrawElements function. This little used function is basically a driver-level loop that iterates over a series of glDrawElements calls, but something about it is causing cores on my workstation. For now I've "wrapped" it with a pure-python replacement. Good news is that what I'm reading from dev sites, the function is poorly supported and not likely to be faster than C iteration. Bad news is that it would have been way faster than Python iteration.