Jump to content
  • Advertisement
Sign in to follow this  
NewBreed

OpenGL Worth learning OGL 2.1

This topic is 3986 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, With OpenGL 3.0 right around the corner, is it worth learning OpenGL 2.1, since 3.0 is going to bring in such substantial changes? Thanks, NB.

Share this post


Link to post
Share on other sites
Advertisement
That's up to you.
The shader language will be about the same. There will be a lot of commonalities but the API will be very different. Not to mention no one knows when it will come out.

Share this post


Link to post
Share on other sites
It depends are you talking about learning computer graphics and using opengl to help with that or do you already know DX and are thinking about just picking up the api. If it is just the api then I would wait. If you are new to computer graphics in general I would go ahead and start learning 2.1 as it will be a while after it is released that there is good entry level documentation anyway. The main difference between 2 and 3 is they are taking the old C style interface and making it object oriented. The fundamentals of computer graphics will be the same either way.

Share this post


Link to post
Share on other sites
Learning OpenGL 2.1 would be useful yes. What I found to be very helpful though was learning DX9 as well because OGL suffers a little from old functionality left in the library which is just very out of date and obsolete and some of those functions give the programmer an interface to the graphics hardware which is very inefficient. DX9 does not suffer in the same ways (though it suffers in others) and so getting OGL to do the same things as DX9 is a learning experience and one that can pay huge performance benefits.

I'm not a huge fan of DX9 but if you want my advice, learn how it works first and then move on to OGL. DX9 has a restricting com interface with tools which help the developer to learn when he is doing something wrong - Eg. performance warnings in debug output, PIX for debugging your graphics code, etc. These things will help you get up to speed with modern and *efficient* GPU programming more quickly. The trick will then be to move over to OGL with its more flexible interface and use the API subset which is relevant to efficient GPU programming. Eg. buffers, buffer storage, instancing, etc.

The transition from DX9 to OGL3 should be relatively smooth as both support an advanced feature set (though obviously the apis are very different and the base features will also be different), the benefit being then that you know 2 graphics APIs and more knowledge is always better. The alternative is to learn OGL2 and experience more of how the API feels and works, and then upgrade to OGL3 when the standard is finalised and the first batch of supporting drivers come out but be warned, you can expect some teething troubles before the drivers settle down. Also because they are stripping the obsolete functionality you may have gotten into bad habits using the old API and not know how to easily update your code to the more efficient OGL3.

The choice as they say is yours.

Share this post


Link to post
Share on other sites
Keep in mind that even if OpenGL3.0's spec is released tomorrow it'll be a few months at best before we get stable drivers and there is unlikely to be any documentation out to help you for some time either.

Learning GL2.1 won't hurt, I'll say that much, although more important is learning the fundamentals of 3D graphics.

Share this post


Link to post
Share on other sites
Quote:

Keep in mind that even if OpenGL3.0's spec is released tomorrow it'll be a few months at best before we get stable drivers and there is unlikely to be any documentation out to help you for some time either.

Hm, I knew there would be driver issues, but perhaps I didn't expect that length of time... Maybe learning 2.1 wouldn't hurt as you say... I guess this is a "how long is a piece of string" type of question, but what would you say is a reasonable amount of time for somebody with many years programming experience to learn 2.1?

Ta,
NB.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!