Jump to content

  • Log In with Google      Sign In   
  • Create Account

Help with GLFW?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 HScottH   Members   -  Reputation: 508

Like
0Likes
Like

Posted 19 February 2014 - 11:12 PM

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?



Sponsor:

#2 Sponji   Members   -  Reputation: 1248

Like
0Likes
Like

Posted 20 February 2014 - 12:17 AM

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.


Derp

#3 HScottH   Members   -  Reputation: 508

Like
0Likes
Like

Posted 20 February 2014 - 02:12 AM

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 :-)



#4 Sponji   Members   -  Reputation: 1248

Like
0Likes
Like

Posted 20 February 2014 - 03:57 AM

I think it's impossible to just link newer OpenGL functions into your program, because those have to be asked from the driver.

 

Few links about this stuff:

https://www.opengl.org/wiki/Load_OpenGL_Functions

https://www.opengl.org/wiki/OpenGL_Loading_Library


Derp

#5 BitMaster   Crossbones+   -  Reputation: 4077

Like
1Likes
Like

Posted 20 February 2014 - 04:30 AM

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).




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS