DirectX is a collection of APIs for handling tasks related to game programming on the Microsoft Windows operating system. It is most widely used in the development of computer games for Microsoft Windows. The DirectX SDK is available free from Microsoft. The DirectX runtime was originally redistributed by computer game developers along with their games, but later it was included in Windows. Game developers still often include an updated version of DirectX that prompts installation automatically after the game installation to ensure proper program functionality. The August 2006 version of DirectX 9.0c is the latest release version of DirectX. Direct3D 10 Beta is available as of Windows Vista build 5238.
Contents
[hide]
* 1 DirectX APIs
* 2 History
o 2.1 Release history
* 3 Compatibility
* 4 The future of DirectX
* 5 See also
* 6 External links
o 6.1 Programmer resources
[edit]
DirectX APIs
The various components of DirectX are in the form of COM-compliant objects.
The components comprising DirectX are :
* DirectX Graphics, comprising two APIs (DirectX 8.0 onwards):
o DirectDraw: for drawing 2D Graphics (raster graphics) (now mostly deprecated, although still in use by many)
o Direct3D (D3D): for drawing 3D graphics
* DirectInput: used to process data from a keyboard, mouse, joystick, or other game controllers
* DirectPlay: for networked communication of games
* DirectSound: for the playback and recording of waveform sound
o DirectSound3D (DS3D): for the playback of 3D sounds.
* DirectMusic: for playback of soundtracks authored in DirectMusic Producer
* DirectSetup: for the installation of DirectX components, not really an API
* DirectX Media: comprising DirectAnimation, DirectShow, DirectX Video Acceleration, Direct3D Retained Mode and DirectX Transform for animation, multimedia playback & streaming applications, 3D, and interactivity respectively
* DirectX Media Objects: support for streaming objects such as encoders, decoder and effects
For Windows Vista and DirectX 10, DirectInput will be deprecated in favor of XInput, from the Xbox team. Likewise, DirectSound will also be deprecated in favor of XACT. As of DirectX 9.0c, however, neither XInput nor XACT have all of the capabilities of DirectInput or DirectSound, and according to MS documentation on XInput, XInput is specifically designed for the Xbox 360 controllers. DirectPlay is deprecated in favor of Xbox Live whereas DirectShow will be deprecated in favor of Media Foundation, a different set of APIs debuting with Windows Vista to handle audio and video playback. DirectMusic will probably remain the only component intact.
[edit]
History
Originally targeted at the game development industry, DirectX has become more widely used among other software production industries. Most notably, Direct3D is becoming more popular among the engineering sector because of its ability to quickly render high-quality 3D graphics using the latest 3D graphics hardware.
In 1994, Microsoft was just on the verge of releasing its next operating system, Windows 95. The main factor that would determine the value consumers would place on their new operating system very much rested on what programs would be able to run on it. Three Microsoft employees — Craig Eisler, Alex St. John, and Eric Engstrom — were concerned, because programmers tended to see Microsoft's previous operating system, DOS, as a better platform for game programming, meaning few games would be developed for Windows 95 and the operating system would not be as much of a success.
DOS allowed direct access to video cards, keyboards and mice, sound devices and all other parts of the system, while Windows 95, with its protected memory model, restricted access to all of these, working on a much more standardized model. Microsoft needed a way that would let programmers get what they wanted, and they needed it quickly; the operating system was only months away from being released. Eisler, St. John, and Engstrom conspired together to fix this problem, with a solution that they eventually named DirectX.
The first release version of DirectX was shipped September of 1995 as the Windows Games SDK. It was the Win32 replacement for the poorly designed APIs for the Win16 operating system (DCI and WinG). A development team at ATI brought fundamental game graphics technology to the attention of Microsoft. The development of DirectX was led by the team of Eisler (development lead), St. John, and Engstrom (program manager). Simply put, it allowed all versions of Microsoft Windows, starting with Windows 95, to incorporate high-performance multimedia. Eisler wrote about the frenzy to build DirectX 1 through 5 in his blog.
Prior to DirectX's existence, Microsoft had already included OpenGL on their Windows NT platform. At the time, OpenGL required "high-end" hardware and was limited to engineering and CAD uses. Direct3D (introduced by Eisler, Engstrom, and St. John as an alternative to SGI's OpenGL) was intended to be a lightweight partner to the back then slower OpenGL for game use. As the power of graphics cards and the computers running them grew, OpenGL became the de-facto standard and a mainstream product. At that point a "battle" began between supporters of the cross-platform OpenGL and the Windows-only Direct3D, which many argued was another example of Microsoft's embrace, extend and extinguish business tactic (see Fahrenheit or Direct3D vs. OpenGL). Nevertheless, the other APIs of DirectX are often combined with OpenGL in many computer games because OpenGL does not include all of DirectX's functionality (such as sound or joystick support).
In a console specific version, DirectX was used as a basis for Microsoft's Xbox console API. The API was developed jointly between Microsoft and NVIDIA, who developed the custom graphics hardware used by the console. The Xbox API is similar to DirectX version 8.1, but is non-updateable like other console technologies. The Xbox was code named DirectXbox, but this was shortened to Xbox for its commercial name. (J. Allard, PC Pro Interview, April 2004)
In 2002, Microsoft released DirectX 9 with support for the use of much longer shader programs than before with pixel and vertex shader version 2.0. Microsoft has continued to update the DirectX suite since then, introducing shader model 3.0 in DirectX 9.0c, released in August 2004.
As of April 2005, DirectShow was removed from DirectX and moved to the Microsoft Platform SDK instead. DirectX is, however, still required to build the DirectShow samples [1].
Latest is Direct X 10.0
2006-09-04 02:30:09
·
answer #1
·
answered by Cascade Ranger 3
·
0⤊
0⤋