Edited by londer, 02 October 2012 - 12:30 PM.
Which versions of OpenGL is not worth to learn anymore?
Members - Reputation: 1992
Posted 02 October 2012 - 12:39 PM
Have a look at Core and Compatibility in Contexts page. In OpenGL 3.0, a lot of the silly, old-fashioned slow and retarded stuff was marked deprecated. In OpenGL 3.0 through 3.2 they got a bit confused at how deprecation, feature removal etc. should be done, and (in the typical messy OpenGL fashion) they got it sorted out for good only in OpenGL 3.2. So, primarily go for OpenGL 3.2, and if that's not available, OpenGL 3.1 with forward compatibility, and if that's not available, OpenGL 3.0, but don't call any deprecated functions.
OpenGL 3.2 is actually quite modern, and doesn't have all that crap anymore it used to have. also, GLES2 and WebGL are conceptually (almost) identical to OpenGL 3.2 API-wise, although feature/extension-wise they differ somewhat.
Crossbones+ - Reputation: 6180
Posted 02 October 2012 - 12:39 PM
The problem is, OpenGL ( and DX ) moved from a fixed pipeline to a programmable one, completely changing the way you do stuff.
It was this massive shift that obsoleted prior knowledge, and I highly doubt we will see another massive shift anytime soon. In fact, moving to a programmable pipeline gives a great deal more flexibility, making such changes even less likely.
Long story short, learn modern OpenGL and rest easy.
Moderators - Reputation: 30417
Posted 02 October 2012 - 12:42 PM
Learn the fundamentals. The latest-and-greatest API will always be changing, but the fundamentals will not.
Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.
Also check out my personal website at bryanwagstaff.com, where I write about assorted stuff.
Moderators - Reputation: 9465
Posted 02 October 2012 - 12:47 PM
If you don't understand the basic concepts, then no version will help you get things done.
For learning the concepts, the old API is in fact quite useful because it is very forgiving and works out of the box with no interaction. From there, you can easily learn by small tweaks and go back when it breaks. The modern API, on the other hand, is less forgiving in this regard, and it can be very difficult for a beginner to figure out where something went wrong. As long as you don't focus on the syntax, but on the concept of how everything works, then you will learn what is actually useful and the rest will come automatically.
Members - Reputation: 561
Posted 02 October 2012 - 01:18 PM
And what i probably will be missing ,if i start learning OGL 3.3 now, after a year ?
3.x is a fine target and I'd second the very specific 3.2 as a good place to be. 2.x can still be quite popular and/or relevant but for the most part I'd be hard pushed to say you'd miss anything because improvements were made and a lot of older cruft has now been removed. Chances are you'd be missing more by going with an earlier version, if only because some of the now mandatory good parts were previously optional and you might just overlook them for that reason, which can also be a little misleading.
GDNet+ - Reputation: 1968
Posted 02 October 2012 - 02:12 PM
Version 2.x is a good starting place, as the fixed pipeline is no longer necessary, but oddly, this version of GLSL still has fixed functionality. As others have stated, 3.x is probably the best starting point.
Members - Reputation: 612
Posted 03 October 2012 - 09:20 AM
OpenGL 4.X Red Book (One True God type book), 8th Edition, will be out on Feb. 17, 2013.
OpenGL 3.X Red Book (Similar...), 7th Edition, is available for under $45, if you live in US.
Everyone here is recommending you to go with OpenGL 3.X, especially 3.2. However, there's no better reference books than the above 7th edition. Aim for 7th Edition, or wait until next year for the 8th edition.
So, start from 3.0, then advance to 3.1, and then do some trials-and-errors on 3.2. That's the only way I see it may work for those who recommends you to go with GL 3.2.
Good luck. My post may not be helpful to your questions, but at least I'm steering you towards your rightful path.