Read about the intriguing beginnings of the most widely accepted gaming API
Lego Island (DirectX 1.0)
DirectX 1.0 was released in September 1995 as Windows Games SDK. Servan Keondjian, who was a programmer with Rendermorphics was instrumental in writing the Direct3D engine. In essence, it was a 32-bit Windows 95 port of 16-bit WinG (Windows Graphics API) and later Win32 originally available for Windows 3.1. Version 1.1 was released soon and became a part of the original Windows 95.
Road Rash (DirectX 2.0)
DirectX 2.0 was launched in June 1996, and was a part of Windows 95 OSR2.
Descent 2 (DirectX 3.0)
DirectX 3.0 was launched in September at the CGDC. Direct3D and DirectPlay made its appearance in DirectX 3.0 and a multi-player version of MechWarrior 2 was played online to showcase the API's capabilities. While few may know, Direct3D was based on Reality Lab API from Rendermorphics - a company acquired by Microsoft earlier that year. DirectX 3.0a was launched in December and this was the last supported version of DirectX for Windows NT 4.0.
DirectX 4 was planned to be released in December 1996 and it would allow access to certain special features in Cirrus Logic video chips, the company was planning to put into laptops. While shipment of the chips got delayed, Microsoft opted not to release DirectX 4 and instead skip directly to DirectX 5, especially because Microsoft had promised that version to the gamer community in the summer of 1997. DirectX 4 was slated to be a minor update and skipping it was therefore not considered much of an issue.
Different graphics chipset makers had their own established and popular APIs in 1997 and DirectX, which was still in its infancy, was facing a serious challenge. While 3dfx had Glide, which was a lot faster and powerful, there were others like Rendition with RRedline and Speedy3D APIs.
The first DOS-based hardware accelerated version of Quake ran on Rendition Verit with features such as anti-aliasing on the fly.
The first hardware accelerated version of Quake, which was arguably the most technologically advanced game at that time was released by John Carmack to run natively using Rendition API. Several other major games used Glide.
Diablo 2 on 3dfx Glide
OpenGL was also being used by several games as a rendering platform. Naturally, Microsoft had to do something quickly for DirectX to survive. What Microsoft did was that it collaborated and worked closely with hardware vendors and game developers to make sure that DirectX compliance was given prime importance. The strategy would go on until DirectX 8 came out, and that's when the dividends began to pay. This became the turning point for Microsoft as DirectX knocked out every other API to become one of the most widely accepted gaming API.
As a cross-{platform, disciplinary} C++ developer (OpenSolaris as primary platform) I would not limit myself to a single platform (Windows) with a closed API. The Direct3D API requires explicit support from the hardware but with OpenGL you can make use of any hardware features through it's extension mechanism. e.g. In the early days of shader technology, the OpenGL shader path had been used to implement Direct3D-related shaders.