Jump to content
  • Advertisement
Sign in to follow this  
tragic

OpenGL Benefits from manual function loading.

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

So I have the goal of learning and implementing OpenGL4.3 (as well as ES 3.0) in my project as my Linux, Android, IOS, and OSX rendering engine. I was wondering if there was any benefit to manually loading functions for OpenGL rather than using a library like GLEW or similar.

Share this post


Link to post
Share on other sites
Advertisement

Maybe less overhead, but I see no advantage in developing your own library. 

In the end you would like to fully opperate openGL with its extensions, these library help you write rendering code rather than focusing on managing function pointers.

Share this post


Link to post
Share on other sites


. I was wondering if there was any benefit to manually loading functions for OpenGL rather than using a library like GLEW or similar.
If your goal is to waste your time, then that would be one benefit.

 

Use a lib: GLFW, GLEW, SMFL, SDL, etc. OpenGL is hard enough as it is, you don't need to artificially create more complexity around it.

Share this post


Link to post
Share on other sites

Maybe less overhead, but I see no advantage in developing your own library. 

In the end you would like to fully opperate openGL with its extensions, these library help you write rendering code rather than focusing on managing function pointers.

 

 


. I was wondering if there was any benefit to manually loading functions for OpenGL rather than using a library like GLEW or similar.
If your goal is to waste your time, then that would be one benefit.

 

Use a lib: GLFW, GLEW, SMFL, SDL, etc. OpenGL is hard enough as it is, you don't need to artificially create more complexity around it.

 

Fair enough. Thanks for the clarification people.

Share this post


Link to post
Share on other sites

Well, I'm using manual linking and static linking. The majority is statically linked. This is possible because I have a dynamic wrapper library (implementing a specific graphic sub-system) for each supported external graphics API, e.g. one for OpenGL3 and one for OpenGL4. Each one expected a defined set of minimum functionality which is statically linked. Any additional functionality is linked either weakly or even manually (this are relatively few functions). Since own libraries are tried to be loaded manually during the program start-up phase, a policy like "try loading the highest supported version first, then the next lower version, then … until the first successful load or else finally fail" is implemented.

 

Without that static linking, however, I would use one of the mentioned wrappers.

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!