|Current version||12.0 (for Windows 10 )
(July 29, 2015)
|License||MS - EULA|
|For end users:
DirectX [ dɪrɛkt ɛks ( AE ) or 'daɪrɛkt ɛks ( BE )] is a collection of COM -based programming interfaces (English Application Programming Interface , shortly API) for multimedia intensive applications (especially games ) on the Windows - platform and also comes on the game console Xbox used.
The DirectX collection of software components covers almost the entire range of multimedia. Primarily, it becomes more complex when displaying 2D - and 3D - graphics used, but also provides support for audio , various input devices (eg, mouse , joystick ) and network communication.
History and MS-DOS
After the IBM ( compatible ) PC with the MS-DOS operating system had established itself as a " computer for everyone" since the late 1980s , the triumphant advance of the Microsoft Windows graphical user interface began a few years later . In the 1990s, popular applications were increasingly ported to Microsoft Windows , and many new applications were developed exclusively for Windows using the WinAPI . The only exception was computer games, which initially appeared mainly on home computers equipped with better multimedia capabilities , but also found their way more and more to the PC.
At this point in time, Windows did not offer any optimized programming interfaces for fast graphics and audio operations , which, however, are usually indispensable for games. That is why games were mostly developed for MS-DOS only. MS-DOS did not offer interfaces specifically designed for games, but it did allow complete control over the processor and unhindered access to all connected hardware. Above all, a program under MS-DOS could be sure that it would not be hindered by other programs running simultaneously on the same computer, because only one program can run under the single-task system MS-DOS. In contrast to this, programs under multitasking systems such as Windows have to take other programs into account that run simultaneously on the same computer. At that time, Microsoft paid little attention to the entertainment industry and entertainment media such as computer games.
The triumph of 3D graphics
After the resounding success of the computer game Doom by id Software , which had already shown with Wolfenstein 3D the technical potential of the "IBM-compatible PCs", which are primarily used for office work, Microsoft began to take an interest in the entertainment segment. The system Windows 95 - which possessed just like its predecessor in appearance yet no programming for games - Microsoft wanted subsequently to add an interface to the growing market for PC gamers of MS-DOS and lure to Windows 95. This first interface Version called Microsoft "Game SDK". It consisted only of a handful of functions with which graphics could be bittered directly into the graphics memory . This first interface version was ignored by the games industry, which had developed for MS-DOS for years and gained experience there.
At the same time Microsoft developed WinG , a library with the same approach, but preferred for the 256-color mode. This library was used, for example, in "Lemmings for Windows" and was also available under the Windows for Workgroups 3.11 user interface .
Microsoft made another attempt with DirectX (version 1.0). Microsoft was able to persuade id Software to develop a port of their successful game “Doom” with this API for Windows 95. This game port was presented by Microsoft at a trade show, to bring developers from around the world to cooperate with DirectX directly for the de facto - standard to develop Windows 95 instead of MS-DOS.
But even this attempt initially failed because Microsoft underestimated the effort that was necessary for a usable program library with graphics and sound functions optimized for games. Years later, games came onto the market that were actually entirely protected mode DOS games and at most brought with them a few additional auxiliary programs (e.g. editors ) for Windows or only used the Windows autoplay functionality.
DirectX 2.0 to 9.29
Since DirectX version 2.0 also brought 3D functionality in the form of the Direct3D component , version 3.0 reached a certain maturity and was gradually taken seriously by developers. With him, the first games appeared that only ran under Windows with DirectX and no longer under MS-DOS, for example Diablo .
During the development of DirectX 4.0 it turned out that many programmers were waiting for functionality that was only intended for version 5. So it was decided not to publish the few changes in DirectX 4, but to incorporate them directly into the following version. DirectX 6.0 supported multitexturing and bump mapping for the first time . From version 7, Transform and Lighting and Cubic Environment Mapping ( CubeMaps ) are part of the range of functions. The T&L package was significantly expanded in the following version and features such as triangle tessellation were added. There were also freely programmable vertex and pixel shaders .
DirectX 8 covered many areas of multimedia and game programming, such as 2D and 3D graphics, sound and music, video / capturing , input (and via force feedback also "output" on actual input devices) and network (see below) .
DirectX 9.0 was released in December 2002. A major innovation was the “ High Level Shading Language ” ( HLSL ), which made it easier for developers to create 3D graphics and effects. HLSL offered developers a flexible and easy-to-use development environment and was compatible with all DirectX-compatible graphics cards in order to simplify the adaptation to the hardware characteristics. Another new feature was a library that offered patch meshes and traditional polygon meshes, as well as improved real-time animations. All Direct3D APIs included advanced programming capabilities for low-level graphics with programmable Vertex and Pixel Shader 2.0 models. In DirectX 9.0, Microsoft implemented new wizards for the creation of DirectX Media Objects (DMOs), for audio effects and for DirectMusic tools for MIDI processing.
The version DirectX 9.0c was published in August 2004 as an updated version. According to Microsoft, support for DirectX 9 is guaranteed for the next few years, even if Windows Vista and DirectX 10 / 10.1 are used in practice. In June 2010 Microsoft released the updated version 9.29, which according to dxdiag still corresponds to DirectX 9.0c.
The DirectX 10.0 version appeared at the beginning of 2007. Unlike its predecessors, it only runs under the Windows Vista and Windows 7 operating systems . In addition, a graphics card compatible with DirectX 10.0 must be installed in the computer.
In the Windows 98, Me, 2000, XP or Server 2003 systems, only DirectX 9.0c is still available.
In April 2007, reports appeared that the new Direct3D 10 functions could also be used on other Windows versions via their own libraries. The company behind this project has since discontinued the project and published the source code.
Only Direct3D 10, which uses the new Windows Display Driver Model and Shader Model 4 , is new to version 10 , combined with stricter rules for manufacturers of graphics cards who want to take advantage of Direct3D 10 compatibility.
As of Direct3D 10, with a few exceptions, cap bits are no longer used, which programs can use to determine which functions the hardware provides. Therefore, Direct3D 10 and each subsequent version must always introduce new functions in the form of minimum requirements. With this, Microsoft is accommodating the game developers, as they previously had to query the hardware for a large number of possible function combinations. Hardware manufacturers, on the other hand, are now forced to implement certain functions in order to be compatible with the respective Direct3D version. This restricts the ability of hardware manufacturers to set themselves apart from competitors through optional components.
Direct3D 10 differs from its predecessors less in terms of directly visible properties than in the expansion, modularization and flexibility of the 3D functions.
DirectX 10.1 was delivered together with Windows Vista SP1 and contains the following changes compared to DirectX 10 that affect the Direct3D API:
- Shader Model 4.1
- quadruple antialiasing with changeable subpixel patterns
- Support for continuous computing with 32-bit floating point numbers
- dynamically addressable cubemap arrays
- Render in block-compressed frame buffers
If a graphics card does not master one of these functions, it cannot offer a Direct3D 10.1 interface and the application has to revert to Direct3D 10.
In addition, XAudio 2 is introduced as a replacement for DirectSound.
Microsoft had already officially unveiled new details on DirectX 11 at the Gamefest trade fair (July 22-23 , 2008) in Seattle.
In principle, all graphics cards that are compatible with DirectX 10.x should also achieve full compatibility with DirectX 11 (which excludes new DirectX 11 functions on older hardware).
The main innovations are:
- Shader Model 5, with which the so-called "Compute Shaders" are introduced, with which Microsoft would like to standardize the GPGPU programming.
- On the graphics card side, the triangles supplied by the CPU are subdivided into further triangles ( tessellation ), through which the level of detail of 3D scenes can be increased without burdening the rest of the system. This technology is supported by all AMD graphics cards from the HD-5XXX series and all Nvidia graphics cards from the GeForce GTX 4XX series.
- Improved thread support of the rendering pipeline, especially for more efficient GPGPU programming.
DirectX 11 was released as part of Windows 7 in the fourth quarter of 2009. For Windows Vista, Microsoft started delivering DirectX 11 on October 28, 2009, initially via Windows Update .
The technical development manager for the graphics area at AMD announced in a speech in Reykjavík that the first DirectX 11 graphics card should come onto the market as early as the first quarter of 2009. However, this was only the case with the appearance of the ATI Radeon HD 5000 series , which came onto the market at the beginning of the fourth quarter of 2009. In addition, the first DirectX 11 examples were shown in the DirectX SDK from November 2008.
Microsoft presented DirectX 12 at the Game Developers Conference in San Francisco on March 20, 2014. Similar to AMD's Mantle , DirectX 12 offers hardware-related programming, so the CPU load ("overhead") should be reduced. DirectX 12 should work on all DirectX 11-capable graphics cards as well as mobile devices and the Xbox One . The first games with DirectX 12 support were expected for the end of 2015. DirectX 12 is required for ray tracing on compatible Nvidia RTX graphics cards .
DirectX 12 Ultimate
On March 19, 2020 Microsoft announced a new DirectX development stage with DirectX 12 Ultimate in the DirectX Developer Blog . Under DirectX 12 Ultimate, Microsoft basically combines several, partly already existing, technologies and makes them mandatory for manufacturers. Specifically, these are DirectX Raytracing 1.1, Variable Rate Shading, Mesh Shaders and Sampler Feedback. To be able to use all the new features, an NVIDIA graphics card from GeForce 20 series or an AMD graphics card based on the RDNA 2 architecture is required. The Xbox Series X is the only video game console that should support DirectX 12 Ultimate, Sony's PlayStation 5 , which is also based on AMD hardware based on RDNA-2 architecture, lacks software support because the Japanese manufacturer uses different graphics APIs will be used.
|Legend:||Older version; no longer supported||Older version; still supported||Current version||Current preliminary version||Future version|
|DirectX version||Version number||operating system||publication|
|Older version; no longer supported: DirectX 1.0||4.02.0095||September 30, 1995|
|Older version; no longer supported: DirectX 2.0||was only published with a few third-party programs||1996|
|Older version; no longer supported: DirectX 2.0a||4.03.00.1096||Windows 95 OSR2 and NT 4.0||June 5, 1996|
|Older version; no longer supported: DirectX 3.0||4.04.00.0068||September 15, 1996|
|4.04.00.0069||later DirectX 3.0 packages included Direct3D 4.04.00.0069||1996|
|Older version; no longer supported: DirectX 3.0a||4.04.00.0070||
Windows NT 4.0 SP3 (and above)
last supported version of DirectX for Windows NT 4.0 SP0
|Older version; no longer supported: DirectX 3.0b||4.04.00.0070||
slight improvement over 3.0a as only one cosmetic issue has been
corrected in the Japanese version
|Older version; no longer supported: DirectX 5.0||4.05.00.0155 (RC55)||available as beta for Windows NT 4.0||July 16, 1997|
|Older version; no longer supported: DirectX 5.2||4.05.01.1600 (RC00)||DirectX 5.2 release for Windows 95||May 5, 1998|
|January 4, 1998 (RC0)||Windows 98 exclusive||June 25, 1998|
|Older version; no longer supported: DirectX 6.0||4.06.00.0318 (RC3)||Windows CE as a Dreamcast implementation||August 7, 1998|
|Older version; no longer supported: DirectX 6.1||4.06.02.0436 (RC0)||February 3, 1999|
|Older version; no longer supported: DirectX 6.1a||4.06.03.0518 (RC0)||exclusively for Windows 98 SE||May 5, 1999|
|Older version; no longer supported: DirectX 7.0||4.07.00.0700 (RC1)||September 22, 1999|
|4.07.00.0700||Windows 2000||February 17, 2000|
|Older version; no longer supported: DirectX 7.0a||4.07.00.0716 (RC0)||March 8, 2000|
|Older version; no longer supported: DirectX 7.1||4.07.01.3000 (RC1)||exclusively for Windows Me||September 14, 2000|
|Older version; no longer supported: DirectX 8.0||4.08.00.0400 (RC10)||November 12, 2000|
|Older version; no longer supported: DirectX 8.0a||4.08.00.0400 (RC14)||last version for Windows 95||February 5, 2001|
|Older version; no longer supported: DirectX 8.1||4.08.01.0810||exclusively for Windows XP , Windows Server 2003 and Xbox||October 25, 2001|
|4.08.01.0881 (RC7)||Version for the older operating systems (Windows 98, Windows Me and Windows 2000)||November 8, 2001|
|Older version; no longer supported: DirectX 8.1a||4.08.01.0901 (RC?)||Direct3D update (D3d8.dll)||2002|
|Older version; no longer supported: DirectX 8.1b||4.08.01.0901 (RC7)||DirectShow correction for Windows 2000 (Quartz.dll)||June 25, 2002|
|Older version; no longer supported: DirectX 8.2||4.08.02.0134 (RC0)||identical to DirectX 8.1b, but with DirectPlay 8.2||2002|
|Older version; no longer supported: DirectX 9.0||4.09.00.0900 (RC4)||December 19, 2002|
|Older version; no longer supported: DirectX 9.0a||4.09.00.0901 (RC6)||March 26, 2003|
|Older version; no longer supported: DirectX 9.0b||4.09.00.0902 (RC2)||August 13, 2003|
|Older version; no longer supported: DirectX 9.0c||4.09.00.0903||only for Service Pack 2 for Windows XP|
|4.09.00.0904 (RC0)||August 4, 2004|
|4.09.00.0904||Windows XP SP2, Windows Server 2003 SP1, Windows Server 2003 R2, and Xbox 360||August 6, 2004|
Older version; still supported:DirectX 9.0c
|4.09.00.0904 (RC0)||The last version for Windows 98 and ME is from December 2006.
The last version for Windows 2000 is from February 2010.
The first 64-bit capable version is from February 2005.
bimonthly from October 2004 to August 2007 ; then
quarterly; current version: June 2010
|Older version; still supported: DirectX 9.29||4.09.0000.0904||from Windows XP||June 7, 2010|
|Older version; still supported: DirectX 10||6.00.6000.16386||Windows Vista, Windows 7||November 20, 2006|
|Older version; still supported: DirectX 10.1||6.00.6001.18000||
Service Pack 1 for Windows Vista , Windows Server 2008
with Direct3D 10.1
|February 4, 2008|
|Older version; still supported: DirectX 11||6.01.7600.0000||Windows Vista SP2, Windows 7||October 22, 2009|
|Older version; still supported: DirectX 11.1||6.02.9200||Windows 8 , Windows 7||October 26, 2012|
|Older version; still supported: DirectX 11.2||6.03.9600||Windows 8.1 , Windows 8, Windows 7 SP1||18th October 2013|
|Current version: DirectX 12||10.00.17134.0001||Windows 7, Windows 10||July 29, 2015|
- DirectX 4 was never released. Raymond Chen explains on his blog, The Old New Thing and his book of the same name, that after DirectX 3 was released, Microsoft began developing 4 and 5 in parallel. Version 4 should be a minor adaptation, 5 with major changes. A lack of interest on the part of the developers for the new features of version 4 led to version 5 being released immediately.
- The version number shown by Microsoft's DxDiag tool (version 4.09.0000.0900 and higher) uses the format "x.xx.xxxx.xxxx" for version numbers. However, in the will registry the format "X.XX. xx .xxxx "is used. It is therefore possible that for the version listed above “4.09.00.0904” is displayed in DxDiag as “4.09.0000.0904”.
Structure of DirectX
DirectX consists of the following parts:
DirectX Graphics is the most widely used part of DirectX. It enables quick and direct access to the graphics card , bypassing the Graphics Device Interface (GDI) and Display Device Interface (DDI), and supports (with “Direct2D”) 2D and (with “ Direct3D ”) 3D graphics .
DirectX Graphics provides both a low-level API (Direct3D) and a high-level API (Direct3DX). The low-level API Direct3D is suitable for applications with a high interaction rate or presentation frequency of complex graphic scenes, such as 3D games. Up to version 7, the low-level API differentiated between 2D graphics (DirectDraw) and 3D graphics (Direct3D). By revising the graphics area (in version 8), both parts were combined under a uniform API in Direct3D. The explicit, independent further development of DirectDraw was thus discontinued.
The high-level API Direct3DX, on the other hand, enables 3D applications to be implemented with a reasonable amount of effort. Direct3DX is based on Direct3D, that is, it uses its basic functionality.
In addition, the function group emulates functions that are not supported by the hardware. For this, the Hardware Emulation Layer (HEL) uses the possibilities of MMX processors to manipulate images and uses the functions of the GDI. Among other things, page switching (flipping) (see double buffering ), blitting , clipping , 3D Z-buffer , overlays and direct control of the data flow by the video port hardware (video port manager) are supported.
DirectSetup enables programmers to have their installation routine automatically check whether the required DirectX version is already installed, and to install it otherwise
XAudio 2 is based on the Xbox 360 Sound API and has replaced DirectSound. The programmable DSP programs enable EAX- like effects on all sound output devices (ugs. Sometimes referred to as "sound cards", even if there are mostly only components on the motherboard); however, these are executed on the main processor . This has mainly aroused criticism from the manufacturer Creative , because such DSP programs could be executed "in hardware" on their chips or cards in order to offer players a speed advantage (by relieving the CPU).
XInput is the new standard for input devices under Windows XP and later operating systems, as well as for the Xbox 360. XInput ignores all older DirectInput devices, which means that older joysticks and joypads can only work through simulation via wrapper programs in the various games and applications. So far there is no known solution to this problem from Microsoft, which is why it can be assumed that the company has no interest in further support of such devices. If you want to run XInput games with a DirectInput controller, it is advisable to use an appropriate emulator. It is questionable whether Microsoft will support pure DirectInput devices with XInput in the future.
The following components were part of DirectX in the past, but are no longer supported.
Direct Input supports input devices such as keyboard , mouse , joysticks etc. and enables force feedback effects (for example the vibration of a gamepad or resistance when moving a joystick) and supports access to analog and digital input devices which use an absolute coordinate system. An input device can have up to six axes of movement and 32 buttons. Access via DirectInput bypasses the Windows Message System ( i.e. event, message and queues) and takes place directly on the hardware ; a speed advantage over the Win32 API. DirectInput allows applications to use the possible force feedback capabilities of the input devices in order to generate force feedback effects.
For playing music ( MIDI music, but not compressed music such as MP3 ). DirectMusic provides to a software - synthesizers service. A DLS2 synthesizer is used. See DirectShow for playing compressed music like MP3 and video ( AVI , MPEG ).
DirectPlay is used to communicate between multiplayer games that are running on several computers (for network games or online games ). Essentially, it is a protocol at the application level, and it is therefore independent of the specific protocols used at the transport and transmission level (see also OSI model ). DirectPlay does not implement any mechanisms for the meeting of players (matchmaking) or the accounting for game participation.
The core is the game session (DirectPlay session), which is generated and moderated by a computer called a "host". Players are logical objects of which there can be several per computer, so a distinction is made between local and remote players. The concept of player groups is supported, each player can belong to several groups at the same time. The players can send messages to other players ( chat ).
Note: For many game developers, the very high CPU load ("overhead") of DirectPlay was decisive for not using it and preferring to implement their own more effective network access based on Winsock . Others have spoken out because of the strong bond of Windows however, because for example, specific to Windows systems executable first-person shooter like their own Linux - Server are being developed.
DirectShow (formerly "Direct Media")
DirectShow or formerly ActiveMovie or DirectX Media is used to process video and audio files, with which various types of video files ( AVI , MPEG ) and sound files (e.g. MP3 ) can be played back or created. Streaming is also supported and can be expanded as required using DirectShow filters.
DirectShow has since been removed from the DirectX SDK and has been included in the Windows Platform SDK. Strictly speaking, DirectShow no longer belongs to DirectX, but is now part of the Windows platform.
DirectSound is used to play back and record sound effects, e.g. B. Surround sound support (i.e. positioning of the sounds in 3D space) is used. The data from several input buffers (Secondary Sound Buffers) are assigned effects and mixed together on an output buffer (Primary Sound Buffer). Input buffers can be implemented in software or hardware, delivering data statically (for example from a file) or dynamically (for example streaming from a microphone input). The number of input buffers that can be mixed is only limited by the available computing power . It automatically adapts to the performance spectrum of the installed sound card . Base effects, such as volume , frequency control , panning or balance, additional effects such as reverb ( Hall effect ), chorus , distortion , equalization and 3D effects, such as rolloff , amplitude panning , Muffling , Arrival offset and Doppler shift effect are available. Since DirectSound has been replaced by XAudio 2, samples for DirectSound are no longer included in the DirectX SDK releases after November 2007.
DirectX Media Objects
DirectX video acceleration
DirectX Video Acceleration is a programming interface (API) developed by Microsoft for Windows and Xbox 360 , with which it is possible to accelerate video decoding via hardware by, among other things, enabling access to the GPU . Version DXVA 1.0 was introduced with Windows 2000 and is also available for Windows 98 and later platforms; Version DXVA 2.0 was introduced with Microsoft Windows Vista and integrated into the Media Foundation .
DirectX enables direct access to the hardware of the system without making the programs dependent on the hardware. So game developers is a hardware abstraction layer ( HAL from English. Hardware abstraction layer ) for the game programming provided by the slow interfaces (eg Win GDI be bypassed). Functions that cannot be provided by the hardware and therefore not provided by the HAL are emulated in the hardware emulation layer ( HEL from hardware emulation layer ) .
DirectX outside of Windows
In addition to the Microsoft DirectX API included in current Windows versions, there are also variants for other operating systems . These simulations are used to use Windows application programs without a Windows operating system. For legal reasons, not all functions of the original API are usually available, which can limit compatibility with application programs. Since very few application programs need all the functions of the DirectX API, many can still be used without restrictions. Graphic functions are mostly provided using OpenGL . Examples of DirectX implementations:
- Cedega : A commercial Win32 and DirectX implementation with the aim of making Windows games run on Linux.
- Wine : An open source project with the aim of creating a complete Win32 and Win64 API and thus also DirectX for Linux and Unix- like operating systems. The DirectX implementation of Wine is just a lean abstraction layer to the X server and OpenGL.
- CrossOver : A commercial extension to Wine .
- Darwine : A Wine port for macOS .
- ReactOS : Uses part of the Wine libraries, including DirectX, to save duplicate development work.
Alternatives to DirectX
In addition to DirectX, free APIs are also available which, unlike DirectX, are not limited to the Windows platform. However, these APIs are not as comprehensive, but can replace large parts of DirectX and enable the development of cross-platform software. Some of these alternatives, such as OpenGL and OpenAL, offer hardware acceleration as well as DirectX.
- OpenAL for (3D) sound, replaces DirectSound and DirectMusic
- OpenCL as a replacement for DirectX 11 Compute Shader
- OpenGL for (3D) graphics, replaces Direct3D or DirectX Graphics
- OpenML for multimedia processing, i.e. H. especially video, replaces DirectShow or DirectX Media
- SFML , SDL , ClanLib or Allegro for tasks such as B. support of input devices, 2D / 3D graphics, cross-platform thread management and networking. These libraries are based on DirectX or OpenGL.
- Vulkan from the Khronos Group as the successor to OpenGL
For the new AMD graphics card generation "Volcanic Islands", AMD announced the new AMD Mantle 3D interface as a DirectX competitor for the end of 2013 .
DirectX applications are created using the DirectX SDK .
An informative test program is the DirectX diagnostic program . It is included in Windows and can be started via Start → Run → dxdiag or alternatively from Windows Vista onwards it can be entered in the search window in the start bar.
- Download the latest DirectX libraries from Microsoft
- Microsoft DirectX Developer Center - website for developers
- Direct3D11 tutorials Direct3D11 tutorials
- DirectX - OldVersion.com (English) - Older versions of DirectX
- DirectX World (English) - C ++ exercises for game developers
- Raymond Chen: What happened to DirectX 4? January 22, 2004, accessed January 26, 2011 .
- Alky Project Blog ( Memento from April 20, 2007 in the Internet Archive )
- Development on DirectX-10-Wrapper for Windows XP discontinued , Golem-News from January 8th, 2008
- Microsoft brings DirectX 11 and renovates game services (Golem.de from July 23, 2008)
- Tessellated Froblins - Videos of the AMD Tech Demos for the 4850 (Golem.de from June 27, 2008)
- DirectX-11 for Windows Vista available (Golem.de from October 28, 2009)
- TG Daily on the first DirectX 11 graphics card ( memento of the original from August 9, 2008 in the Internet Archive ) Info: The archive link was automatically inserted and not yet checked. Please check the original and archive link according to the instructions and then remove this notice.
-  , Retrieved March 6, 2014.
-  , accessed on March 6, 2014.
- Announcing DirectX 12 Ultimate. In: DirectX Developer Blog. March 19, 2020, accessed June 25, 2020 .
- Microsoft introduces "DirectX 12 Ultimate" with four mandatory "new" graphic features. In: 3DCenter.org. March 20, 2020, accessed June 25, 2020 .
- DirectX 9.0c from December 2006
- DirectX 9.0c from February 2010
- DirectX 9.0c from February 9, 2005 ( Memento from October 16, 2009 in the Internet Archive )
- Official DirectX 9.29 reference at www.microsoft.com
- Panagiotis Kolokythas: Windows 7 receives DirectX 12 support , PC-WELT, August 27, 2019
- Frederik Niemeyer: DirectX 12: Microsoft forces gamers to upgrade to Windows , CHIP, November 14, 2014
- Raymond Chen: The Old New Thing . 1st edition. Pearson Education, 2006, ISBN 0-321-44030-7 , pp. 330 .
- Windows 7 - Direct2D for 2D display - Article at GameStar , from October 30, 2008
- Microsoft: XInput and DirectInput. Retrieved August 11, 2014
- DirectX ( Memento of the original from February 15, 2012 in the Internet Archive ) Info: The archive link was inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. (English), Wine Project, accessed February 16, 2012
- DirectX (English), ReactOS project, accessed: February 16, 2012