Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Direct3D
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Direct3D 12 levels=== Direct3D 12 for Windows 10 requires graphics hardware conforming to feature levels 11_0 and 11_1 which support virtual memory address translations and requires WDDM 2.0 drivers. There are two new feature levels, 12_0 and 12_1, which include some new features exposed by Direct3D 12 that are optional on levels 11_0 and 11_1.<ref>{{Cite web|url=https://learn.microsoft.com/en-us/windows/win32/direct3d12/hardware-support|title=Hardware Tiers - Win32 apps|website=learn.microsoft.com|date=December 30, 2021 |accessdate=December 21, 2022}}</ref> Some previously optional features are realigned as baseline on levels 11_0 and 11_1. Shader Model 6.0 has been released with Windows 10 Creators Update and requires Windows 10 Anniversary Update, WDDM 2.1 drivers. {| class="wikitable" style="font-size: 90%" |+ Direct3D 12 feature levels |- ! Level !!style="width:50%;"|Mandatory features !! Optional features |- | rowspan="2"|'''11_0''' | All mandatory 11_0 features from Direct3D 11, Shader Model 5.1, Resource binding Tier 1. | rowspan="6"| Logical blend operations, double precision (64-bit) floating point operations, minimum floating point precision (10- or 16-bit). Resource binding (three tiers), tiled resources (four tiers), conservative rasterization (three tiers), stencil reference value from Pixel Shader, rasterizer ordered views, typed UAV loads for additional formats, view instancing. Shader Model 6.0β6.7 Metacommands, variable shading rate, raytracing, mesh shaders, sampler feedback. Other optional features.<ref>{{Cite web|url=https://docs.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_feature|title = D3D12_FEATURE - Win32 apps| date=February 14, 2023 }}</ref> |- |style="border-bottom-style:hidden"| UAVs at every pipeline stage, UAV only rendering with force sample count, constant buffer offsetting and partial updates. |- | '''11_1''' | style="border-top-style:hidden"| Logical blend operations, target-independent rasterization, increased UAV slot count. |- | '''12_0''' | Resource Binding Tier 2, Tiled Resources Tier 2 (Texture2D), Typed UAV Loads (additional formats), Shader Model 6.0. |- | '''12_1''' | Conservative Rasterization Tier 1, Rasterizer Ordered Views. |- | '''12_2''' | ''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. |} Direct3D 12 introduces a revamped resource binding model which allows explicit control of memory. Abstract "resource view" objects<ref>{{Cite web|url=https://msdn.microsoft.com/en-us/library/windows/desktop/ff476900(v=vs.85).aspx|title = Introduction to a Resource in Direct3D 11 - Win32 apps| date=October 6, 2021 }}</ref> are now represented with resource descriptors, which are allocated using memory heaps and tables.<ref name="engel">{{cite web |url=https://software.intel.com/en-us/articles/introduction-to-resource-binding-in-microsoft-directx-12 |author=[[Wolfgang Engel]] |title=Introduction to Resource Binding in Microsoft DirectX 12}}</ref> Resource Binding tiers define maximum number of resources that can be addressed using CBV (constant buffer view), SRV (shader resource view) and UAV (unordered access view), as well as texture sampler units. Tier 3 hardware allows fully bindless resources only restricted by the size of the descriptor heap, while Tier 1 and Tier 2 hardware impose some limits on the number of descriptors ("views") that can be used simultaneously.<ref>[https://intel.lanyonevents.com/sf14/connect/sessionDetail.ww?SESSION_ID=1315 GVCS005 - Microsoft Direct3D 12: New API Details and Intel Optimizations] {{webarchive |url=https://web.archive.org/web/20150404102336/https://intel.lanyonevents.com/sf14/connect/sessionDetail.ww?SESSION_ID=1315 |date=April 4, 2015 }}</ref><ref name= "Build2015_McMullen">{{Cite web|url=https://learn.microsoft.com/en-us/shows/|title=Shows|website=learn.microsoft.com|accessdate=December 21, 2022}}</ref> {| class="wikitable" style="font-size: 90%" |+ Resource binding tiers |- ! Resource limits !! Tier 1 !! Tier 2 !! Tier 3 |- | Descriptors in CBV/SRV/UAV heap ||1M||1M||'''>1M''' |- | CBVs per shader stage||14||14||'''full heap''' |- | SRVs per shader stage||128||colspan="2"| '''full heap''' |- | UAVs across all stages||8, 64<sup>β </sup> ||64||'''full heap''' |- | Samplers per shader stage||16||colspan="2"| '''full heap''' |- |colspan=4|<sup>β </sup> 64 slots on feature level 11_1 hardware |}
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Direct3D
(section)
Add topic