Hey everyone

First of all a minor introduction.

I'm not exactly a beginner when it comes to programming. First experience with programming was in a kind of odd language called DarkBasic back in the days. Anyways I've been using object-oriented languages for almost 3 years now (including C#, obj-c, Java, C, C++). Only reason I mentioned that is simply to state that I'm not a complete newbie when it comes to programming in general.

However, I am completely new when it comes to graphics programming with absolutely zero experience. I've decided that I want to start learning OpenGL by working a bit on a hobby project when I find spots of time.

The last few days I've been searching around for OpenGL introductory books and the like. I've seen quite a lot of mentions of the red book as well as the blue OpenGL superbible. Besides that I've been searching for articles and other beginner related material.

I have at this point decided that Java using the Lightweight java game library will be the learning platform of choice as this should be fairly up to date with OpenGL and provide other libraries such as windowing and input.

Unfortunately I think this have left me more confused than when I initially started looking. Here is my current worries and questions:

There seems to be a host of different opinions about whether to start learning OpenGL from 2.0 and below using the old fixed pipeline or from the approach of 3.3+ using purely shaders. My questions to this is:
I will slowly be working to build my own small 3D game to get into graphics programming. Will it hurt me a lot to learn OpenGL from the ground up and then switch to 3.3+ technology when I feel more comfortable in the field, or will it do more damage than good?

To this I have a related question:

I've seen a lot of people recommending going the 3.3+ way when learning, the only problem I've had with this is that the learning material for OpenGL seems shockingly appalling at the current time, especially for the newer technology. So much that it almost seems easier to start with older versions of the OpenGL superbible (such as the 4th edition), as the newer edition of the red book seems to be getting quite bad reviews. So where is a complete beginner to get the best chance at a start with OpenGL? Baffling considering OpenGL is so widely used.

So to summarize quickly:

  • Will it actually hurt a lot at later points to learn OpenGL from the ground up using older OpenGL technology, like 1.1 to 2.0? Or should I simply go the 3.3+ way?'
  • Learning material seems appalling at best (mostly outdated) or I simply haven't looked enough. What learning material can you recommend for a complete beginner that is still relevant today?


Thank you all for your time I appreciate it a lot