By the way… this is a slightly different question, but it’s on the same subject. I have my program loading ms3d models into vertex arrays / vertex buffer objects (it does both, it just checks first) but I’m curious what’s the best way to handle skeletal animations.
I don’t think I should be running through my entire array every frame and rewriting the position of each vertex. It’s bad enough to do that with regular arrays, but doing it with put() seems slightly disingenuous. OpenGL handles transformations really well when you use rotatef/translatef etc. It’s a hell of a lot faster than using my own matrix calculations anyway, but I don’t know how to apply it to my model as it’s being rendered. Do I just need to keep track of how the vertices have been transformed, and just push/pop transformations as I render them? Or is there some way to use opengl for a transformation and have it actually return the transformed vertices?