Blog

Microsoft WinG

23 August 2018

WinG is an early API extension to Windows 3.1x, NT 3.5 and 95. It was something Microsoft came up with in order to make Windows a more prominent gaming platform. Microsoft did write quite a few games at that time (e.g. Windows Entertainment Pack, Golf, Arcade), but larger game developers were sticking to MS-DOS. And who could blame them? All home editions of Windows (i.e. 3.x) had MS-DOS underneath. DOS also allowed direct access to hardware, making it faster.

WinG was an attempt to rectify that last point. Instead of writing to the screen via the GDI, you could substitute WinG instead. It would handle figuring out the fastest way to draw to the screen; your program did not have to worry what graphics card was in the machine. Double buffering and dithering was also possible.

The first time you run a WinG program on Windows 3.1x, you see the performance profiler. Let's all take a moment to enjoy its wriggliness:

Red wires around grey pegs, changing their paths.

You would not normally see this again unless you changed the graphics mode or graphics card. It did not appear at all on 95 or NT. It is testing to work out which methods are the fastest ways to write to the screen.

WinG was superceeded by the Windows 95 Game SDK, which itself ended up a part of DirectX.

Only One Version

Interestingly, there was only one version of WinG. 1.0.0.37. No patches or revisions were made, and (at the moment) no beta versions have been discovered. If you think about how many versions of DirectX there are - or even how many revisions of DirectX 9.0c exist... it's as if the idea was dropped like a hot potato shortly after release. No wonder there aren't many games out there that use it.

Return to Blog Index