Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

Difference between revisions of "Glossary:DirectX"

From PCGamingWiki, the wiki about fixing PC games
m
m (→‎Deprecated components: expanded directsetup bullet a bit)
 
(27 intermediate revisions by 15 users not shown)
Line 1: Line 1:
==Introduction==
+
{{Infobox non-game
DirectX is a collection of APIs for [[Windows_(Operating_System)|Windows]] that allows programs to interact directly with hardware. The majority of games that run on Windows require DirectX.
+
|cover        = Microsoft DirectX logo.svg
 +
|developers  =
 +
{{Infobox game/row/developer|Microsoft}}
 +
|release dates =
 +
{{Infobox game/row/date|Windows|September 1995}}
 +
|winehq      =  
 +
|wikipedia    = DirectX
 +
}}
  
==Updating DirectX==
+
'''DirectX''' is a collection of application programming interfaces (APIs) created by [[Company:Microsoft|Microsoft]] for the [[Windows]] operating system and the Xbox family of consoles.
To obtain the latest DirectX, download the [http://www.microsoft.com/download/en/details.aspx?id=35 DirectX Web Updater] and run it.
 
  
{| class="wikitable"
+
Since Windows 10 and Server 2016, newer builds of DirectX are distributed through [https://support.microsoft.com/kb/179113/ Windows Update].
|-
 
! Operating system !! Included DirectX version !! Latest DirectX version
 
|-
 
| Windows 8 || DirectX 11.1 || DirectX 11.1
 
|-
 
| Windows 7 || DirectX 11 || DirectX 11
 
|-
 
| Windows Vista || DirectX 10 || DirectX 11
 
|-
 
| Windows XP || DirectX 8.1 || DirectX 9.0c
 
|}
 
  
==Old Games on Windows Vista/Windows 7 Fix==
+
==Legacy versions==
One chief problem that PC gamers run into these days (relating to DirectX) is trying run older games on Windows Vista/Windows 7. Because Windows Vista and Windows 7 run DirectX 10, some important .dll files may not be installed, leading to errors when trying to run these games. If a game is complaining about a missing .dll file and you are running Windows Vista/Windows 7, follow these instructions:
+
{{ii}} Legacy optional components for older games (mainly DirectX 9.0c) were distributed through '''end-user runtimes''', often bundled on game discs or digital game download repos.
 +
{{--}} These are not installed by default on any version of Windows, which causes compatibility issues with games programmed to use them. This is recognizable by an error message reporting that a {{File|d3d9_##.dll}} file was not found on the system.
 +
{{mm}} [https://www.microsoft.com/download/details.aspx?id=8109 Manual installer] ([https://web.archive.org/web/20201216110836if_/https://download.microsoft.com/download/8/4/A/84A35BF1-DAFE-4AE8-82AF-AD2AE20B6B14/directx_Jun2010_redist.exe archived mirror])
 +
{{mm}} [https://www.microsoft.com/download/details.aspx?id=35 Web installer]
  
1. Write down the name of the .dll the games says is missing.
+
{{Fixbox|description=Using the manual DirectX End-User Runtimes installer|ref=|fix=
 +
# Download and run {{File|directx_Jun2010_redist.exe}}.
 +
# Extract its contents to an easily accessible directory.
 +
# Browse to that directory, and run {{File|DXSETUP.exe}} as administrator.
 +
# Reboot the computer once the installation is finished.
 +
# ''(Optional)'' Delete the directory used for installation to save disk space, as the components are now installed in appropriate system locations.
 +
}}
  
2. Navigate to <code>C:\Windows\system32\</code>
+
==Components==
 +
* '''Direct3D (D3D)''' renders 3D graphics whilst prioritising performance. It is the main competitor to [[Glossary:OpenGL|OpenGL]] / [[Glossary:Vulkan|Vulkan]].
 +
* '''Direct2D''' renders 2D graphics and vectors. It can interoperate with Direct3D. It is a replacement for DirectDraw, but is not backwards-compatible with it.
 +
* '''DirectWrite''' renders text.
 +
* '''DirectCompute''' supports general-purpose computing on graphics processing units.
 +
* '''DirectX Graphics Infrastructure (DXGI)''' provides a mapping between graphics APIs and the graphics kernel since DirectX 10.
 +
* '''XACT3''' and '''XAudio2''' are high- and low-level audio APIs, respectively.
 +
* '''DirectStorage''' is a GPU-oriented input/output API, most relevant to the Xbox Series range of consoles.
 +
* '''DirectX Raytracing (DXR)''' is Microsoft's implementation of [[Glossary:Ray tracing (RT)|ray tracing]] support, introduced in DirectX 12.
 +
* '''Direct Machine Learning (DirectML)''' is a GPU-accelerated machine learning and artificial intelligence API, introduced in DirectX 12.
 +
* '''DirectX Diagnostics''' ('''DxDiag''') is a tool for diagnosing and generating reports on components related to DirectX. It can be opened by calling the Run window ({{key|Win|R}}) and typing <code>dxdiag</code>.
  
3. Locate the .dll that has the same name as the missing .dll but with an additional x in the name. (I.e. if the game can't find dplay.dll, navigate here and find dplayx.dll.)
+
===Deprecated components===
 +
* '''DirectPlay''' handled multiplayer connections. Some games checked for its presence on startup instead of just the multiplayer component. As of Windows 8, it is moved to the "Optional Features" section of the Windows Control Panel and is disabled by default, as it is long deprecated.
 +
* '''DirectDraw''' rendered 2D graphics in DirectX 7 and earlier. Compatibility with newer Windows versions has worsened over time, so [[List of DirectDraw games|games which relied on it]] require custom wrappers; see the [[Glossary:DirectX/DirectDraw troubleshooting|DirectDraw troubleshooting]] article for more information.
 +
* '''DirectInput''' handled peripheral input in DirectX 7 and earlier. Replaced by XInput.
 +
* '''DirectSound''', '''DirectSound3D''' and '''DirectMusic''' were audio APIs in DirectX 7 and earlier. Replaced by XAudio 2 and XACT3. [https://www.indirectsound.com/games.html Some] older games have missing 3D audio capabilities or other compatibility issues; [https://www.indirectsound.com/ IndirectSound] to remedy this.
 +
* '''DirectSetup''' checked for the newest version of DirectX and installed the latest version when DirectX was a separate component from the OS. As of Windows XP SP2,<ref>{{Refurl|url=https://walbourn.github.io/not-so-direct-setup/|title=Games for Windows and the DirectX SDK blog - Not So Direct Setup|date=2024-04-07}}</ref> all future versions of DirectX was distributed and updated as part of the OS itself through Windows Update.
 +
* '''DirectX Media''' included: DirectAnimation, DirectShow, DirectX Transformation and Direct3D Retained Mode, as well as DirectX plugins for audio signal processing and DirectX Video Acceleration.
  
4. Make a copy of that .dll, and rename the copy to the initial .dll that was missing. (I.e make a copy of dplayx.dll and rename the copy dplay.dll).  
+
====Enabling DirectPlay====
 +
{{Fixbox|description=Enabling DirectPlay on Windows 8 and newer|fix=
 +
# Call the Run window ({{key|Win|R}}), type <code>OptionalFeatures</code> and press {{key|Enter}}.
 +
# Expand Legacy Components.
 +
# Check DirectPlay.
 +
# Click OK to save the changes.
  
With any luck, the game will see now be able to find the .dll and play normally.
+
'''Notes'''
 +
{{ii}} If problems persist, copy {{File|dplayx.dll}} from {{Folder|{{p|windir}}\{{p|SysWOW64}}}} to a game's installation folder and rename it to {{File|dplay.dll}}.
 +
}}
  
NOTE: Be sure to create a copy of the .dll and rename the copy. If you rename the original, other games may cease to work.
+
==Version history==
 +
{{mm}} [http://falconfly.3dfx.pl/directx.htm Archive of older DirectX versions] (1.0 through 9.0c from April 2009)
 +
{{ii}} Minor build variations are not listed here; refer to the equivalent table on Wikipedia: [[Wikipedia:DirectX#Version history|DirectX]]
  
==Related links==
+
{| class="wikitable"
[http://en.wikipedia.org/wiki/DirectX DirectX Wikipedia article]
+
|-
 +
! Version !! Release date !! Notes
 +
|-
 +
| 1.0 || September, 1995 || Originally named '''Windows Game SDK'''
 +
|-
 +
| 2.0 || 1996 || Shipped only with select third-party applications
 +
|-
 +
| 2.0a || June 5, 1996 || Exclusive to Windows 95 OSR2 and NT 4.0
 +
|-
 +
| 3.0 || September 15, 1996 ||
 +
|-
 +
| 3.0a || December, 1996 || Last officially supported version for NT 4.0; default on NT 4.0 SP3
 +
|-
 +
| 3.0b || December, 1996 || Hotfix for Japanese version of Windows 95
 +
|-
 +
| 4.0 || ''Unreleased'' ||
 +
|-
 +
| 5.0 || August 4, 1997 || Available as a beta for Windows 2000; could install on NT 4.0
 +
|-
 +
| 5.2 || May 5, 1998 || Default on Windows 98
 +
|-
 +
| 6.0 || August 7, 1998 || Default on Windows CE
 +
|-
 +
| 6.1 || February 3, 1999 ||
 +
|-
 +
| 6.1a || May 5, 1999 || Default and exclusive to Windows 98 SE; last version to support 486 processors
 +
|-
 +
| 7.0 || September 22, 1999 || Default on Windows 2000
 +
|-
 +
| 7.0a || December 17, 1999 ||
 +
|-
 +
| 7.1 || September 14, 2000 || Exclusive to Windows Me exclusive; last version to support RGB software rendering.
 +
|-
 +
| 8.0 || November 10, 2000 || Default and exclusive to Windows 98 SE; last version to support 486 processors
 +
|-
 +
| 8.0a || January 24, 2001 || Last version to support Windows 95 and software rendering in <code>dxdiag</code>
 +
|-
 +
| 8.1 || October 25, 2001 || Default on Windows XP RTM and SP1, Server 2003 and Xbox
 +
|-
 +
| 8.1a || 2002 || Update for Direct3D
 +
|-
 +
| 8.1b || June 25, 2002 || Update for DirectShow on Windows 2000
 +
|-
 +
| 8.2 || 2002 || Update for DirectPlay
 +
|-
 +
| 9.0 || December 19, 2002 || Introduced new version of High Level Shader Language (HLSL) support in Direct3D.
 +
|-
 +
| 9.0a || March 26, 2003 ||
 +
|-
 +
| 9.0b || August 13, 2003 ||
 +
|-
 +
| 9.0c || July 22, 2004 || Default on Windows XP SP2 and SP3, Server 2003 SP1 and R2, and Xbox 360.<br>Introduces support for Shader Model 3.0.<br>Periodical updates for optional components were released until June 7, 2010 (see [[#Legacy versions|Legacy versions]]).<br>Support for Windows 98 dropped after the original July 2004 release, Windows Me after April 2006, Windows 98 SE after December 2006, and Windows 2000 after February 2010. The final June 2010 release is also the last DirectX version supported on any version of Windows XP.
 +
|-
 +
| 10 || November 30, 2006 || Default and exclusive to Windows Vista
 +
|-
 +
| 10.1 || February 4, 2008 || Default on Windows Vista SP1 and SP2, and Server 2008 RTM through SP2
 +
|-
 +
| 11 || October 22, 2009 || Default on Windows 7 RTM and SP1, Server 2008 R2 RTM and SP1
 +
|-
 +
| 11.1 || August 1, 2012 || Default on Windows 8, RT and Server 2012
 +
|-
 +
| 11.2 || October 18, 2013 || Default on Windows 8.1, Server 2012 R2, and Xbox One
 +
|-
 +
| 12 || July 29, 2015 || Default on Windows 10, 11, Xbox Series.<br>Various updates have added support for [[Glossary:Ray tracing (RT)|ray tracing]], Variable Rate Shading (VRS), Depths Bound Testing and Programmable [[MSAA]].<br>Support for Windows 7 SP1 is limited to a plugin for select games (e.g. [[World of Warcraft]]).
 +
|}
  
 
[[Category:Guide]]
 
[[Category:Guide]]

Latest revision as of 17:28, 7 April 2024

DirectX
DirectX cover
Developers
Microsoft
Release dates
Windows September 1995
DirectX at Wikipedia

DirectX is a collection of application programming interfaces (APIs) created by Microsoft for the Windows operating system and the Xbox family of consoles.

Since Windows 10 and Server 2016, newer builds of DirectX are distributed through Windows Update.

Legacy versions

Legacy optional components for older games (mainly DirectX 9.0c) were distributed through end-user runtimes, often bundled on game discs or digital game download repos.
These are not installed by default on any version of Windows, which causes compatibility issues with games programmed to use them. This is recognizable by an error message reporting that a d3d9_##.dll file was not found on the system.
Manual installer (archived mirror)
Web installer
Using the manual DirectX End-User Runtimes installer
  1. Download and run directx_Jun2010_redist.exe.
  2. Extract its contents to an easily accessible directory.
  3. Browse to that directory, and run DXSETUP.exe as administrator.
  4. Reboot the computer once the installation is finished.
  5. (Optional) Delete the directory used for installation to save disk space, as the components are now installed in appropriate system locations.

Components

  • Direct3D (D3D) renders 3D graphics whilst prioritising performance. It is the main competitor to OpenGL / Vulkan.
  • Direct2D renders 2D graphics and vectors. It can interoperate with Direct3D. It is a replacement for DirectDraw, but is not backwards-compatible with it.
  • DirectWrite renders text.
  • DirectCompute supports general-purpose computing on graphics processing units.
  • DirectX Graphics Infrastructure (DXGI) provides a mapping between graphics APIs and the graphics kernel since DirectX 10.
  • XACT3 and XAudio2 are high- and low-level audio APIs, respectively.
  • DirectStorage is a GPU-oriented input/output API, most relevant to the Xbox Series range of consoles.
  • DirectX Raytracing (DXR) is Microsoft's implementation of ray tracing support, introduced in DirectX 12.
  • Direct Machine Learning (DirectML) is a GPU-accelerated machine learning and artificial intelligence API, introduced in DirectX 12.
  • DirectX Diagnostics (DxDiag) is a tool for diagnosing and generating reports on components related to DirectX. It can be opened by calling the Run window ( Win+R) and typing dxdiag.

Deprecated components

  • DirectPlay handled multiplayer connections. Some games checked for its presence on startup instead of just the multiplayer component. As of Windows 8, it is moved to the "Optional Features" section of the Windows Control Panel and is disabled by default, as it is long deprecated.
  • DirectDraw rendered 2D graphics in DirectX 7 and earlier. Compatibility with newer Windows versions has worsened over time, so games which relied on it require custom wrappers; see the DirectDraw troubleshooting article for more information.
  • DirectInput handled peripheral input in DirectX 7 and earlier. Replaced by XInput.
  • DirectSound, DirectSound3D and DirectMusic were audio APIs in DirectX 7 and earlier. Replaced by XAudio 2 and XACT3. Some older games have missing 3D audio capabilities or other compatibility issues; IndirectSound to remedy this.
  • DirectSetup checked for the newest version of DirectX and installed the latest version when DirectX was a separate component from the OS. As of Windows XP SP2,[1] all future versions of DirectX was distributed and updated as part of the OS itself through Windows Update.
  • DirectX Media included: DirectAnimation, DirectShow, DirectX Transformation and Direct3D Retained Mode, as well as DirectX plugins for audio signal processing and DirectX Video Acceleration.

Enabling DirectPlay

Enabling DirectPlay on Windows 8 and newer
  1. Call the Run window ( Win+R), type OptionalFeatures and press Enter.
  2. Expand Legacy Components.
  3. Check DirectPlay.
  4. Click OK to save the changes.

Notes

If problems persist, copy dplayx.dll from %WINDIR%\SysWOW64 to a game's installation folder and rename it to dplay.dll.

Version history

Archive of older DirectX versions (1.0 through 9.0c from April 2009)
Minor build variations are not listed here; refer to the equivalent table on Wikipedia: DirectX
Version Release date Notes
1.0 September, 1995 Originally named Windows Game SDK
2.0 1996 Shipped only with select third-party applications
2.0a June 5, 1996 Exclusive to Windows 95 OSR2 and NT 4.0
3.0 September 15, 1996
3.0a December, 1996 Last officially supported version for NT 4.0; default on NT 4.0 SP3
3.0b December, 1996 Hotfix for Japanese version of Windows 95
4.0 Unreleased
5.0 August 4, 1997 Available as a beta for Windows 2000; could install on NT 4.0
5.2 May 5, 1998 Default on Windows 98
6.0 August 7, 1998 Default on Windows CE
6.1 February 3, 1999
6.1a May 5, 1999 Default and exclusive to Windows 98 SE; last version to support 486 processors
7.0 September 22, 1999 Default on Windows 2000
7.0a December 17, 1999
7.1 September 14, 2000 Exclusive to Windows Me exclusive; last version to support RGB software rendering.
8.0 November 10, 2000 Default and exclusive to Windows 98 SE; last version to support 486 processors
8.0a January 24, 2001 Last version to support Windows 95 and software rendering in dxdiag
8.1 October 25, 2001 Default on Windows XP RTM and SP1, Server 2003 and Xbox
8.1a 2002 Update for Direct3D
8.1b June 25, 2002 Update for DirectShow on Windows 2000
8.2 2002 Update for DirectPlay
9.0 December 19, 2002 Introduced new version of High Level Shader Language (HLSL) support in Direct3D.
9.0a March 26, 2003
9.0b August 13, 2003
9.0c July 22, 2004 Default on Windows XP SP2 and SP3, Server 2003 SP1 and R2, and Xbox 360.
Introduces support for Shader Model 3.0.
Periodical updates for optional components were released until June 7, 2010 (see Legacy versions).
Support for Windows 98 dropped after the original July 2004 release, Windows Me after April 2006, Windows 98 SE after December 2006, and Windows 2000 after February 2010. The final June 2010 release is also the last DirectX version supported on any version of Windows XP.
10 November 30, 2006 Default and exclusive to Windows Vista
10.1 February 4, 2008 Default on Windows Vista SP1 and SP2, and Server 2008 RTM through SP2
11 October 22, 2009 Default on Windows 7 RTM and SP1, Server 2008 R2 RTM and SP1
11.1 August 1, 2012 Default on Windows 8, RT and Server 2012
11.2 October 18, 2013 Default on Windows 8.1, Server 2012 R2, and Xbox One
12 July 29, 2015 Default on Windows 10, 11, Xbox Series.
Various updates have added support for ray tracing, Variable Rate Shading (VRS), Depths Bound Testing and Programmable MSAA.
Support for Windows 7 SP1 is limited to a plugin for select games (e.g. World of Warcraft).