Home / Development / All About DirectX
Development 6 min read

Direct X is a set of APIs (application program interfaces) developed by Microsoft. It provides software developers with resources to write Windows-based applications that access hardware features of a computer without knowing exactly what hardware will be installed when the program eventually runs. By using the interfaces provided by DirectX, software developers can take advantage of hardware features without being concerned about the implementation details of that hardware.

The full benefit of DirectX is most evident in PC games. Unlike console gaming machines such as the PlayStation or GameCube, for example, computer game developers are producing a game that needs to be designed to work well on a variety of systems as opposed to one system that is the same for all end-users.

PC game developers need to ensure that their game will run on any system and include support for a large number of different hardware devices, such as the video adapter and sound card, as well as gaming peripherals such as joysticks and racing wheels. Developers also need to ensure their game will work with hardware products that may not even hit the retail sector until after their game is released.

DirectX made its debut in 1995. It was the first encouragement from Microsoft to move game programmers in the direction of developing for Windows 95 instead of DOS. Until then PC games were largely written in DOS, which had the capability to access the computer’s sound and video hardware directly. To keep the speed of the game up, developers were looking at having to write their own driversfor a wide variety of display adapters. Tha could turn out to be a nightmare for the developer and, in turn, cause compatibility issues for some end-users.

DirectX introduced an intermediate layer that translated generic hardware commands into specific commands for particular pieces of hardware. In particular DirectX allowed multimedia applications to take advantage of hardware acceleration features supported by graphics accelerators. With DirectX game developers were able to take advantage of Windows without sacrificing performance in the game.

DirectX in the Middle

One can look at DirectX and its sub-layers as something that lies between your game or application and your computer hardware. If the software you are using is DirectX-compliant and if the manufacturer of your specific hardware has made its products DirectX compatible, then you’ll find your hardware supported in the vast majority of games you play and applications you use. DirectX basically puts the responsibility of hardware support on the hardware manufacturer rather than the software developer, which really leads to optimal software performance and hardware compatibility.

Unfortunately, in its first few releases, DirectX didn’t go over too well with developers, many of whom found the API horribly designed and complicated not to mention proprietary. Over the years, however, with improvements to each DirectX release, DirectX has become the standard. It evolves as computer hardware and game peripherals advance allowing for support of specific hardware features in new computer games.

For those who don’t find themselves rushing out to buy the latest and greatest in 3D computer games, DirectX is used in a multitude of Windows based applications anything that requires full-color graphics, video, 3D animation, and complex audio. Even if you’re not a gamer you should still stay on top of the DirectX releases and the latest support information to ensure optimal performance on a Windows-based system.

DirectX Components:

DirectDraw

DirectDraw is a software interface that provides direct access to display devices while maintaining compatibility with the Windows graphics device interface (GDI).

Direct3D

An API for manipulating and displaying three-dimensional objects. Developed by Microsoft, Direct3D provides programmers with a way to develop 3-D programs that can use whatever graphics acceleration device is installed in the machine. Virtually all 3-D accelerator cards for PCs support Direct3D.

DirectSound

DirectSound enables the playing of sounds with very low latency and gives applications a high level of control over hardware resources.

DirectMusic

In combination with Microsoft DirectSound, DirectMusic provides a complete solution for playing music and sound effects in games and other applications.

DirectInput

DirectInput enables an application to retrieve data from input devices even when the application is in the background. It also provides full support for any type of input device, as well as for force feedback.

DirectPlay

DirectPlay is a media-independent networking API that provides networking services at the transport protocol and session protocol levels. DirectPlay sessions can be run on TCP/IP networks, IPX networks, and over directly connected modems and serial cables.

DirectShow

DirectShow is an architecture for streaming media on a Windows platform. It provides high-quality capture and playback of multimedia streams.

Current Support, Releases & Updates

DirectX usually changes at least once a year. Microsoft’s DirectX group will release a new beta development kit for the next DirectX version, and after a few months it then becomes available for end-users to download. It is important to note that not all versions of Microsoft Windows can use the latest version of DirectX. The latest version of DirectX available for Windows 95, for example, is DirectX 8.0a. Additionally, different Microsoft operating systems will have a different version of DirectX. Windows 98 comes with DirectX 5 support, while Windows 98 Second Edition comes with DirectX 6.1a, and Windows XP and Windows 2003 Server comes with DirectX 8.1. After software requiring DirectX is installed, if the installer does not find the correct or updated version of DirectX on your system you will be prompted to install it along with your software. Using the Windows update feature will also ensure that you are running the latest supported version of DirectX for your Windows OS.

Did You Know…
The DirectDraw standard was first developed by Intel and called the Display Control Interface (DCI) and is now supported by Microsoft with the name DirectDraw as a registered trademark.

Key Terms To Understanding Direct X

DirectX
Direct X is a set of APIs (application program interfaces) developed by Microsoft that enables programmers to write programs that access hardware features of a computer without knowing exactly what hardware will be installed on the machine where the program eventually runs. [READ MORE]

API
Abbreviation of application program interface, a set of routines, protocols, and tools for building software applications. A good API makes it easier to develop a program by providing all the building blocks. A programmer puts the blocks together. [READ MORE]

 

Based in Nova Scotia, Vangie Beal is has been writing about technology for more than a decade. She is a frequent contributor to EcommerceGuide and managing editor at Webopedia. You can tweet her online @AuroraGG.

This article was originally published on March 25, 2005

 

 

 

Was this Article helpful? Yes No
Thank you for your feedback. 0% 0%