Establishing GL dev environment on win32
How do I get all the OpenGL libraries and headers installed in my system?
I am using an ATI Radeon 9800.
I downloaded the SDK from their site, but it does not include the expected headers and libs....
I get files such as
glati.h
wglati.h
ATIExtensions.h
and for libraries I get:
ATIExtensions.lib
ATIExtensions_d.lib
I've looked at the beginners faq on www.opengl.org,
and it doesnt seem that there is a single file to download that
will establish the necessary environment to do OpenGL 1.5 development...
Help? [smile]
your compiler/ide will have the files needed for windows development, at worse you'll have to download the platform SDK if you use the Visual C++ 2005 Express beta
Oh ok. Is it safe to assume the VS.net 2003 includes the headers for OpenGL 1.5?
I cannot check ATM as I reformated my system this past weekend....
If I plan to do some linux development, can I legally use the headers from VS.NET?
I cannot check ATM as I reformated my system this past weekend....
If I plan to do some linux development, can I legally use the headers from VS.NET?
Quote:Original post by WilyCoder
Oh ok. Is it safe to assume the VS.net 2003 includes the headers for OpenGL 1.5?
no. Windows only has 1.1 headers/libs, to access anything beyond that you need to use them as extensions, something like GLee (see forum FAQ) can help with this.
Quote:
If I plan to do some linux development, can I legally use the headers from VS.NET?
Your linux enviroment will have its own headers, the Windows ones wont be compatible as they depend on things in windows.h and on windows specific type defs
Way cool guys, thanks [smile]
I forgot about the forum FAQ, the link is very tiny....
I think I am going to use GLee....
I forgot about the forum FAQ, the link is very tiny....
I think I am going to use GLee....
I have a question out of curiosity:
Why doesn't the ARB provide the necessary headers/libraries for the common operating systems? Would that be to specific a goal, not general enough?
Why must we rely on third party developers to expose the functionality of OpenGL > 1.1?
I can understand MS not wanting to provide OpenGL beyond what they are contractually bound to, but what about the rest of the ARB?
Why doesn't the ARB provide the necessary headers/libraries for the common operating systems? Would that be to specific a goal, not general enough?
Why must we rely on third party developers to expose the functionality of OpenGL > 1.1?
I can understand MS not wanting to provide OpenGL beyond what they are contractually bound to, but what about the rest of the ARB?
You *could* use a gl 1.5 header and compile without issue, the problem only comes when someone without gl 1.5 tries to run it and it crashes without reason ;). By using extensions at run-time, you can check for compatibility and fall-back as required. I have seen people write/use other version of headers and libs (however I can't recall who/where I saw these), but it is possible to do. If I recall properly, I think borland had a program that could generate a .lib out of a .dll, then you could use that .lib file with a gl header that had all the 1.5 features and compile it without issue, and it would run fine on anybodys machine that had gl 1.5 installed, but crash due to incorrect .dll versions on anybody that doesn't ;).
Unforunately, no-one but Microsoft can write the necessary dll for exposing core functions from 1.2 onwards. That means that although graphics card drivers can provide functions for extensions, and you can compile against the latest glext.h to get access to them, you can't call functions directly because they're not defined in the Windows dll. (I think it's opengl32.dll, but don't quote me on that). However, the extension mechanism just deals with strings, so you can use it to gain access to functions that weren't even thought of when Microsoft released their 1.1 driver.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement