Software Rendering

Under the OpenGL implementation for Windows NT my current program uses hardware acceleration automatically. What I would like the program to do is let the user chose between hardware acceleration and software rendering. Do I do this in the PFD functions? I have a feeling that this isn’t possible, because if the program finds an OpenGL ICD it will execute it automatically. Is there a way I can tell OpenGL32.dll not to
look for the ICD? That way I belive it will keep the program in software rendering. Thank you.

Why would anyone want to use software rendering when he had hardware-accelerated GL??? This is not a common case…
Applications cannot know if the driver is implementing functions in hardware or software. OGL specs dont’want applications to know. These are design issues.

Aside from this, it can be said that if you install the SGI reference drivers, they will render only in software.
Using otherwise the driver found in the system (were you install your app) is not a good choice, because each board will provide different drivers.

Don’t know the answer, but it’s a fair question. If you’re getting bizarre behaviour and suspect a bug in the OpenGL driver, it’s very useful to be able to compare it with the software one.

BTW, using the SGI implementation doesn’t force software. It’ll forward calls onto opengl32.dll (the Microsoft driver) if hardware acceleration is present.

i hack the windows register

under windows 98 (i suppose it will work under NT too), edit the register at this location:

substitute the .dll you’ll see with the microsoft implementation opengl32.dll

however, why do you need to do it?

Well I knew you guys would wonder why in the world I would ever want to do this. Well basically its for learning and demostration purposes. I’d like to be able to show the tremendous difference between SR and HA within the program. Besides in Quake 2 the user can chose between SR and HA, but then again I don’t believe the SR mode is making any OpenGL calls. Its just an added bonus to the program that I’d like to add if possible.