PDA

View Full Version : OpenGL, Vista, ATI and C++



starmerak
11-10-2009, 04:39 AM
I'm playing a little with OpenGL and it works fine as long as I stay at OpenGL 1.1. I do NOT use Visual Studio, my programming environment is Dev-C++. The documentation says my ATI card supports OpenGL 3, and I have downloaded the latest drivers, headers and the extsetup.lib. By moving around the headers and the order of linked libs I got down the number of error messages from one zillion to just one:
.drectve `/DEFAULTLIB:"LIBC" /DEFAULTLIB:"OLDNAMES" ' unrecognized
As I understand it that means I've missed linking a library, I've included extsetup, opengl32 and glu32 ( in that order ).
Including glaux doesn't change anything, neither do gdi32. Could someone give a better suggestion?

Heiko
11-10-2009, 04:51 AM
On Linux I have to include `GL/glATI.h'. Perhaps this is what you have to do as well?

Further: I believe that for creating an OpenGL 3.x environment in Windows, you first have to create an OpenGL 1.x/2.x environment, load the necessary extensions that are needed to create an OpenGL 3.x environment, ditch the OpenGL 1.x/2.x environment and create the OpenGL 3.x environment with the just loaded extensions.

No personal experience with that though. Its just that I think I've read something like that somewhere at some point (yes... rather vague, probably somebody can clarify/confirm this).

Anyway: if your ATI card can do OpenGL 3 (that means its an HD2xxx, HD3xxx, HD4xxx or HD5xxx), you should in some way be able to get it running. OpenGL 3.0 is supported for a while now by Ati, OpenGL 3.1 is also supported (not sure if the support for that is complete) and OpenGL 3.2 probably won't take long anymore before its supported.

starmerak
11-10-2009, 05:04 AM
Thanks for the comment. By including <GL/glextsetup.h> you automatically include the other files. The extsetup is also doing all the boring PFN##proctype##PROC loading so the problem is probably not found there. I CAN indeed load the extensions "manually", but as there are more than a hundred I'd like to use the libraries I have.

starmerak
11-10-2009, 11:04 AM
Feedback:

After lots of digging I found, in AMD:s radeon 3D programming, an "ATI OpenGL SDK" to download. However, to get it to work I had to modify the version checks from: ( as an example )

if ( (majorVersion == 1) &amp;&amp; (minorVersion >=2))

to:

if ( ( ( majorVersion == 1 ) &amp;&amp; ( minorVersion >= 2 ) ) || ( majorVersion > 1 ) )

the included loaders don't consider the possibility of cards supporting above GL 1.4 ;)