DirectX is an application program interface (API) for creating and managing graphic images and multimedia effects in applications such as games or active Web pages that will run in Microsoft's Windows operating systems. (Such an application program might be written in C++, or Visual C/C++, or Java.) The capability to "play" DirectX applications comes as an integrated part of Microsoft's Internet Explorer Web browser. (A 3-D player is optionally downloadable.)
The DirectX Software Development Kit (SDK) includes tools that let a developer create or integrate graphic images, overlays, sprites, and other game elements, including sound. There is also a Driver Development Kit (DDK) that lets developers create drivers for display, audio, and other I/O devices.
DirectX is part of Microsoft's larger vision of an object-oriented development environment. For example, a sprite is created as an instance of a sprite class. Developers can also take advantage of Microsoft's set of prepackaged routines or small programs that are part of the Microsoft Foundation Class Library.
DirectX is designed so that some functions can be performed on a graphics accelerator card, freeing the microprocessor for other work. The accelerator manufacturer provides a driver especially for DirectX.
DirectX consists of five components:
- DirectDraw, an interface that lets you define two-dimensional images, specify textures, and manage double buffers (a technique for changing images)
- Direct3D, an interface for creating three-dimensional images
- DirectSound, an interface for integrating and coordinating sound with the images
- DirectPlay, a plug-in for end users, is also used by developers to test their application
- DirectInput, an interface for input from I/O devices