Úrovně funkcí v Direct3D - Feature levels in Direct3D
Úrovně funkcí v Direct3D definujte přísné sady funkcí vyžadovaných určitými verzemi rozhraní API a modulu runtime Direct3D a také další volitelné úrovně funkcí dostupné ve stejné verzi rozhraní API.
Přehled
Úrovně funkcí zapouzdřují funkce specifické pro hardware, které existují nad rámec běžných povinných požadavků a funkcí v konkrétní verzi API. Úrovně jsou seskupeny do vzájemně přísných nadmnožin, takže každá vyšší úroveň zahrnuje všechny funkce požadované na každé nižší úrovni.
Některé úrovně funkcí zahrnují dříve volitelné hardwarové funkce, které jsou povýšeny na povinný stav s novými revizemi rozhraní API, které lépe odhalují novější hardware. Pokročilejší funkce, jako jsou nové modely shaderu a fáze vykreslování, jsou vystaveny pouze na hardwaru vyšší úrovně,[1][2] hardware však není vyžadován, aby podporoval všechny tyto úrovně funkcí[3] a běhový modul Direct3D provede potřebné překlady.
Úrovně funkcí umožňují vývojářům sjednotit vykreslovací kanál a používat jednu verzi API na novějším i starším hardwaru, přičemž využívají výhody vylepšení výkonu a použitelnosti v novějším běhovém prostředí.[4]
Existují oddělené funkce, které označují podporu pro konkrétní operace textury a formáty prostředků; ty jsou obvykle specifikovány pro každý formát textury pomocí kombinace příznaků schopností, ale některé z těchto volitelných funkcí jsou na vyšších úrovních funkcí povýšeny na povinné.[5]
Direct3D 10
Direct3D 10 představil pevnou sadu povinných požadavků na grafický hardware. Před Direct3D 10 zavedly nové verze API podporu pro nové hardwarové funkce, avšak tyto funkce byly volitelné a musely být dotazovány pomocí „capability bits“ nebo „caps“.
Direct3D 10.1 API bylo první, kdo použil koncept „úrovní funkcí“[1][3][6] na podporu hardwaru Direct3D 10.0 i 10.1.[3][7][8]
Direct3D 11
V Direct3D 11 byl koncept úrovní funkcí dále rozšířen, aby fungoval na většině hardwaru nižší úrovně, včetně karet Direct3D 9 s WDDM Řidiči.
Existuje sedm úrovní funkcí poskytovaných D3D_FEATURE_LEVEL
struktura; úrovně 9_1, 9_2 a 9_3 (souhrnně označované jako Direct3D 10 úroveň 9) znovu zapouzdřuje různé funkce populárních karet Direct3D 9 vyhovujících Shader Model 2.0, zatímco úrovně 10_0, 10_1, 11_0 a 11_1 odkazují na příslušné verze rozhraní Direct3D API.[1] Úrovně funkcí „10 úrovně 9“ obsahují podmnožinu API Direct3D 10/11[9] a vyžadují, aby byly napsány shadery HLSL vyhovující Shader Model 4.0 4_0_LEVEL_9_x
profily kompilátoru, a ne ve skutečném "shaderová sestava" Jazyk[10] Shader Model 1.1 / 2.0; SM 3.0 (vs_3_0
/ps_3_0
) byl v Direct3D 10 úrovni 9 záměrně vynechán.[3]
Od verze Direct3D 11.1 pro Windows 8 jsou některé povinné funkce zavedené pro úroveň 11_1 k dispozici jako volitelné na úrovních 10_0, 10_1 a 11_0 - tyto funkce lze jednotlivě zkontrolovat pomocí CheckFeatureSupport
funkce[11] úroveň funkcí 11_1 a volitelné funkce však nejsou k dispozici v Direct3D 11.1 pro Windows 7 aktualizace platformy[12] protože nepodporuje WDDM 1.2.[13]
Direct3D 11.2 pro Windows 8.1 přidává volitelné mapovatelné vyrovnávací paměti a volitelné dlaždice zdroje pro úrovně 11_0 a 11_1; tyto funkce vyžadují ovladače WDDM 1.3.[14]
Direct3D 11.3 pro Windows 10 vyžaduje ovladače WDDM 2.0; přidává další volitelné funkce a úrovně 12_0 a 12_1 z Direct3D 12.
Požadované funkce | Volitelné funkce | GPU podporující jako maximální úroveň funkcí | |||||
---|---|---|---|---|---|---|---|
Úroveň funkcí | Direct3D runtime | Model řidiče | Funkce | Direct3D runtime | Model řidiče | Funkce | |
9_1 | 11.0 | WDDM 1.0 | Shader Model 2.0 (vs_2_0 /ps_2_0 ), 2K textury, objemové textury, dotazy na události, BC1-3 (aka DXTn), několik dalších specifických funkcí. | N / A | Nvidia GeForce FX; Intel GMA 950/3000 (945G / 965G chipset); Tegra 3, Tegra 4 | ||
9_2 | Okluzní dotazy, formáty s plovoucí desetinnou čárkou (bez míchání), rozšířené čepice, všechny funkce 9_1. | ATI Radeon 9800/9700/9600/9500 | |||||
9_3 | vs_2_a /ps_2_x s instancí a dalšími shadery, texturami v rozlišení 4K, několika cíli vykreslení (4 MRT), mícháním s plovoucí desetinnou čárkou (omezeně), všemi funkcemi 9_2. | ATI Radeon X800 / X700, X1900 / X1800 / X1600 / X1300; Nvidia GeForce 6, Řada 7; Adreno Řada 220/300; Mali-T 6xx / 720/820/830,[15] Mali-G51; Matrox Řada M; Vivante Řada GC2000 a dále[16] | |||||
10_0 | 10.0 | Shader Model 4.0, shader geometrie, stream out, alpha-to-coverage, 8K textury, MSAA textury, oboustranný vzorník, obecné pohledy na vykreslení cíle, pole textury, BC4 / BC5, plná podpora formátu s plovoucí desetinnou čárkou, všechny funkce 9_3. | ATI Radeon HD2000 série; Nvidia GeForce 8 /9 /GTX 200 série; Intel GMA X3100-X4500 (Čipová sada GM965 / G35 / G45) | ||||
10_1 | 10.1 | Shader Model 4.1, pole cubemap, rozšířená MSAA, všechny funkce 10_0. | ATI Radeon HD 3000 /4000 série; Nvidia GT 205-240 /GT 300 série; Grafika Intel HD (Arrandale /Clarkdale CPU), Grafika Intel HD 3000/2000 (Sandy Bridge ) | ||||
11_0 | 11.0 | WDDM 1.1 | Shader Model 5.0, shadery trupu a domény, DirectCompute (CS 5.0), 16K textury, BC6H / BC7, rozšířené formáty pixelů, všech 10_1 funkcí. | 11.1 | WDDM 1.2[11] | 10_x: DirectCompute (CS 4.0 / CS 4.1), rozšířené pixelové formáty, operace logického míchání. 11_0: Pouze vykreslování UAV s počtem vzorků síly, konstantní vyrovnání vyrovnávací paměti a částečné aktualizace, operace s plovoucí desetinnou čárkou s dvojitou přesností (64 bitů), minimální přesnost s pohyblivou řádovou čárkou (10 nebo 16 bitů). | AMD Radeon HD 5000 /6000 /7300-7600 /8300-8400, R5 210-235 série (Terascale 2 ), HD 6900 (Terascale 3 ); Nvidia GeForce GTX 400 /500 série (Fermi ); |
11.2 | WDDM 1.3 | 11_x: Kachlové zdroje (dvě úrovně), min / max filtrování | Nvidia GeForce GTX 600 /700 / Série Titan (Kepler ), GTX 745/750 série (Maxwell, 1. gen ) | ||||
11_1 | 11.1 | WDDM 1.2 | Logické operace míchání, rasterizace nezávislá na cíli, UAV v každé fázi potrubí se zvýšeným počtem slotů, pouze UAV vykreslování s počtem vzorků síly, konstantní posunutí vyrovnávací paměti a částečné aktualizace, vše 11_0. | 11.3 | WDDM 2.0 | 11_x / 12_x: Konzervativní rasterizace (tři úrovně),[17] dlážděné zdroje (čtyři úrovně), referenční hodnota vzorníku z Pixel Shader, rastrovaná zobrazení seřazená, načtená načítání UAV pro další formáty, UMA / hUMA Podpěra, podpora[18] | Mali-T 760/860/880, Mali-G71 / 72; Adreno Řada 400; AMD HD 7700-7900 /8500-8900, Rx 240/250/265/270/280, Rx 330/340/350/370, R5 / R7 400 série (GCN1 ); |
12_0 | 11.3 | WDDM 2.0 | Kachlová zdroje úrovně 2 (Texture2D), typizované zatížení UAV (další formáty). | AMD HD 7790 /8770, Rx 260/290, Rx 360/390, R7 455 série, Xbox One (GCN2 ), R9 285/380, řada Fury / Nano (GCN3), RX 460-480, Řada RX 500 (GCN4) | |||
12_1 | Konzervativní rastrování na úrovni 1, objednané pohledy na raster. | Adreno Řada 500/600; Nvidia GeForce 900 / Série Titan (Maxwell, 2. gen );[19][20][21][22][23] GeForce 10 série (Pascal ), GeForce 20 série (Turing ); | |||||
Úroveň funkcí | Direct3D runtime | Model řidiče | Funkce | Direct3D runtime | Model řidiče | Funkce | GPU podporující jako maximální úroveň funkcí |
Požadované funkce | Volitelné funkce |
Direct3D 12
Direct3D 12 vyžaduje grafický hardware vyhovující úrovním funkcí 11_0 a 11_1, které podporují překlady adres virtuální paměti.[25][26]
K dispozici jsou dvě nové úrovně funkcí, 12_0 a 12_1, které obsahují některé funkce, které jsou volitelné na úrovních 11_0 a 11_1.[27] Z důvodu restrukturalizace API jsou některé dříve volitelné funkce srovnány jako základní úroveň na úrovních 11_0 a 11_1.
Direct3D 12 z aktualizace Windows 10 Anniversary (verze 1607) obsahuje Shader Model 6.0,[28] který vyžaduje ovladače WDDM 2.1 a nový kompilátor DXIL založený na LLVM a SPIR-V.[29] Windows 10 Creators Update verze 1703 a 1709 zahrnují Shader Model 6.1 a WDDM 2.2 / 2.3.
Shader Model 6+ je k dispozici pouze pro zařízení úrovně 12.
Úroveň | Model řidiče | Požadované funkce | Volitelné funkce | GPU podporující jako maximální úroveň funkcí |
---|---|---|---|---|
11_0 | WDDM 2.0 | Všechny povinné funkce 11_0 z Direct3D 11, Shader Model 5.1, Resource binding Tier 1. UAV v každé fázi potrubí, pouze UAV vykreslování s počtem vzorků síly, neustálým vyrovnáváním vyrovnávací paměti a částečnými aktualizacemi. | Vazba zdrojů (tři úrovně), kachlová zdroje (čtyři úrovně), konzervativní rasterizace (tři úrovně), referenční hodnota šablony od Pixel Shader, rastrovaná zobrazení, zadané načítání UAV pro další formáty, UMA / hUMA podpora, zobrazení instancingu. Logické operace míchání, operace s plovoucí desetinnou čárkou s dvojitou přesností (64 bitů), minimální přesnost s plovoucí desetinnou čárkou (10 nebo 16 bitů). Shader Model 6.0-6.6 Metacommands, variabilní rychlost stínování, raytracing, shadery mesh, zpětná vazba vzorkovače. Další volitelné funkce definované strukturami D3D_FEATURE.[30] | Nvidia GeForce GTX 400 /500 série (Fermi ), GeForce GTX 600 /700 / Série Titan (Kepler ), GTX 745/750 série (Maxwell, 1. gen ) |
11_1 | Logické operace míchání, rasterizace nezávislá na cíli, zvýšený počet slotů UAV. | Mali-G 71/72; AMD HD 7700-7900 /8500-8900, Rx 240/250/265/270/280, Rx 330/340/350/370, R5 / R7 400 série (GCN1 ); | ||
12_0 | WDDM 2.0 | Vazba zdrojů na úrovni 2, kachlová zdroje na úrovni 2 (Texture2D), zadané zatížení UAV (další formáty) | AMD HD 7790 /8770, Rx 260/290, Rx 360/390, R7 455 série, Xbox One (GCN2 ), R9 285/380, řada Fury / Nano (GCN3), RX 460-480, Řada RX 500 (GCN4) | |
WDDM 2.1 | Shader Model 6.0, DXIL | |||
12_1 | Nvidia GeForce 900 / Série Titan (Maxwell, 2. gen ), Řada GeForce 10 (Pascal ), Řada GeForce 16 (Turing ) AMD Řada RX Vega (GCN5), Řada Radeon RX 5000 (RDNA ); | |||
WDDM 2.0 | Konzervativní rastrování na úrovni 1, objednané pohledy na raster. | |||
12_2 | WDDM 2.9 | DirectX 12 Ultimate: Shader Model 6.5, Raytracing Tier 1.1, Mesh Shaders, Variable-Rate Shading, Sampler Feedback, Resource Binding Tier 3, Tiled Resources Tier 3 (Texture3D), Conservative Rasterization Tier 3, 40-bit virtual address space.[31][32] | NVidia Řada GeForce 20 (Turing ), Řada GeForce 30 (Ampér ); AMD Řada Radeon RX 6000 (RDNA2 ) | |
CORE_1_0 | MCDM[33] | Zařízení pouze pro výpočet: Resource Binding Tier 1 (with restrictions), Shader Model 6.0, DXIL, Compute Shaders only[33] | Shader Model 6.0-6.6, metapríkazy. | ? |
Direct3D 12 zavádí vylepšený model vazby prostředků, který umožňuje explicitní ovládání paměti. Objekty typu „zobrazit“ abstraktní zdroje[34] které umožňovaly náhodný přístup ke čtení / zápisu, jsou nyní reprezentovány deskriptory zdrojů, které jsou alokovány pomocí hromád paměti a tabulek.[35] Tento model je podporován na většině stávajících architektur grafických karet pro stolní počítače a vyžaduje ovladače WDDM 2.0. Podporovaný hardware je rozdělen do tří úrovní vazeb zdrojů, které definují maximální počet deskriptorů, které lze použít pro CBV (zobrazení konstantní vyrovnávací paměti), SRV (zobrazení zdroje shaderu) a UAV (zobrazení neuspořádaného přístupu); CBV a SRV na fázi potrubí; UAV pro všechny fáze potrubí; vzorkovače na fázi; a počet tabulek deskriptorů SRV. Hardware 3. úrovně, jako je AMD GCN a Intel Skylake, nemá žádná omezení, což umožňuje plně bezvázané zdroje omezené pouze velikostí haldy deskriptorů, zatímco úroveň 1 (Nvidia Fermi, Intel Haswell / Broadwell) a úroveň 2 (Nvidia Kepler / Maxwell) hardware ukládá určitá omezení počtu deskriptorů („zobrazení“), které lze použít současně. Kromě toho mohou být vyrovnávací paměti a textury smíchány společně ve stejné hromadě prostředků pouze na hardwaru podporujícím hromadu prostředků Hier 2, zatímco hardware úrovně 1 vyžaduje samostatné hromady paměti pro vyrovnávací paměti, textury a povrchy vykreslovacího cíle a hloubky šablony. Úroveň vazby prostředků 1 a vrstva haldy prostředků 1 jsou vyžadovány pro veškerý podpůrný hardware.
Omezení zdrojů | Úroveň 1 | Úroveň 2 | Úroveň 3 |
---|---|---|---|
Deskriptory v hromadě CBV / SRV / UAV | 1M | > 1 mil | |
CBV na fázi shaderu | 14 | plná hromada | |
SRV na fázi shaderu | 128 | plná hromada | |
UAV ve všech fázích | 8 | 64 | plná hromada |
64† | |||
Vzorkovače na fázi shaderu | 16 | plná hromada | |
Je vyžadována úroveň funkcí | 11_0 | 11_1 | |
Neobsazené položky podpisu root | Ne | Pouze SRV hromady | všechny hromady |
† 64 slotů na hardwarové úrovni 11_1 a CORE_1_0 |
Některé z volitelných funkcí, jako jsou dlaždice a konzervativní rasterizace, mají „vrstvy“, které definují sadu podporovaných funkcí.
Schopnost | Úroveň 1 | Úroveň 2 | Úroveň 3 | Úroveň 4 |
---|---|---|---|---|
Kachlová vyrovnávací paměť | Ano | |||
Kachlová Textura2D | Ano | |||
Vzorek se svorkou LOD | Ne | Ano | ||
Ukázka se zpětnou vazbou | Ne | Ano | ||
Čtení dlaždice NULL | nedefinováno | nula | ||
NULL zápis na dlaždice | nedefinováno | zlikvidován | ||
Kachlová textury3D | Ne | Ano | ||
Dědičnost texturových dlaždic[36] | Ne | Ano |
Schopnost | Úroveň 1 | Úroveň 2 | Úroveň 3 |
---|---|---|---|
Požadovaná oblast nejistoty | 1/2 px | 1/256 px | |
Post-snap degenerované trojúhelníky | Ne | Není vyřazeno | |
Vnitřní vstupní pokrytí | Ne | Ano |
Většina funkcí je volitelná pro všechny úrovně funkcí, ale některé z těchto funkcí jsou na vyšších úrovních funkcí povýšeny na povinné.
Matice podpory
Vlastnosti | Microsoft | AMD Radeon | Nvidia GeForce | Grafika Intel HD | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
název | Úrovně | VÁLKA12 | GCN 1 | GCN 2 / GCN 3 / GCN 4 | GCN 5 / RDNA | RDNA 2 | Fermi | Kepler | Maxwell (1. gen.) | Maxwell (2. gen.) | Pascal | Volta | Turing Série 16 | Turing Série 20 / Ampér | Haswell (7,5 gen.) | Broadwell (8 gen) | Skylake (9 gen) / Kaby Lake (9,5 gen) | Ledové jezero (11 gen) | Tygří jezero (12 gen.) |
Maximální úroveň funkcí | 12_1 | 11_1 | 12_0 | 12_1 | 12_2 | 11_0 | 12_1 | 12_2 | 11_1 | 12_1 | |||||||||
Vazba zdrojů[37] | 3 | Úroveň 3 | Úroveň 3 | Úroveň 1 | Úroveň 2 | Úroveň 3 | Úroveň 1 | Úroveň 3 | |||||||||||
Kachlová zdroje[38][39] | 4 | Úroveň 3 | Úroveň 1 | Úroveň 2 | Úroveň 3 | Úroveň 4 | Úroveň 1 | Úroveň 3 | Ne | Úroveň 1 | Úroveň 3 | ||||||||
Načtené UAV načtení pro další formáty[40] | Ano | Ano | Ne | Ano | Ne | Ano | |||||||||||||
Konzervativní rasterizace[41] | 3 | Úroveň 3 | Ne | Úroveň 3 | Ne | Úroveň 1 | Úroveň 2 | Úroveň 3 | Ne | Úroveň 3 | |||||||||
Zobrazení uspořádaná v rastru[42] | Ano | Ne | Ano | Ne | Ano | Ano | |||||||||||||
Referenční hodnota šablony od Pixel Shader[43] | Ano | Ano | Ne | Ne | Ano | ||||||||||||||
UAV sloty pro všechny fáze[44] | plná hromada | plná hromada | 8 | 64 | plná hromada | 64 | plná hromada | ||||||||||||
Logické operace míchání[45][46] | Ano | Ano | Ano | Ano | |||||||||||||||
Operace s plovoucí desetinnou čárkou s dvojitou přesností (64 bitů)[47][48] | Ano | Ano | Ano | Ano | |||||||||||||||
Minimální přesnost s plovoucí desetinnou čárkou[46][49] | 10 nebo 16 bitů | 32bitová podpora „v důchodu“ v ovladačích GCN3-4 | 16 bitů | 32 bitů | 16 bitů | 32 bitů | 16 bitů | ||||||||||||
Halda zdrojů[50] | 2 | Úroveň 2 | Úroveň 2 | Úroveň 1 | Úroveň 2 | Úroveň 2 | |||||||||||||
Virtuální adresování podle zdrojů[51] | 32 bitů | 40 bitů | 44 bitů | 40 bitů | 31 bitů | 38 bitů | |||||||||||||
Virtuální adresování za proces[51] | 47 bitů | 40 bitů | 44 bitů | 40 bitů | 31 bitů | 48 bitů | |||||||||||||
Zobrazit instancing[52][53] | 3 | Úroveň 1 | Úroveň 1 | Úroveň 1 | Úroveň 2 | Úroveň 3 | Úroveň 1 | ||||||||||||
Raytracing[54] | 2 | Ne | Ne | Úroveň 1.1 | Ne | Úroveň 1 | Úroveň 1.1 | Ne | |||||||||||
Stínování s proměnnou rychlostí[55] | 2 | Úroveň 1 | Ne | Úroveň 2 | Ne | Úroveň 2 | Ne | Úroveň 1 | |||||||||||
Pletivo shadery[56] | 1 | Ne | Ne | Úroveň 1 | Ne | Úroveň 1 | Ne | ||||||||||||
Sampler zpětná vazba[57] | 2 | Ne | Ne | Úroveň 1 | Ne | Úroveň 0.9 | Ne | Úroveň 0.9 |
Viz také
Reference
- ^ A b C „Direct3D 11 na hardwaru nižší úrovně“. MSDN. Citováno 2012-11-18.
- ^ „Windows Driver Kit - Supporting Direct3D 11“. MSDN. Citováno 2009-06-13.
- ^ A b C d Chuck Walbourn (20. června 2012). „Úrovně funkcí Direct3D“. Hry pro Windows a blog DirectX SDK.
- ^ „Prezentace Gamefest 2008“. Microsoft. Archivovány od originál dne 2013-11-13.
- ^ "Úrovně funkcí Direct3D". MSDN. Citováno 2012-07-02.
- ^ „GameFest 2008: Úvod do grafického kanálu Direct3D 11“. Microsoft. Snímek 56. Archivovány z originál dne 28.01.2013.
- ^ „D3D10_FEATURE_LEVEL1 výčet“. MSDN. Citováno 2009-11-22.
- ^ "Úrovně funkcí Direct3D". MSDN. Citováno 30. září 2014.
- ^ „10Level9 reference“. MSDN. Citováno 2012-11-18.
- ^ MSDN - DirectX and Gaming - Asm Shader Reference
- ^ A b https://msdn.microsoft.com/en-us/library/windows/desktop/hh404562#check_support_of_new_direct3d_11.1_features_and_formats
- ^ „Blogy MSDN“. Citováno 30. září 2014.
- ^ https://msdn.microsoft.com/en-us/library/windows/desktop/jj863687.aspx
- ^ Bennett Sorbo (26. června 2013). „Co je nového v Direct3D 11.2“. Channel9 - STAVĚT 2013.
- ^ „Samsung oznamuje Exynos 5 Dual na bázi A15 / Mali-T604“. AnandTech. Citováno 2013-06-15.
- ^ „Vivante Vega Cores for 3D“. Vivante. Archivovány od originál dne 2015-02-15. Citováno 2014-12-10.
- ^ „Výčet D3D11_CONSERVATIVE_RASTERIZATION_TIER“. Knihovna MSDN. 22. února 2015. Citováno 22. února 2015.
- ^ „Funkce Direct3D 11.3“. Knihovna MSDN. 28. března 2015. Citováno 28. března 2015.
- ^ Ryan Smith. „AnandTech - recenze NVIDIA GeForce GTX 980: Maxwell Mark 2“. Citováno 30. září 2014.
Mezi hlavní funkce Maxwell 2 patří především zahrnutí plné kompatibility Direct3D 11.2 / 11.3.
- ^ Ryan Smith. „AnandTech - Microsoft Details Direct3D 11.3 & 12 New Rendering Features“. Citováno 30. září 2014.
- ^ „Maxwell a DX12 dodány“. NVIDIA. Citováno 30. září 2014.
- ^ „Blogy MSDN“. Citováno 30. září 2014.
- ^ http://devblogs.nvidia.com/parallelforall/maxwell-most-advanced-cuda-gpu-ever-made/
- ^ „Intel Skylake: Core i7-6700K und i5-6600K im Test“. HARDWARE PRO PC HRY ONLINE. 5. srpna 2015. Citováno 5. srpna 2015.
- ^ GVCS005 - Microsoft Direct3D 12: Nové podrobnosti API a optimalizace Intel Archivováno 4. dubna 2015, v Wayback Machine
- ^ Build 2015: Pokročilá grafika a výkon DirectX12
- ^ https://msdn.microsoft.com/en-us/library/dn899127.aspx
- ^ https://msdn.microsoft.com/en-us/library/mt733232(v=vs.85).aspx
- ^ https://github.com/Microsoft/DirectXShaderCompiler/wiki/FAQ
- ^ https://docs.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_feature
- ^ https://devblogs.microsoft.com/directx/new-in-directx-feature-level-12_2/
- ^ https://microsoft.github.io/DirectX-Specs/d3d/D3D12_FeatureLevel12_2.html
- ^ A b https://docs.microsoft.com/en-us/windows/win32/direct3d12/core-feature-levels
- ^ https://msdn.microsoft.com/en-us/library/windows/desktop/ff476900(v=vs.85).aspx
- ^ Wolfgang Engel. „Úvod do vazby prostředků v Microsoft DirectX 12“.
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/memory-aliasing-and-data-inheritance#data-inheritance
- ^ stevewhims. „Hromada deskriptorů - aplikace pro Windows“. docs.microsoft.com. Citováno 2019-09-08.
- ^ https://docs.microsoft.com/en-us/windows/desktop/api/D3D12/ne-d3d12-d3d12_tiled_resources_tier
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/volume-tiled-resources
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/typed-unordered-access-view-loads
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/conservative-rasterization
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/rasterizer-order-views
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/shader-specified-stencil-reference-value
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d12/descriptor-heaps
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d11/direct3d-11-1-features#use-logical-operations-in-a-render-target
- ^ A b https://docs.microsoft.com/en-us/windows/desktop/direct3d12/capability-querying
- ^ https://docs.microsoft.com/en-us/windows/desktop/api/d3d11/ns-d3d11-d3d11_feature_data_doubles
- ^ https://docs.microsoft.com/en-us/windows-hardware/drivers/display/directx-feature-improvements-in-windows-8#dblshader
- ^ https://docs.microsoft.com/en-us/windows/desktop/direct3d11/direct3d-11-1-features#use-hlsl-minimum-precision
- ^ windows-sdk-content. „D3D12_RESOURCE_HEAP_TIER (d3d12.h)“. docs.microsoft.com. Citováno 2019-09-08.
- ^ A b https://docs.microsoft.com/en-us/windows/desktop/api/d3d12/ns-d3d12-d3d12_feature_data_gpu_virtual_address_support
- ^ https://docs.microsoft.com/en-us/windows/desktop/api/d3d12/ne-d3d12-d3d12_view_instancing_tier
- ^ https://docs.microsoft.com/en-us/windows/desktop/api/d3d12/ns-d3d12-d3d12_view_instancing_desc
- ^ obsah Windows-SDK. „D3D12_RAYTRACING_TIER (d3d12.h)“. docs.microsoft.com. Citováno 2019-09-08.
- ^ stevewhims. "Variabilní rychlost stínování (VRS) - aplikace Windows". docs.microsoft.com. Citováno 2019-09-08.
- ^ https://microsoft.github.io/DirectX-Specs/d3d/MeshShader.html
- ^ https://microsoft.github.io/DirectX-Specs/d3d/SamplerFeedback.html