OpenGL 1.1.0 with screensavers on windows XP, Intel HD 2000


First of all, I’m french, so please forgive my bad english.

I’m facing a very strange behaviour. I’m writing a screensaver with some 3d involved. On most computers, both with Windows XP or Seven, it’s ok, but on one computer with an Intel HD 2000 graphic card, animations are very very slow. After some debugging, I’ve found that on that machine, I’m stuck with OpenGL 1.1.0 and not hardware acceleration. But, and that’s the weird part, if I change the extension of the screensaver from .scr to .exe, it works, I’ve access to OpenGL 3.1 !

So, to be clear :

On a machine with Windows XP SP 3 and a Intel HD Graphics 2000 chip with the last driver :
screensaver.scr -> OpenGL 1.1.0, no hardware acceleration.
screensaver.exe (absolutely the same binary, only renamed) -> OpenGL 3.1, hardware acceleration.

What am I missing here ? Is it possible that the Intel HD 2000 driver is in some way incomplete and does not give access to hardware acceleration when the OpenGL calls are made from a screensaver ?

Thanks for your help.

I can’t explain that; but Intel OpenGL drivers as known to be the worst implementation.

OK, it’s working now, and the answer to this problem is as weird as the problem was : in order to get OpenGL acceleration in a screensaver, you have to… rename the extension, from .scr to .sCr ! For some reason, the Intel driver tests the extension, and disables OpenGL acceleration if it founds “.scr”. Therefore, to get OpenGL acceleration, you have to fool the driver by renaming the extension with some capitals…

That’s worth submitting as a bug report to Intel themselves.

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.