dear sir/maam,
i would greatly appreciate if anyone told me where to download OpenGL
for windows so that i can make applications using OpenGL inside VC++ 6
i am a newbie wanting to learn OpenGl
Thanks
Manish
"The Fun in life is in living the extremes"
|
|
0
|
|
|
|
Reply
|
manish
|
10/20/2003 1:57:16 PM |
|
> i would greatly appreciate if anyone told me where to download OpenGL
> for windows so that i can make applications using OpenGL inside VC++ 6
> i am a newbie wanting to learn OpenGl
Start by looking at http://nehe.gamedev.net/
/Soeren
|
|
0
|
|
|
|
Reply
|
Soeren
|
10/20/2003 2:21:22 PM
|
|
On 20 Oct 2003 06:57:16 -0700 wrote manish@444.net (Manish Chakravarty) in
comp.graphics.api.opengl with
<f6c03307.0310200557.23165a12@posting.google.com>
> i would greatly appreciate if anyone told me where to download OpenGL
>for windows so that i can make applications using OpenGL inside VC++ 6
>i am a newbie wanting to learn OpenGl
Usually you don't need this. It should have come with your graphic card driver
and Visual C has all you need for it.
--
Gerhard Gruber
F�r jedes menschliche Problem gibt es immer eine einfache L�sung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)
|
|
0
|
|
|
|
Reply
|
Gerhard
|
10/20/2003 4:07:04 PM
|
|
On Mon, 20 Oct 2003 18:07:04 +0200
Gerhard W. Gruber <sparhawk@gmx.at> wrote:
> On 20 Oct 2003 06:57:16 -0700 wrote manish@444.net (Manish
> Chakravarty) in comp.graphics.api.opengl with
> <f6c03307.0310200557.23165a12@posting.google.com>
>=20
> > i would greatly appreciate if anyone told me where to download
> > OpenGL
> >for windows so that i can make applications using OpenGL inside VC++
> >6 i am a newbie wanting to learn OpenGl
>=20
> Usually you don't need this. It should have come with your graphic
> card driver and Visual C has all you need for it.
>=20
all except opengl > 1.1. If you want opengl 1.2/1.3 extensions, you have
to find something else :/
>=20
> --=20
> Gerhard Gruber
>=20
> F=FCr jedes menschliche Problem gibt es immer eine einfache L=F6sung:
> Klar, einleuchtend und falsch. (Henry Louis Mencken)
|
|
0
|
|
|
|
Reply
|
screetch
|
10/20/2003 7:27:37 PM
|
|
> i would greatly appreciate if anyone told me where to download OpenGL
> for windows so that i can make applications using OpenGL inside VC++ 6
> i am a newbie wanting to learn OpenGl
I think if you include these headers then you have the first step.
These headers are for v1.1 I believe (But I do not use VC 6).
#include <gl/glu.h>
#include <gl/glaux.h>
#pragma comment( lib, "opengl32.lib" )
#pragma comment( lib, "glu32.lib" )
These library will statically hook themselves to some OpenGL dll (driver
that came with your video card, I do not remember how it is called, probably
OpenGL32.dll or something like that)
If I were you I would first use the v1.1 convention because not every
computer have drivers that supports the v1.2 and up.
In order to use the v1.2(and up) functionality, first you have to load the
OpenGL dll and the do some GetProcAddress to determine wich version you have
and if the functions exists.
All OpenGL drivers should provide the v1.1 functions and guaranteed that
they exist.
Hope this helps...
|
|
0
|
|
|
|
Reply
|
Olaf
|
10/21/2003 2:14:40 PM
|
|
screetch wrote:
>>Usually you don't need this. It should have come with your graphic
>>card driver and Visual C has all you need for it.
>>
> all except opengl > 1.1. If you want opengl 1.2/1.3 extensions, you have
> to find something else :/
>
Are we starting that again?
There is *only* one .lib file for Windows* so don't
bother looking for anything else. For more functions
you have to use the extension mechanism.
[*] And it's supplied with VC++.
--
<\___/> For email, remove my socks.
/ O O \
\_____/ FTB. Why isn't there mouse-flavored cat food?
|
|
0
|
|
|
|
Reply
|
fungus
|
10/21/2003 2:24:07 PM
|
|
Olaf.Baeyens@skyscan.be wrote:
>> i would greatly appreciate if anyone told me where to download OpenGL
>>for windows so that i can make applications using OpenGL inside VC++ 6
>>i am a newbie wanting to learn OpenGl
>
>
> I think if you include these headers then you have the first step.
> These headers are for v1.1 I believe (But I do not use VC 6).
>
> #include <gl/glu.h>
> #include <gl/glaux.h>
>
"gluax"???
I think you mean:
#include <GL/gl.h>
#include <GL/glu.h>
nb. The "GL" should be upper case.
--
<\___/> For email, remove my socks.
/ O O \
\_____/ FTB. Why isn't there mouse-flavored cat food?
|
|
0
|
|
|
|
Reply
|
fungus
|
10/21/2003 2:25:13 PM
|
|
i don't know for the "again" part, i don't read all posts in here
anyway, i don't understand what's the problem : what decides what's
available on the system is the DLL, not the lib, and all DLL now
supports opengl 1.2 at least. So where's the problem with using opengl
1.2?
i don't do much things on windows, i develop under linux and when i want
to make a release i go under windows and compile the sources. So if i
miss something, just excuse me, i'm not a windows guru at all.
On Tue, 21 Oct 2003 14:24:07 GMT
fungus <openglMY@SOCKSartlum.com> wrote:
> screetch wrote:
> >>Usually you don't need this. It should have come with your graphic
> >>card driver and Visual C has all you need for it.
> >>
> > all except opengl > 1.1. If you want opengl 1.2/1.3 extensions, you
> > have to find something else :/
> >
>
> Are we starting that again?
>
> There is *only* one .lib file for Windows* so don't
> bother looking for anything else. For more functions
> you have to use the extension mechanism.
>
>
>
> [*] And it's supplied with VC++.
>
>
> --
> <\___/> For email, remove my socks.
> / O O \
> \_____/ FTB. Why isn't there mouse-flavored cat food?
>
>
>
>
|
|
0
|
|
|
|
Reply
|
screetch
|
10/21/2003 3:48:03 PM
|
|
screetch wrote:
> i don't know for the "again" part, i don't read all posts in here
>
> anyway, i don't understand what's the problem : what decides what's
> available on the system is the DLL, not the lib, and all DLL now
> supports opengl 1.2 at least. So where's the problem with using opengl
> 1.2?
>
Yes but you when you compile a program you don�t link
to the .dll file, you link to the .lib file.
If you want to access the extra functions then use the
extension mechanism. It's three lines (or so) of code
and you'll save yourself a lot of grief in the long run.
--
<\___/> For email, remove my socks.
/ O O \
\_____/ FTB. Why isn't there mouse-flavored cat food?
|
|
0
|
|
|
|
Reply
|
fungus
|
10/21/2003 4:05:30 PM
|
|
It depends on what is in the DLL. For implicit linking, the LIB file is
very important. For explicit linking (like most extensions) it doesn't
matter at all.
WTH
"screetch" <nscreetch@free.fr> wrote in message
news:20031021174803.07b10d45.nscreetch@free.fr...
> i don't know for the "again" part, i don't read all posts in here
>
> anyway, i don't understand what's the problem : what decides what's
> available on the system is the DLL, not the lib, and all DLL now
> supports opengl 1.2 at least. So where's the problem with using opengl
> 1.2?
>
> i don't do much things on windows, i develop under linux and when i want
> to make a release i go under windows and compile the sources. So if i
> miss something, just excuse me, i'm not a windows guru at all.
>
> On Tue, 21 Oct 2003 14:24:07 GMT
> fungus <openglMY@SOCKSartlum.com> wrote:
>
> > screetch wrote:
> > >>Usually you don't need this. It should have come with your graphic
> > >>card driver and Visual C has all you need for it.
> > >>
> > > all except opengl > 1.1. If you want opengl 1.2/1.3 extensions, you
> > > have to find something else :/
> > >
> >
> > Are we starting that again?
> >
> > There is *only* one .lib file for Windows* so don't
> > bother looking for anything else. For more functions
> > you have to use the extension mechanism.
> >
> >
> >
> > [*] And it's supplied with VC++.
> >
> >
> > --
> > <\___/> For email, remove my socks.
> > / O O \
> > \_____/ FTB. Why isn't there mouse-flavored cat food?
> >
> >
> >
> >
>
>
|
|
0
|
|
|
|
Reply
|
WTH
|
10/21/2003 4:38:03 PM
|
|
> > I think if you include these headers then you have the first step.
> > These headers are for v1.1 I believe (But I do not use VC 6).
> >
> > #include <gl/glu.h>
> > #include <gl/glaux.h>
> >
>
> "gluax"???
>
> I think you mean:
>
> #include <GL/gl.h>
> #include <GL/glu.h>
>
Oops, you are right.
I just copied and pasted some example from my code.
About this uppercase thing, I guess you normally program in Linux like
environment?
Because the lower case "gl" compiles perfect in VC++.
|
|
0
|
|
|
|
Reply
|
Olaf
|
10/22/2003 1:35:23 PM
|
|
> > anyway, i don't understand what's the problem : what decides what's
> > available on the system is the DLL, not the lib, and all DLL now
> > supports opengl 1.2 at least. So where's the problem with using opengl
> > 1.2?
> >
>
> Yes but you when you compile a program you don�t link
> to the .dll file, you link to the .lib file.
Fungus 3 things:
* Not everybody here has English as native language.
* Don't assume everyone uses C++, some use Delphi and they don't have lib
files.
I tried to give an general description how OpenGL v1.2... (from internal
Windows viewpoint, not C++) would work.
* Not everyone is as technically advanced in this topic as you are in this
3D thing. It took me too some time to start realizing how OpenGL worked and
how I could be used to include the extended functionality of v1.2 and up. It
turned out to be stupidly simple *IF* you know it.
You are right in what you say, the lib files are used to statically link the
C(++) code to the statically loaded dll.
But you can also load a dll dynamically and then you have to find your own
entry points and this is what you need for OpenGL v1.2 and up in my opinion.
Something like this in pure Windows API:
hModule=LoadLibrary(SomeOpenGLdll_probably_OpenGL32.dll.)
wglCreateBufferRegionARB=GetProcAddress(hModule,"wglCreateBufferRegionARB")
But some GOOD NEWS!!!!
It appears that OpenGL has standard some functionality that combines the
LoadLibrary/GetProcAddress with the already loaded OpenGL dll.
They do it like this:
wglCreateBufferRegionARB=wglGetProcAddress("wglCreateBufferRegionARB"); //
Note the "wgl" extension to GetProcAddress
And some VERY GOOD NEWS!!!
Lev Povalahev (http://www.levp.de/3d/) create a C source file that extracts
all possible functtionality up to v1.4 (or maybe higher by now).
Use something like this.
#include "extgl.h" // OpenGL 1.4 specifications must be initialized before
<gl/gl.h> and <gl/glu.h>!
......
extgl_Initialize(); /// Initializes OpenGL 1.4 functionality
//--- Now you have OpenGL v1.4 functionality IF your driver supports this.
if (wglCreateBufferRegionARB) {
wglCreateBufferRegionARB(Dosomething)
} else {
//--- This function is not supported
}
|
|
0
|
|
|
|
Reply
|
Olaf
|
10/22/2003 2:16:20 PM
|
|
this is not an error from visualc++, because the lowercase makes no
difference under windows, but fungus is right : the lowercase gl would
not compile under linux.
i do not know much about opengl under windows, i generally develop
things under linux and hack them til they work fine under windows. So
excuse my ignorance on the opengl 1.1/>1.2 problem, but what i think is
that these extensions are now official (not like the ARB and NV things)
and should compile under both windows and linux without having to find
the entry point. Now this is only my tux point of view, and as it doesn
t build well under windows i'll have to change my code a bit
On Wed, 22 Oct 2003 15:35:23 +0200
<Olaf.Baeyens@skyscan.be> wrote:
> > > I think if you include these headers then you have the first step.
> > > These headers are for v1.1 I believe (But I do not use VC 6).
> > >
> > > #include <gl/glu.h>
> > > #include <gl/glaux.h>
> > >
> >
> > "gluax"???
> >
> > I think you mean:
> >
> > #include <GL/gl.h>
> > #include <GL/glu.h>
> >
>
> Oops, you are right.
> I just copied and pasted some example from my code.
>
> About this uppercase thing, I guess you normally program in Linux like
> environment?
> Because the lower case "gl" compiles perfect in VC++.
>
>
>
|
|
0
|
|
|
|
Reply
|
screetch
|
10/22/2003 5:31:13 PM
|
|
screetch wrote:
> this is not an error from visualc++, because the lowercase makes no
> difference under windows, but fungus is right : the lowercase gl would
> not compile under linux.
>
> i do not know much about opengl under windows, i generally develop
> things under linux and hack them til they work fine under windows. So
> excuse my ignorance on the opengl 1.1/>1.2 problem, but what i think is
> that these extensions are now official (not like the ARB and NV things)
> and should compile under both windows and linux without having to find
> the entry point. Now this is only my tux point of view, and as it doesn
> t build well under windows i'll have to change my code a bit
>
That theory would be would if Microsoft updated
opengl32.dll, but they haven�t for the last ten
years, and they�re not likely to start anytime
soon. Expect to see it the same day that they
support Java2 by default.
Microsoft's support for OpenGL is almost nonexistant.
If they could get away with removing OpenGL from
Windows then I�m sure they would.
OTOH, updating OpenGL.dll for Windows XP (for example)
would cause you more problems than it solves. You'd
just end up with a load of angry Win98 users complaining
to you that it doesn't work on their machines.
"Better the devil you know", as they say. Even if it
means an extra three lines of code in your program.
--
<\___/> For email, remove my socks.
/ O O \
\_____/ FTB. Why isn't there mouse-flavored cat food?
|
|
0
|
|
|
|
Reply
|
fungus
|
10/22/2003 6:58:51 PM
|
|
(message (Hello 'Olaf.Baeyens@skyscan.be)
(you :wrote :on '(Tue, 21 Oct 2003 16:14:40 +0200))
(
OB> These library will statically hook themselves to some OpenGL dll
OB> (driver that came with your video card, I do not remember how it is
OB> called, probably
OB> OpenGL32.dll or something like that)
opengl32.dll, that's dll of OS and should never be updated.
if hardware acceleration is present, it loads some dll (for nVIDIA cards
it's nvoglnt.dll, there's a key in registry that describes filename),
queries it for features it has and translates opengl calls to driver calls.
nvopglnt itself do not export any ogl functions directly, it exports only
DrvGetProcAddress so function can be got. as i understand, this does not use
standard exporting mechanizm at all.
OB> In order to use the v1.2(and up) functionality, first you have to
OB> load the
OB> OpenGL dll and the do some GetProcAddress
there's no way to load GL functions except wglGetProcAddress exported by
opengl32.dll,
unless you dont want to hack OS a lot and be specific to particular
videocard.
OB> to determine wich version you have
there's OpenGL core features that says about version and features present.
)
(With-best-regards '(Alex Mizrahi) :aka 'killer_storm)
(prin1 "Jane dates only Lisp programmers"))
|
|
0
|
|
|
|
Reply
|
Alex
|
10/22/2003 8:24:02 PM
|
|
> OB> These library will statically hook themselves to some OpenGL dll
> OB> (driver that came with your video card, I do not remember how it is
> OB> called, probably
> OB> OpenGL32.dll or something like that)
>
> opengl32.dll, that's dll of OS and should never be updated.
> if hardware acceleration is present, it loads some dll (for nVIDIA cards
> it's nvoglnt.dll, there's a key in registry that describes filename),
> queries it for features it has and translates opengl calls to driver
calls.
> nvopglnt itself do not export any ogl functions directly, it exports only
> DrvGetProcAddress so function can be got. as i understand, this does not
use
> standard exporting mechanizm at all.
>
AHA! at least someone that understands the internal workings how the drivers
gets loaded.
I was first convinced that OpenGL32.dll was replaced by the nVidia or ATI
driver.
But now I checked and figured out that OpenGL32.dll must load some other
dll.
But anyway, the original question was how to use OpenGL functionality, and
the answer is:
In MVC++ it is nothing more than to include the headers " #include
<GL/gl.h>" and "#include <GL/glu.h>" and the libraries "#pragma comment(
lib, "opengl32.lib" )" and "#pragma comment( lib, "glu32.lib" )".
--> I noted that gl.h and glu.h do not like to be include multiple times in
different header files. The "#pragma once" is missing there. I fixed this by
putting these 2 includes in another header file that does have a "#pragma
once".
"Standard you always have OpenGL v1.1 readily active, but you have to
dynamically map the v1.2 (and up) function pointers to the ones found in the
driver using wglGetProcAddress()".
And if your program must run on all machines, first make your program run
using only the v1.1 functions.
Then in a second phase, when you discover that v1.2 is present on that
particular machine, then you could use these v1.2 functions to speed up or
make the image more nice.
|
|
0
|
|
|
|
Reply
|
Olaf
|
10/23/2003 7:00:04 AM
|
|
Olaf.Baeyens@skyscan.be wrote:
>
> AHA! at least someone that understands the internal workings how the drivers
> gets loaded.
It's no mystery.
> I was first convinced that OpenGL32.dll was replaced by the nVidia or ATI
> driver.
No, definitely not. opengl32.dll patches you through to
the driver dll but it's what your program links to.
Remember that an OpenGL rendering context is just a big
list of function pointers. This list is set up whenever
you call wglMakeCurrent() and can point to functions in
any dll file. opengl32.dll is responsible for managing
this list. It can point you to the software renderer
or to a driver file.
--
<\___/> For email, remove my socks.
/ O O \
\_____/ FTB. Why isn't there mouse-flavored cat food?
|
|
0
|
|
|
|
Reply
|
fungus
|
10/23/2003 11:36:28 AM
|
|
|
16 Replies
396 Views
(page loaded in 0.325 seconds)
Similiar Articles: OpenGL SDK for windows - comp.graphics.api.opengldear sir/maam, i would greatly appreciate if anyone told me where to download OpenGL for windows so that i can make applications using OpenGL inside ... free opengl code using visual c++ 98 - comp.graphics.api.opengl ...OpenGL SDK for windows - comp.graphics.api.opengl free opengl code using visual c++ 98 - comp.graphics.api.opengl ... free opengl code using visual c++ 98. 7. OpenGL SDK ... OpenGL start - comp.graphics.api.openglThe only difference between *nix and Windows in using OpenGL is how to create the window. ... OpenGL SDK for windows - comp.graphics.api.opengl It took me too some time to ... OpenGL ES loader - comp.graphics.api.openglOpenGL SDK for windows - comp.graphics.api.opengl OpenGL ES loader - comp.graphics.api.opengl OpenGL SDK for windows - comp.graphics.api.opengl In order to use the v1.2 ... where download Opengl 1.3 ? - comp.graphics.api.openglOpenGL SDK for windows - comp.graphics.api.opengl dear sir/maam, i would greatly appreciate if anyone told me where to download OpenGL for windows so that i can make ... speed up software emulated OpenGL - comp.graphics.api.opengl ...OpenGL SDK for windows - comp.graphics.api.opengl... that particular machine, then you could use these v1.2 functions to speed up ... OpenGL SDK OpenGL Software ... comp.graphics.api.opengl - page 61While coding OpenGL applications, I was using the NVidia SDK which provided a recent OpenGL 1.2 (or 1 ... OpenGL windows WITH Xwindow windows?? 1 70 (11/13/2003 8:09:19 AM) Hi ... Newbie: OpenGL concepts - comp.graphics.api.opengl[newbie] OpenGL SDK for Visual Studio 2005 > OpenGL, so a newbie like me can begin to ... windows - Where can I find a tutorial for building a simple OpenGL ... Where can I ... Direct3D vs. OpenGL - scene graph libraries - comp.graphics.api ...... up in the antitrust trial as one of the reasons it was hard to clone Windows ... remember i've compared size of D3D(C,C++ and C#, from the DX9 SDK Samples) and OpenGL code ... renderbuffer objects - comp.graphics.api.opengl#define GLEW_STATIC 1 //#include <GL/glew.h> #include <windows.h> #include <GL/gl.h ... maps - comp.lang.c++.moderated ... renderbuffer objects - comp.graphics.api.opengl... SDK ... texture-mapping differences between Linux and Mac for Bezier ...[...] > freeglut (./texture-teapot): Unable to create direct context rendering > for window ... [newbie] OpenGL SDK for Visual Studio 2005 2 111 Jeff what is native texture image format on graphics card? - comp ...Is there any routine in the openGL API that will return ... the format the framebuffer is stored like in Windows (in X ... at http://download.developer.nvidia.com/developer/SDK ... File Saving - Uppercase versus Lowercase file names - comp.apps ...OpenGL SDK for windows - comp.graphics.api.opengl There is *only* one .lib file for Windows* so don't ... It's three lines (or so) of code and you'll save ... OpenGL SDK ... wglMakeCurrent deadlock - comp.graphics.api.openglThe program is multithread and multi-windowed: There are 4 windows, each with its own ... api.opengl | Computer Group wglMakeCurrent deadlock - comp.graphics.api.opengl Hi, I ... OpenGL video rendering - comp.graphics.api.opengl... grabber connected to an analog camera using an OpenGL ... m using Visual C++ 7.0 to compile and the nvidia sdk 7 ... find my mistake when I used GL_RGBA to render window ... OpenGL SDKOpenGL Software Development Kit Documentation, Sample Code, Libraries, and Tools ... Cross-platform OpenGL: Windows (including Windows 7), Mac OS X, GNU/Linux ... OpenGL SDKOpenGL Software Development Kit ... SDK, please use our online forums. in the menu indicates a link that takes you outside the OpenGL SDK. It will be opened in a new window/tab. 7/25/2012 9:03:22 AM
|