DirectX

From Academic Kids

Missing image
DirectX_logo.gif
The current official DirectX logo. Microsoft has changed the logo several times over the years.

DirectX (originally called "Game SDK") is a collection of APIs for easily handling tasks related to game programming on Microsoft Windows. It is most widely used in the development of video and computer games for 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. DirectX 9.0c is the latest version of DirectX. The latest versions of DirectX are still usually included with PC games, since the API is updated so often.

Contents

DirectX APIs

The various components of DirectX are in the form of COM-compliant objects.

The components comprising DirectX are :

History

Originally targetted 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.

The first version of DirectX was developed internally by Microsoft from late 1994 until September of 1995 when the first release version was shipped as the Windows Games SDK. It was the Win32 replacement for poorly designed, ill-conceived APIs for the Win16 operating system (DCI and WinG). The development of DirectX was lead by the team of Craig Eisler (development lead), Alex St. John (evangelist), and Eric Engstrom (program manager). Simply put, it allowed all versions of Microsoft Windows, starting with Windows 95, to incorporate high-performance multimedia.

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. In February 1995, Microsoft acquired the British 3D startup Rendermorphics. Their 3D API "Reality Lab" was used as the basis for the development of Direct3D, which shipped for the first time with DirectX 2 in June 1996.

Direct3D was intended to be a lightweight partner to OpenGL for game use. As the power of graphics cards and the computers running them grew, OpenGL became 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 in itself include all of DirectX's functionality (such as sound or joystick support). Several attempts to address this have generally failed.

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.

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.

</TABLE></CENTER>

Compatibility

Hardware manufacturers have to write drivers for and test each individual piece of hardware to make them DirectX compatible. Many modern hardware devices only have DirectX compatible drivers (in other words, you must install DirectX before you will be able to use that hardware). Early versions of DirectX included an up-to-date library of all of the DirectX compatible drivers currently available. This practice was stopped however, in favor of the web-based WindowsUpdate driver-update system, which allowed users to download only the drivers relevant to their hardware, rather than the entire library.

Some drivers only support one version of DirectX. But DirectX is backward compatible, which means that newer versions support the older versions. For example, if one has DirectX 9 installed on one's system and runs a game that was written for DirectX 6, it should still work. The game will use what is called the DirectX 6 "interface." Every version of DirectX must support every previous version of DirectX.

The Future of DirectX

Microsoft is currently working on a large update to DirectX called Windows Graphics Foundation, that will appear as part of Windows Longhorn, as well as an add-on for Windows XP and Windows Server 2003. However, it will need a computer with a DirectX9 compatible display card.

Microsoft has also announced they will replace DirectX with an API called XNA. XNA will be a 100% Xbox 360 compatible API, so game developers can easily concurrently create games which are Windows and Xbox 360 compatible.

External links

