DirectX is a collection of APIs for handling tasks related to multimedia, especially game programming, on Microsoft platforms. It is widely used in the development of computer games for Microsoft Windows, the Xbox and Xbox 360.
DirectX has also 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.
Both the DirectX runtime and software development kit are available free of charge. 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 latest release versions of DirectX are the December 2006 version of DirectX 9.0c, which is available for use on Windows XP and Windows Server 2003, and DirectX 10, which is included with Windows Vista, but is not available for other versions of Microsoft Windows.
OpenGL (Open Graphics Library) is a standard specification defining a cross-language cross-platform API for writing applications that produce 3D computer graphics (and 2D computer graphics as well). The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL was developed by Silicon Graphics and is popular in the video games industry where it competes with Direct3D on Microsoft Windows platforms (see Direct3D vs. OpenGL). OpenGL is widely used in CAD, virtual reality, scientific visualization, information visualization, flight simulation and video game development.
Direct3D is part of Microsoft's DirectX API. Direct3D is only available for Microsoft's various Windows operating systems (Windows 95 and above) and is the base for the graphics API on the Xbox and Xbox 360 console systems. Direct3D is used to render three dimensional graphics in applications where performance is important, such as games. Direct3D also allows applications to run fullscreen instead of embedded in a window, though they can still run in a window if programmed for that feature. Direct3D uses hardware acceleration if it is available on the graphic board.
Direct3D is a 3D API. That is, it contains many commands for 3D rendering, but contains few commands for rendering 2D graphics.[1] Microsoft strives to continually update Direct3D to support the latest technology available on 3D graphics cards. Direct3D offers full vertex software emulation but no pixel software emulation for features not available in hardware. For example, if a program programmed using Direct3D requires pixel shaders and the graphics card on the user's computer does not support that feature, Direct3D will not emulate it. The program will most likely exit with an error message. The API does define a Reference Rasterizer (or REF device), which emulates a generic graphics card, although it's too slow to be used in any application to emulate pixel shaders and is usually ignored.
Direct3D's main competitor is OpenGL. There are numerous features and issues that proponents for either API disagree over, see comparison of Direct3D and OpenGL for a summary.
http://en.wikipedia.org/wiki/Comparison_of_OpenGL_and_Direct3D
2006-12-22 11:37:52
·
answer #1
·
answered by paki023465 2
·
1⤊
0⤋