Jump to content
  • Advertisement
Sign in to follow this  
Chris_F

OpenGL Trying to comprehend OpenGL

This topic is 2215 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

I'm coming from having worked mostly with Direct3D and only a small amount of OpenGL 1.x knowledge, and now that I'm trying to learn the ins and outs of modern OpenGL I'm having a very hard time understanding a few things, but none more than this business with deprecation. I'm trying to figure out what features I should or should not be using if I want to keep my code very core/forward compatible thing-a-ma-bob. I'm targeting 4.x specifically. Why is there no concise information available about what IS and IS NOT considered deprecated?

Even more confusing is when I run into things like this: I read online that GL_EXTENSIONS is deprecated in 3.0, so why on Earth can I still use it when I am using the latest glcorearb.h and a 4.2 core profile forward compatible context? I thought it was supposed to be removed for forward compatible contexts.

Share this post


Link to post
Share on other sites
Advertisement
There are plenty of tutorials focusing on the modern API. You can start looking at the Getting Started box in the OpenGL forum for a few of them. If you want a concise list of what's deprecated and what's not, check the quick reference card at the OpenGL Registry. At the registry you can find the API documentation as well which has all the information about deprecated functions but not as a very concise list of course.

Share this post


Link to post
Share on other sites

Even more confusing is when I run into things like this: I read online that GL_EXTENSIONS is deprecated in 3.0, so why on Earth can I still use it when I am using the latest glcorearb.h and a 4.2 core profile forward compatible context? I thought it was supposed to be removed for forward compatible contexts.

Either non-conforming driver (i doubt it a bit, what GPU?) or you do not have a forward compatible context. Sure you set it up correctly (drop code)?

Trivia: Glew uses that deprecated function which causes a crapton of errors - iirc, one has to allow use of experimental extensions to make glew use the proper functions to get around the problem.

Share this post


Link to post
Share on other sites

Either non-conforming driver (i doubt it a bit, what GPU?) or you do not have a forward compatible context. Sure you set it up correctly (drop code)?

Trivia: Glew uses that deprecated function which causes a crapton of errors - iirc, one has to allow use of experimental extensions to make glew use the proper functions to get around the problem.


AMD HD 5850 and glGetString(GL_VERSION) is reporting a 4.2 core peofile forward-compatible context, and glGetString(GL_EXTENSIONS) still works without any errors.

Share this post


Link to post
Share on other sites
AMD tends to be more strict about spec than NVIDIA (for circumstantial reasons), but seems they do not bother to disable that function ... understandable. One of course should not use the function regardless of whether it works with one-or-other driver. I recommend to get a debug context with all the debugging bells and whistles enabled (not available on my hardware, so not sure about their quality currently) or use gDebugger (which definitely does the job) to highlight that kind of problems.

Share this post


Link to post
Share on other sites

Hi,

A quick question: Does OpenGL deprecated features ever force the GD to change game code?



Clinton

If the rendering code and the game code are sufficiently separated, then you don't have to modify the game code.

Share this post


Link to post
Share on other sites
Is OpenGL ever a part of a render engine (separated) (or a game engine source code) or is OpenGL a part of the framework?


Clinton

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.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!