DirectX Introduction

directx2

Microsoft DirectX is a set of APIs (application programming interfaces) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. It’s developed by Microsoft and it’s composed of a collection of DLLs (Dynamic Link Libraries) that contain functions useful to a wide range of multimedia programmers, which are entirely platform independent.

Originally, the names of these APIs all began with Direct, such as Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound, and so forth. The name DirectX was coined as shorthand term for all of these APIs (the X standing in for the particular API names) and soon became the name of the collection.
Later on with the development of the Xbox, the X was used in the consoles name to indicate that it was based on DirectX technology.

In the golden days of DOS, programmers had direct access to the hardware they were developing on. With complete access to interrupts, sound cards, input devices, and the VGA controller, the developers could usually make the hardware do anything they could dream up. But with the more increasing popularity of the PC, hardware competition developed, giving rise to hundreds of different possible PC configurations which turned out to be a nightmare for developers. It soon became apparent that a interface between multimedia applications and hardware was needed so on September 30, 1995 DirectX 1.0 was launched. Originally, the runtimes were only installed by games or explicitly by the user. Windows 95 did not launch with DirectX, but DirectX was included with Windows 95 OEM Service Release 2. Windows 98 and Windows NT 4.0 both shipped with DirectX, as has every version of Windows released since.

Direct3D (the 3D graphics API within DirectX) is widely used in the development of video games for Microsoft Windows, Microsoft Xbox, and Microsoft Xbox 360. Direct3D is also used by other software applications for visualization and graphics tasks such as CAD/CAM engineering. As Direct3D is the most widely publicized component of DirectX, it is common to see the names “DirectX” and “Direct3D” used interchangeably.

Below you can see a table with all the DirectX versions, their release dates, operating systems that support them, video cards that support them and what graphics acceleration operations they introduced.

DirectX version Operating system Date released Video Cards Graphics acceleration operations
DirectX 1.0 September 30, 1995
DirectX 2.0 Was shipped only with a few 3rd party applications 1996
DirectX 2.0a Windows 95 OSR2 and NT 4.0 June 5, 1996
DirectX 3.0 September 15, 1996
DirectX 3.0a Windows NT 4.0 SP3 (and above)
last supported version of DirectX for Windows NT 4.0
December 1996
DirectX 3.0b This was a very minor update to 3.0a that fixed a cosmetic problem with the Japanese version of Windows 95 December 1996
DirectX 4.0 Never launched
DirectX 5.0 Available as a beta for Windows 2000 that would install on Windows NT 4.0 August 4, 1997 RIVA 128, Rage 3D, Rage II
DirectX 5.2 DirectX 5.2 release for Windows 95 May 5, 1998
DirectX 6.0 Windows CE as implemented on Dreamcast August 7, 1998 RIVA TNT, Vanta, RIVA TNT2, Rage Pro, Rage 128, Rage XL/XC, Rage Fury, Matrox G400 Multitexturing
DirectX 6.1 February 3, 1999
DirectX 6.1a Windows 98 SE exclusive May 5, 1999
DirectX 7.0 September 22, 1999 GeForce256 series, GeForce2 series, GeForce4 MX, Radeon R100 (7xxx) series Hardware Transformation, Clipping and Lighting (TCL/T&L)
DirectX 7.0a March 8, 2000
DirectX 7.1 Windows Me exclusive September 14, 2000
DirectX 8.0 November 12, 2000 GeForce3 series Shader Model 1.1
DirectX 8.0a Last supported version for Windows 95 February 5, 2001 Pixel Shader 1.3 & Vertex Shader 1.1
DirectX 8.1 Windows XP, Windows XP SP1, Windows Server 2003 and Xbox exclusive October 25, 2001 GeForce4 Ti, Radeon R200 (8xxx, 9xxx) series Pixel Shader 1.3/1.4 & Vertex Shader 1.1
DirectX 8.1a This release includes an update to Direct3D (D3d8.dll) 2002
DirectX 8.1b This update includes a fix to DirectShow on Windows 2000 (Quartz.dll) June 25, 2002
DirectX 8.2 Same as the DirectX 8.1b but includes DirectPlay 8.2 2002
DirectX 9.0 December 19, 2002 Radeon R300 (9xxx) series, Radeon R300 (X3xx, X5xx, X6xx, X1xxx series) Shader Model 2.0 or Shader Model 2.0 extended
DirectX 9.0a March 26, 2003
DirectX 9.0b August 13, 2003 GeForce FX (5xxx) series
DirectX 9.0c Service Pack 2 for Windows XP exclusive August 4, 2004 GeForce 6 (6xxx) series, GeForce 7 (7xxx) series, Radeon R400 series (X7xx, X8xx), Radeon R500 (X1xxx) series Shader Model 3.0, GPGPU
DirectX 10 Windows Vista exclusive November 30, 2006 GeForce 8 (8xxx) series, GeForce 9 (9xxx) series, GeForce 100 Series, GeForce 200 Series, Radeon R600 (HD 2xxx) series Shader Model 4.0, Compute shaders, Windows Graphics Foundation 2.0, DXVA 2.0, GPGPU
DirectX 10.1 Service Pack 1 for Windows Vista, Windows Server 2008
includes Direct3D 10.1
February 4, 2008 GeForce 200 Series, GeForce 300 Series, Radeon R600 (HD 3xxx) series, Radeon R700 (HD 4xxx) series Shader Model 4.1, Tessellation, Compute shaders, Windows Graphics Foundation 2.1, DXVA 2.1, GPGPU
DirectX 11 Windows 7, Windows Server 2008 R2 October 22, 2009 GeForce 400 Series, Radeon Evergreen (HD 5xxx) series, Radeon Northern Islands (HD 6xxx) series, Radeon Southern Islands (HD 7xxx) series Shader Model 5.0, Tessellation, Multithreaded rendering, Compute shaders, GPGPU
DirectX 11.1 Windows 8 Developer Preview September 14, 2011
Posted in | Leave a response