Hacker News new | ask | show | jobs
by qayxc 2094 days ago
> Initially (throughout XP and maybe some of Vista) OpenGL support on Windows was done by a OpenGL

Initially (Windows 95), OpenGL support was provided directly by the OS. Starting with Windows 98, Microsoft stopped updating the OGL version of their reference driver, so users were stuck with OGL 1.1 unless the graphics card driver shipped with a custom OpenGL implementation.

So whenever an application uses an OGL version higher than v1.1, it is provided by the graphics card driver and that has nothing to do with DirectX. There is no translation layer in that case (unless of course, that's what the driver does internally, but that's up to the manufacturer).

TL;DR Custom OGL drivers shipped with every graphics card that supported OGL in Windows since 1998.

1 comments

That hasn't been the case, then, because I clearly remember OpenGL being translates to DirectX in XP/Vista days. Whether it was because anything >1.1 called that up or because the driver vendors chose translation over native, I don't know.

Original link seems to be dead but Slashdot references Vista layering OpenGL on top of Direct3D:

https://slashdot.org/story/05/08/06/177251/windows-vista-may...

That comment references something else entirely - namely the Aero rendering system of the OS. This didn't affect applications that didn't use the Aero glass scheme (it was an option during window creation), however, or apps running in full-screen mode.

The Aero glass scheme was hardware accelerated and only worked with Direct3D, thus any OGL context created for a window using this renderer would have to run via Direct3D.

This is a very special case and as noted earlier, easily circumvented by simply not using this feature in your app.