With OpenGL 3.2, we use VAOs and shaders, and the result is all too often that the students get a blank screen, or a crash, even on the very first exercises. I have to question whether that is really the right way to teach CG.
We still have taken the step, I have rewritten my lectures, labs and course book to be 100% OpenGL 3.2, and most students seem to like the move. So far so good, so I am not trying to stay with the old way. But I must evaluate what we did, and I am questioning how to get started in a really smooth and nice way. There is room for improvement.
To me it is totally obvious, because formats like PICT, EMF and PDF are both, they work exactly like display lists when in memory, but can also be on disk. They are all collections of graphics commands. Display lists are the only way I know to do the in-memory part in OpenGL, and if I could extract the contents it could (with some effort and maybe some limitations) be translated to any of these file formats.Please, please explain to me how supporting display lists, which is basically a collection of GL commands that can be executed together at an arbitrary point of run-time, is equal to supporting a totally unrelated, platform dependent graphics file format. I really don't get it.
I ran into this when translating graphics code relying on metafiles both for in-memory recording of graphics sequences as well as storage. I want to make an OpenGL layer, and with display lists I have a part of it. I suppose the whole problem has to be solved on a higher level (sounds pretty complex), but I fear that I will lose performance.