Talk:Direct3D

From Wikipedia, the free encyclopedia
  (Redirected from Talk:Microsoft Direct3D)
Jump to: navigation, search


Feature level table is a mess[edit]

Feature level table is a mess, mostly due optional features entries. First of all, optional features support is not guaranteed for all GPU of a single series (e.g.: GCN 1.0 architecture can support Tiled Resources tier-1, however some mobile cards like 7700M Series do not support tiled resources at all). Moreover, supporting a single optional feature, of a single feature level on a single WDDM, does not guaranteed the support of all optional feature of the same feature level on the same driver model (e.g.: NVIDIA Geforce and AMD Radeon do not support tile-based deferred render, which is a - missing - optional feature of D3D11 WDDM 1.1 and later). This is, optional feature are organized into caps-bits: to ensure the support of a single optional feature, you must query the GPU driver with proper D3D calls (DirectX Caps Viewer in the Windows SDK can also used to obtain a summary of optional feature support with the WDDM associated with the version of the SDK). Optional features entries in the article's table are wrongly associated with hardware (GPUs) and a lot of optional features are missing. (e.g.: tiled deferred render, optional multi-threading features) In brief: optional features entry in the feature level table should be removed. --93.39.101.231 (talk) 21:43, 27 February 2015 (UTC)

The optional features part is actually aligned to GPU hardware column, just like the mandatory features part. It indicates which WDDM version is required for most important optional features which are explicitly mentioned in the Feature Levels article in the MSDN documentation on Direct3D feature levels, and which minimum hardware is expected to support these important optional features, with a full reference to architecture required (GNC 1.0/1.1, Fermi/Kepler/Maxwell/Maxwell-2, and Haswell/Skylake).
If you need detailed documentation on all optional features, including feature query functions and data structures, you have to look up references to MSDN documentation on the Direct3D 11 API. We don't have the resources to compile a feature support matrix for all existing GPUs and WDDM/Windows versions. --37.144.148.145 (talk) 21:05, 28 February 2015 (UTC)

Please do not try to make a matrix for optional features out of this table. The examples of supporting hardware are aligned to the mandatory features of each feature level. If you try to re-align optional features to the supporting hardware, you simply break the mandatory features. --Dmitry (talkcontibs) 08:03, 5 June 2015 (UTC)

This edit [1] broke the table and caused an amateur tech news site to assert that Nvidia 400/500/600/700 series support feature level 11_1 when they don't[2]. --92.242.59.6 (talk) 12:42, 5 June 2015 (UTC)
I have added a separate table for optional hardware features in Direct3D 12 (and 11.3), otherwise there is too much confusion regarding feature levels, "tiers" and "full DX12 support" whatever. --Dmitry (talkcontibs) 09:45, 6 June 2015 (UTC)

Maxwell v2 does not appear to have feature level 11_1 as well but I am unable to confirm however it is listed on the chart, supporting 12_1 doesn't mean you support 11_1. Prefix-NA (talk) 21:41, 11 June 2015 (UTC)

You are not clear enough. Feature levels form strict supersets - supporting a higher level implies supporting all mandatory features of all the lower levels. Also some optional capabilities are promoted to mandatory on higher levels - this mostly applies to levels 10_x, 11_x and 12_x, but not 9_x. --Dmitry (talkcontibs) 08:49, 12 June 2015 (UTC)


I reverted the feature table to a much simpler version, similar to what it looked like on first original creation [3] - detailed feature tables are forked to a separate article, Feature levels in Direct3D. --Dmitry (talkcontibs) 09:24, 13 June 2015 (UTC)

Edit war on "Async shaders"[edit]

Please stop adding marketing information to the technical section on feature levels. We only list features that can be queried by the API and which are part of the defined levels, as documented on MSDN. Internal features of the graphics driver which are not exposed by the API have no relation to the topic. --Dmitry (talkcontibs) 20:13, 11 June 2015 (UTC)


Asyncronous shaders are not based on the API and have a huge relation to the topic you are abusing your authority trying to mislead people, Kepler for example is not even capable of asynchronous compute which is the first step towards syncronous shaders. I am not sure why you are limited features defined by feature levels as feature levels do not list things such as Cross-node sharing which are included in the table. Can you give any evidence of Kepler or Maxwell supporting Asynchronous shaders because it appears there were no changes to Maxwell in this Fermi/Kepler/Maxwell V1 can only use a single graphics queue or their complement of compute queues, but not both at once so they are not even close to hardware requirements for asynchronous shaders. Can you show anywhere where it states Async shaders are a part of the API itself? Everything that was cited to you stated otherwise however you seemed to remove it. Prefix-NA (talk) 21:38, 11 June 2015 (UTC)

"Asynchronous shaders" is a marketing term used by AMD that describes additional discrete logic in their GCN chips to accelerate execution of compute shaders. It has no relation to the optional features exposed by the graphics driver, it's purely internal matter of the graphics driver and the GPU. I removed it from the optional capabilities matrix because it's mostly based on D3D12_FEATURE_DATA_D3D12_OPTIONS structure reported by ID3D12Device::CheckFeatureSupport method, as well as preliminary definition of Direct3D 12 feature levels in MSDN docs and in recent Microsoft presentations.
Direct3D 12 API does have improved capabilities for parallel execution of computing workloads, because it can schedule parallel execution of these three tasks: copy, compute, execute. This is called "Synchronization and Multi-Engine" in the MSDN documentation. However this is a baseline API feature and there are no additional capabilities or tiers that are exposed to the programmer - if parallel execution is possible, it happens transparently to the application and no further programming action is required.
So this doesn't really belong to Direct3D feature levels, but rather to the Direct3D 12 section, List of AMD graphics processing units, List of Nvidia graphics processing units, List of Intel graphics processing units and relevant articles on individual GPU series. --Dmitry (talkcontibs) 08:31, 12 June 2015 (UTC)

Section names[edit]

Nicholas wilt, is there an advantage to calling the sections DirectX x.x rather than Direct3D x.x? This article is about Direct3D, which is admittedly part of DirectX, but I think it is better to be specific. Do the Direct3D version numbers differ from the DirectX version numbers? Sizeofint (talk) 23:06, 5 November 2015 (UTC)

External links modified[edit]

Hello fellow Wikipedians,

I have just modified one external link on Direct3D. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:

When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{Sourcecheck}}).

You may set the |checked=, on this template, to true or failed to let other editors know you reviewed the change. If you find any errors, please use the tools below to fix them or call an editor by setting |needhelp= to your help request.

  • If you have discovered URLs which were erroneously considered dead by the bot, you can report them with this tool.
  • If you found an error with any archives or the URLs themselves, you can fix them with this tool.

If you are unable to use these tools, you may set |needhelp=<your help request> on this template to request help from an experienced user. Please include details about your problem, to help other editors.

Cheers.—InternetArchiveBot (Report bug) 01:41, 14 September 2016 (UTC)

External links modified[edit]

Hello fellow Wikipedians,

I have just modified one external link on Direct3D. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:

When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{Sourcecheck}}).

You may set the |checked=, on this template, to true or failed to let other editors know you reviewed the change. If you find any errors, please use the tools below to fix them or call an editor by setting |needhelp= to your help request.

  • If you have discovered URLs which were erroneously considered dead by the bot, you can report them with this tool.
  • If you found an error with any archives or the URLs themselves, you can fix them with this tool.

If you are unable to use these tools, you may set |needhelp=<your help request> on this template to request help from an experienced user. Please include details about your problem, to help other editors.

Cheers.—InternetArchiveBot (Report bug) 16:14, 13 December 2016 (UTC)