Computer Science Canada

OpenGL headers

Author:  CodeMonkey2000 [ Fri Aug 28, 2009 7:01 pm ]
Post subject:  OpenGL headers

Hey all, I was trying to do some advanced things with openGL but I realized that my openGL headers and .LIBS and were out of date. All my .DLLs are up to date, when I use glGetSring I get AT technologies for my vendor, and 2.1 as my openGL version. I looked everywhere to find the openGL headers, but I can't seem it find it. The most logical place would be to go the openGL SDK site, but that didn't help much. Anyone know how you are suppose to update them?

Author:  S_Grimm [ Fri Aug 28, 2009 9:30 pm ]
Post subject:  RE:OpenGL headers

Re install the OpenGL sdk.

Or try DirectX

Author:  CodeMonkey2000 [ Fri Aug 28, 2009 10:04 pm ]
Post subject:  RE:OpenGL headers

OpenGL is already successfully installed, and uses hardware acceleration. I don't know where to find the updated .LIB, gl.h and glu.h files.

Author:  S_Grimm [ Sat Aug 29, 2009 8:30 am ]
Post subject:  RE:OpenGL headers

What Version of OpenGL SDK is installed? If it's OpenGL 2 then Uninstall it and install OpenGL 3 SDK

Author:  rizzix [ Sat Aug 29, 2009 3:14 pm ]
Post subject:  Re: RE:OpenGL headers

AV @ Sat Aug 29, 2009 8:30 am wrote:
What Version of OpenGL SDK is installed? If it's OpenGL 2 then Uninstall it and install OpenGL 3 SDK


OpenGL 3 is technically not backward compatible with 2.x (Most of your code is no longer written in C, but in shading languages like GLSL or Cg)

Author:  CodeMonkey2000 [ Sat Aug 29, 2009 11:36 pm ]
Post subject:  Re: OpenGL headers

Ok I figured out how to update the headers Very Happy

Basically, you gain the functionality of the newer version of openGL (ie. 1.1 and above) by using the extensions library (glext.h) from the official site.

Here is where to get it

But the thing is that the header gives you the function pointers which you have to interface with the correct function calls yourself. To make this easier you can use other libraries that load the library for you, like GLEW or GLee.

The way openGL works is a bit different. Essentially different video card vendors (eg nVidia and ATI) constantly make extensions for openGL, and eventually the extensions become "officialized". OpenGL is constantly being updated by the vendors, but it takes time for these updates to be official. Some of the functions are vendor specific, any functions starting with gl_ATI_ will only work on ATI cards (if that card supports it). Likewise any functions starting with gl_NV_ will only work on nVidia cards (if that card supports that function). You can get the vendor specific extensions that aren't official yet from your graphics vendor.

It's actually a fairly smart and efficient system. You learn something new everyday Razz


: