Developing games in a DOS environment can be a nightmare. The multitude of new hardware devices pouring out of hardware vendors had dramatically differing interfaces, making it difficult indeed to support more than a handful of devices in any one game. A high-level operating system like Windows, on the other hand, offers many benefits to game developers, such as consistent programming interfaces to new devices, simplified installation and configuration features, and extensive built-in functionality. However, before the advent of DirectX, this level of abstraction in the Windows environment posed a serious performance penalty that was unacceptable in any fast-action, high- performance game.
The DirectX development team's goal was to create a low-level architecture that would provide developers with the hardware control they need at the speed they demanded, while still retaining Windows' device-independent benefits. This was to be accomplished without imposing a restrictive high-level design architecture. First and foremost, DirectX had to be fast in order to allow game developers to create the high-performance, adrenaline-pumping action games demanded by hard-core game players. DirectX applications must also coexist peacefully with other Windows applications, such as spreadsheets and word processors. Therefore, DirectX promises three things to developers: fast execution, minimal style restraints, and a level of abstraction that will provide benefits from future hardware.
Was this article helpful?