Link to the driver

Is it ok if I directly load and link to the driver 3dfxogl.dll to use the opengl api?
(cause I hate MS opengl32.dll)

I suppose it’s possible. I don’t see why not.

But what’s so bad about using opengl32.dll? You’ll get the same effect with less work.

Doing that would be bad practice if that is a full ICD. If it’s a mini driver, that would probaly be the only way to use it. If it’s an ICD, opengl32.dll will pass what it can on to 3dfxogl.dll. This may be a bit imprecise in describing it, but I’m sure there are other people here that can be more precise.

There are two answers:

  1. Yes you can do it.
  2. No you shouldn’t: the official way is to use OpenGL32.dll. Let’s do it.

One remark: if you do what you describe, your program will only run on your machine (or on 3DFX-equipped ones !). Why would you want to restrict your target audience ???



In my applications I use both methods depending on what hardware I find.

For some old voodoo 3dfx cards, loading the 3dfxvgl.dll manually is the only way to get hardware support.

I do it like this:

First try to setup everything using any potential icd (opengl32.dll).
If no hardware support is found, I start over and try to find the 3dfxvgl.dll (3dfx voodoo graphics). If this file is found I proceed setting up everything and checks yet again for hardware support.
If no hardware is found, I quit telling the user to buy a new 3d card or upgrade his/her drivers.

Note that sometimes, there is no glu32.dll either, so these functions must be provided by you aswell.