Programmer resources

  • Gamedev.net's DirectX Articles section (http://www.gamedev.net/reference/list.asp?categoryid=24)
  • Direct3D.net (http://www.wolfgang-engel.info/direct3d.net/) - Wolfgang Engel's Direct3D site
  • Drunken Hyena (http://www.drunkenhyena.com/cgi-bin/directx.pl) - tutorials, code, utilities, and games
  • Andy Pike's DirectX8 Tutorials (http://www.andypike.com/tutorials/directx8/) - covering 2D, 3D, sound, music, and input
  • CodeSampler.com (http://www.codesampler.com/dx9src.htm) - Code samples and tutorials for Direct3D game programming using C++ and C#
  • Managed Direct3D (http://pluralsight.com/wiki/default.aspx/Craig.DirectX/Direct3DTutorialIndex.html) - Craig Andera's C# Direct3D Tutorial
  • NeXe (http://web.archive.org/web/20040202203336/nexe.gamedev.net/News/News.asp) - Archive of NeXe tutorials (Direct3D 8), at archive.orgcs:DirectX

de:DirectX es:DirectX fr:DirectX ja:DirectX nl:DirectX pl:DirectX zh:DirectX

DirectX Version</B>

<B>

Version Number</B>

<B>

Operating System</B>

DirectX 1.0

4.02.0095

 

DirectX 2.0 / 2.0a

4.03.00.1096

Windows 95 OSR2 and NT 4.0

DirectX 3.0 / 3.0a

4.04.0068 / 69

Windows NT 4.0 SP3
last supported version of DirectX for Windows NT 4.0

DirectX 4.0

Never Launched

 

DirectX 5.0

4.05.00.0155

 

DirectX 5.0

4.05.01.1721 / 1998

Windows 98

DirectX 6.0

4.06.02.0436

Windows 98 SE and ME
last version of DirectX Media for Windows NT 4.0

DirectX 7.0

4.07.00.0700

Windows 2000

DirectX 7.0a

4.07.00.0716

 

DirectX 8.0

4.08.00.0400

 

DirectX 8.1

4.08.01.0810
4.08.01.0881

Windows XP and 2003 Server
Last supported version
for Windows 95

DirectX 9.0

4.09.0000.0900

 

DirectX 9.0a

4.09.0000.0901

Last supported version
for Windows 98FE

DirectX 9.0b

4.09.0000.0902

 

DirectX 9.0c

4.09.0000.0904

Last supported version
for Windows 98SE and Windows Me

DirectX 9.0d (coming soon)

4.09.0000.0905 (?)

 
Navigation

Academic Kids Menu

  • Art and Cultures
    • Art (http://www.academickids.com/encyclopedia/index.php/Art)
    • Architecture (http://www.academickids.com/encyclopedia/index.php/Architecture)
    • Cultures (http://www.academickids.com/encyclopedia/index.php/Cultures)
    • Music (http://www.academickids.com/encyclopedia/index.php/Music)
    • Musical Instruments (http://academickids.com/encyclopedia/index.php/List_of_musical_instruments)
  • Biographies (http://www.academickids.com/encyclopedia/index.php/Biographies)
  • Clipart (http://www.academickids.com/encyclopedia/index.php/Clipart)
  • Geography (http://www.academickids.com/encyclopedia/index.php/Geography)
    • Countries of the World (http://www.academickids.com/encyclopedia/index.php/Countries)
    • Maps (http://www.academickids.com/encyclopedia/index.php/Maps)
    • Flags (http://www.academickids.com/encyclopedia/index.php/Flags)
    • Continents (http://www.academickids.com/encyclopedia/index.php/Continents)
  • History (http://www.academickids.com/encyclopedia/index.php/History)
    • Ancient Civilizations (http://www.academickids.com/encyclopedia/index.php/Ancient_Civilizations)
    • Industrial Revolution (http://www.academickids.com/encyclopedia/index.php/Industrial_Revolution)
    • Middle Ages (http://www.academickids.com/encyclopedia/index.php/Middle_Ages)
    • Prehistory (http://www.academickids.com/encyclopedia/index.php/Prehistory)
    • Renaissance (http://www.academickids.com/encyclopedia/index.php/Renaissance)
    • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
    • United States (http://www.academickids.com/encyclopedia/index.php/United_States)
    • Wars (http://www.academickids.com/encyclopedia/index.php/Wars)
    • World History (http://www.academickids.com/encyclopedia/index.php/History_of_the_world)
  • Human Body (http://www.academickids.com/encyclopedia/index.php/Human_Body)
  • Mathematics (http://www.academickids.com/encyclopedia/index.php/Mathematics)
  • Reference (http://www.academickids.com/encyclopedia/index.php/Reference)
  • Science (http://www.academickids.com/encyclopedia/index.php/Science)
    • Animals (http://www.academickids.com/encyclopedia/index.php/Animals)
    • Aviation (http://www.academickids.com/encyclopedia/index.php/Aviation)
    • Dinosaurs (http://www.academickids.com/encyclopedia/index.php/Dinosaurs)
    • Earth (http://www.academickids.com/encyclopedia/index.php/Earth)
    • Inventions (http://www.academickids.com/encyclopedia/index.php/Inventions)
    • Physical Science (http://www.academickids.com/encyclopedia/index.php/Physical_Science)
    • Plants (http://www.academickids.com/encyclopedia/index.php/Plants)
    • Scientists (http://www.academickids.com/encyclopedia/index.php/Scientists)
  • Social Studies (http://www.academickids.com/encyclopedia/index.php/Social_Studies)
    • Anthropology (http://www.academickids.com/encyclopedia/index.php/Anthropology)
    • Economics (http://www.academickids.com/encyclopedia/index.php/Economics)
    • Government (http://www.academickids.com/encyclopedia/index.php/Government)
    • Religion (http://www.academickids.com/encyclopedia/index.php/Religion)
    • Holidays (http://www.academickids.com/encyclopedia/index.php/Holidays)
  • Space and Astronomy
    • Solar System (http://www.academickids.com/encyclopedia/index.php/Solar_System)
    • Planets (http://www.academickids.com/encyclopedia/index.php/Planets)
  • Sports (http://www.academickids.com/encyclopedia/index.php/Sports)
  • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
  • Weather (http://www.academickids.com/encyclopedia/index.php/Weather)
  • US States (http://www.academickids.com/encyclopedia/index.php/US_States)

Information

  • Home Page (http://academickids.com/encyclopedia/index.php)
  • Contact Us (http://www.academickids.com/encyclopedia/index.php/Contactus)

  • Clip Art (http://classroomclipart.com)
Toolbox
Personal tools