28

I don't really know much about DirectX other than it is responsible of having better graphic options for games, for example, tessellation and Ambient Occlusion in DX11.

But my question is, why some games (most recent games I've played at least), have the option of choosing DX9 (default) or DX 11 (with advanced options, and obviously with compatible video cards), but there is NO option for DX 10?

Is DX10 a version that never got released? was it defective? or what about it? why those games don't show an option to use DX 10 along DX 9 and 11?

Are there ANY games that show those 3 options? or do they just 'jump' from DX 9 directly to 11? why?

thanks

Lee Taylor
  • 1,466
  • 1
  • 17
  • 22
DiegoDD
  • 1,307
  • 4
  • 19
  • 25
  • It's worth noting that relative deployed market share doesn't appear to be a factor. The most recent (NOV 2012) data from the Steam Hardware survey shows 53% DX11 systems, 32% DX10, and 13% DX9. http://store.steampowered.com/hwsurvey?platform=pc – Dan Is Fiddling By Firelight Dec 16 '12 at 22:09
  • @DanNeely Note that that is a Hardware survey that checks the DX version of the GPU and has little to do with the version of DX actually installed on the PC. For example, most gamers have multiple versions of DX installed on the same computer to play older games. And I think it's perfectly possible to install DX11 on a computer with a DX10 or DX9 GPU. – Nzall Jan 09 '14 at 09:20

2 Answers2

53

This is because Windows XP only supports DirectX 9. DirectX10 was added with Vista, but Vista also got a backport of DirectX11 from Win7 (Platform Update), so Vista/Win7/8 can use DirectX 11 and Windows XP DirectX9. And because providing Dx10 rendering path makes no sense when you can use the better DiretX11, most games only offer those 2 modes.

magicandre1981
  • 97,301
  • 30
  • 179
  • 245
  • Spot on!! And 11.1 is just an extension of 11 isn't it? – pratnala Dec 16 '12 at 06:41
  • yes, it only adds some minor features: http://msdn.microsoft.com/en-us/library/hh404562.aspx. Some features were ported back to Windows 7: http://blogs.msdn.com/b/chuckw/archive/2012/11/14/directx-11-1-and-windows-7.aspx – magicandre1981 Dec 16 '12 at 06:43
  • But didn't they say 11.1 won't come to 7? – pratnala Dec 16 '12 at 08:06
  • 1
    the update only offers some features and not all: The KB 2670838 update adds the following support to Windows 7 Service Pack 1: ID3D11Device1, ID2D1Factory1, IDWriteFactory1, IDXGIFactory2, IWICImagingFactory2, ID3DUserDefinedAnnotation and related APIs are available Improved Direct3D 11 device interoperability via ID3DDeviceContextState, including the improved interop with Direct2D/DirectWrite D3D11_FEATURE_DATA_D3D9_OPTIONS feature detection In addition to the new Windows 8 WIC features, this update also fixes decoding of 96bpp floating-point TIFF images. All other features are W8 only – magicandre1981 Dec 16 '12 at 08:20
  • 3
    The only thing I'd like to add to this is that the Xbox360 is DX9; so if there's an xbox version of the game the DX9 port is basically free. – Dan Is Fiddling By Firelight Dec 16 '12 at 18:13
  • thanks! So, if i get it right, having DX9 support this days, is only because win xp CAN'T support DX11. that is, if XP supported DX11, (or XP was no longer supported itself), DX11 would be expected to be the only option, right? In fact i think that is what will happen over time, when XP won't get support any longer, and the only option for gamers will be to use systems that support DX11 for newer games. – DiegoDD Dec 17 '12 at 19:24
  • correct. When XP is out of support and the new game consoles are released, the games will only support DX11. But the high market share of XP forces the producers to provide XP support with DirectX9. Only big "players" like Battlefield 3 and next year Crysis 3 are able to say you need DirectX 11 hardware and software. – magicandre1981 Dec 18 '12 at 05:00
  • 1
    If I remember correctly, with DirectX 10 and later the display driver provides a list of supported functionality, and DirectX then chooses the rendering path most appropriate for your display device's capabilities. In essence, DirectX 11 would be backwards-compatible with DirectX 10. –  Dec 21 '12 at 18:32
-10

Basically DX10 had a bad design, both in its API and how it would work.

I don't have the details, but DX10 was supposed to be a very big upgrade to the graphic toolchain, because DX9 was getting a little old, mainly because of new graphic cards hardware features, and it was not good enough, add to the fact Vista had its share of problems too. Many things might have piled up as new cards and features got released, so they just released DX11.

Graphic API are complex, because for top-notch graphics, you need to have a software which is adequate to the always changing hardware, which is massively parallel and so on. The quality of a game's graphics will depend on the game programmers, the direct X api guys, and also the nvidia engineers.

Just be thankful it works now !

jokoon
  • 409
  • 3
  • 13