DirectX 3.0: Can Windows Actually Become a Gaming Platform?
It’s late 1996, and if you’re a "serious" gamer, you’re still booting into DOS. Why? Because Windows 95, for all its convenience, adds a massive layer of overhead between the game and the hardware. In DOS, you can talk directly to the VGA card and the Sound Blaster. In Windows, you have to go through GDI and the kernel, which is agonizingly slow.
Microsoft knows this is a problem. If they can’t make Windows a great gaming platform, people will never leave DOS. Their answer is DirectX.
Version 3.0: The Turning Point
We’ve had DirectDraw and DirectSound for a while, but DirectX 3.0 feels like the version where it finally "clicks." It’s more stable, and the feature set is finally catching up to what developers need.
The core idea of DirectX is to provide a standardized set of APIs that give "near-raw" access to hardware while still allowing Windows to manage the environment.
// DirectDraw initialization (simplified)
LPDIRECTDRAW lpDD;
HRESULT ddhr = DirectDrawCreate(NULL, &lpDD, NULL);
if (ddhr == DD_OK) {
// Set cooperative level to exclusive full-screen
lpDD->SetCooperativeLevel(hwnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
// Set display mode to 640x480x8-bit (256 colors)
lpDD->SetDisplayMode(640, 480, 8);
}
This code allows a game to "take over" the screen, just like it would in DOS, but with the benefit of standardized drivers. No more writing separate code for every video card on the market.
Direct3D: The New Frontier
DirectX 3.0 also includes an improved Direct3D. It’s still a bit clunky compared to 3dfx’s Glide or the emerging OpenGL standard, but it’s a clear signal that Microsoft is betting big on 3D graphics.
Looking Ahead
The "WinG" days are over. DirectX is clearly the future. As hardware manufacturers focus on providing high-quality DirectX drivers, the performance gap between DOS and Windows will close. Soon, "rebooting to DOS" will be a memory. For developers, it means we can finally spend more time on our game logic and less time on low-level assembly hacks for specific hardware.
Aunimeda develops mobile and PC games - from casual hyper-casual titles to mid-core games with complex progression systems.
Contact us to discuss your game project. See also: Game Development, Mobile Game Development