Re:Learning Modern OpenGL
by loup-vaillant on Wednesday May 14, 2014 @09:38PM
(#7747531)
May I suggest a different approach? (No? I will anyway :-)
First, scrap immediate mode. Do as if it doesn't exist.
Second, since modern OpenGL is impossible to teach, write a higher-level layer over modern OpenGL. Tailor that layer to teach what you want to teach. My guess is, you can do even better than the immediate mode —for teaching purposes, I mean.
Third, teach your student how you have implemented the magic, bit by bit. Or teach them some new low-level stuff, and then ask them to implement one of your high level functions. And so on, until they get the whole thing. (Be careful with that approach, though: you probably don't want your students to just plug holes in a program.)
That way, you keep the tight reward loop, and you don't teach obsolete tech. As approachable as it is, you don't want to even suggest immediate mode can be used for serious development.
Re:Learning Modern OpenGL
by Arelius on Thursday May 15, 2014 @12:49AM
(#7747900)
This! The layer you build can be super small, about 100 lines of code or so, and people can be taught to replace the whole thing rather quickly, and we can stop getting junior programmers that thing it's ok to use OpenGL in immediate mode.
First, scrap immediate mode. Do as if it doesn't exist.
Second, since modern OpenGL is impossible to teach, write a higher-level layer over modern OpenGL. Tailor that layer to teach what you want to teach. My guess is, you can do even better than the immediate mode —for teaching purposes, I mean.
Third, teach your student how you have implemented the magic, bit by bit. Or teach them some new low-level stuff, and then ask them to implement one of your high level functions. And so on, until they get the whole thing. (Be careful with that approach, though: you probably don't want your students to just plug holes in a program.)
That way, you keep the tight reward loop, and you don't teach obsolete tech. As approachable as it is, you don't want to even suggest immediate mode can be used for serious development.