• Advertisement
Sign in to follow this  

Help with GLFW?

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

Help!

 

I haven't programmed GL using C++ in a long while, having chosen other environments for more portability. However, someone [here] recently turned me onto GLFW.

 

It seemed easy enough, and in minutes I had a basic program working.

 

However, as a test case, I am porting a Java app to C++, and keep running into missing gl[...] methods.  Some I could fix by simply including "glext.h," but now even that won't fix some (glGetAttribLocation, ...).

 

I searched and read and it seems I need a gl3 or glcorearb header, yet even when I add the latter (chosen by looking at GLFW3.h header file), my problem persists.

 

I am using GLFW 3, and Visual Studio 2013.

 

Can anybody help me get this set up properly?

Share this post


Link to post
Share on other sites
Advertisement

Normally you have to ask the needed function pointers from the driver with wglGetProcAddress/glXGetProcAddress/whatever, but it's much easier to use somekind of library to do that for you. I'd use GLEW to do that, just include glew.h and call glewInit() after you've initialized your OpenGL context.

Share this post


Link to post
Share on other sites

Thanks Sponji,

 

I heard about Glew, but it seemed GLFW 3 didn't require it.

 

At this point, it wasn't so much link errors as compile errors.  After much flail, I managed to convince it to use the glcorearb.h file, and it seems happy with the prototypes.

 

Of course, once the dev tool (VS) thinks everything is okay, then the link issues will begin :-)

Share this post


Link to post
Share on other sites

I heard about Glew, but it seemed GLFW 3 didn't require it.
 
At this point, it wasn't so much link errors as compile errors.  After much flail, I managed to convince it to use the glcorearb.h file, and it seems happy with the prototypes.


I strongly recommend not playing around that way. Even if you manage to avoid compiler errors, you will then risk linker errors. If you don't run into those you might end up having problems on different Windows versions and different drivers.

Microsoft has fixed the OpenGL version on Windows at 1.1. Anything above that needs to be queried by the extension mechanism. Trying to work around the extension querying invokes undefined behavior.

On Windows, there is no real way around GLEW or something like it. GLFW offers a platform independent way of opening Windows and doing basic GL context management. What GLFW does and what GLEW does is pretty much orthogonal (and as such does not belong into a library which strives to be lean).

Share this post


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

  • Advertisement