DirectX, (Direct eXtension, referred to as DX) is a game programming interface established by Microsoft. Implemented by the C + + programming language, followed by COM. Because the functionality of DX is more comprehensive than OpenGL, it is adopted by most PC game developers. The latest version is DirectX 10.1 and DirectX 9Ex (November 30, 2006), both of which are available on Windows Vista only.
Prior to DirectX 6, there was a wingapi appearance between Windows 3.1 and Windows 98SE. Many Windows games require DirectX. DirectX contains parts such as Directgraphic, DirectPlay, DirectSound, DirectInput, DirectSetup, and so on. Direct3D and DirectDraw have been integrated into directgraphic, and DirectShow has moved from the original DirectX SDK to the Windows Platform SDK. Redist Package is the media development of the underlying API, through which you can develop games and other multimedia applications.
Components
A component of DirectX consists of:
DirectX Graphics, containing two groups of APIs (DirectX 8.0 onwards):
DirectDraw: Used to draw 2D Graphics (En:raster Graphics) (not recommended, although there are still a large number of consumers).
Direct3D (for short D3D): for drawing 3D Graphics (3D graphics)
DirectInput: Used to combine keyboards, mice, joystick, or other game controllers (not updated since 8 except for xinput, specifically for Xbox360 controllers. It is recommended to replace the keyboard and mouse with WM input. )
DirectPlay: For network game Connection communication (in conjunction with DirectInput use, the last update is version 8. is currently not recommended for use)
DirectSound: For recording and recording waveform effects (waveform sound)
DirectSound3D (DS3D): Recording for 3D sound (3D sounds).
DirectMusic: A recording used for DirectMusic producer.
DirectX Media: Contains directanimation available for 2D Web animation (web animation), DirectShow supports multimedia recordings (multimedia playback), and data streaming media (en: Streaming media), the conversion of DirectX on a Web page, and Direct3D to preserve a clearer resolution of 3D graphics. DirectShow also contains en:directx plugins for en:audio signal processing as well as DirectX video acceleration accelerated Audio and visual effects (videos playback).
DirectX Media Objects: Supports data flow objects (streaming Objects), such as encoding (encoders), decoding (decoder), and effects (effects).
DirectSetup: For the installation of DirectX components, it is not entirely an API.
History
In late 1994, Microsoft is about to launch its next-generation operating system, Windows 95. The final value of the new operating system is determined by what programs the new systems can run. Microsoft's three employees: Craig Eisler, Alex St. John and Eric Engstrom are very concerned about this issue, because many game programmers prefer to write games under DOS system, which means that not many people are willing to write games for WIN95, The new operating system will not achieve much success.
DOS allows direct access to the video card, keyboard, mouse sound card, and other system hardware facilities. Windows 95, for the purpose of securing the storage system, restricts direct access to hardware and replaces it with a more standardized approach to access. Microsoft needs a way for programmers to write efficient programs in WIN95. At this point, less than a few months before the new system was released. St. John and Engstrom jointly solved the problem by calling the solution DirectX.
The first version of DirectX was published as the Windows Games SDK in September 1995 and is used as part of the Windows API to replace the DCI and Wingapi in Windows 3.1. An ATI development team has brought the basic game image technology to Microsoft, and DirectX is developed by a dedicated team, Eisler for Team leadership, and St. John and Engstrom became the main programmer.
Prior to DirectX, Microsoft had included OpenGL in the Windows NT system, at a time when OpenGL was demanding hardware, which limited some engineers and CAD users. Direct3D is added to DirectX as a substitute for OpenGL. With the development of hardware technology, OpenGL became the industry standard, a "battle" occurred in DirectX supporters and the supporters of OpenGL, and the former only support the Windows platform, while the latter support multi-platform. In practical applications, game developers often use both, because DirectX supports features that are not supported by OpenGL, such as sound and input devices. The teams that choose to mix OpenGL and OpenAL are also growing.