Present overhead improvements
Starting with Windows 8.1, the Microsoft Direct3D runtime handles internal swap buffers more efficiently, reducing the processing load on the GPU. To support this better performance, Windows Display Driver Model (WDDM) 1.3 and later drivers must support a new present device driver interface (DDI) and new texture formats as shared surfaces:
WDDM 1.3 present DDI
These reference topics describe how to implement this capability in your display miniport driver and user-mode display driver:
- pfnPresent1(D3D)
- pfnPresent1(DXGI)
- D3DDDIARG_PRESENT1
- D3DDDIARG_PRESENTSURFACE
- D3DKMT_COMPOSITION_PRESENTHISTORYTOKEN
- DXGI_DDI_ARG_PRESENT1
- DXGI_DDI_ARG_PRESENTSURFACE
- D3DDDI_DEVICEFUNCS (new pfnPresent1 function pointer)
- D3DDDIFORMAT (new D3DDDIFMT_G8R8 and D3DDDIFMT_R8 constant values)
- D3DKMT_PRESENT_MODEL (new D3DKMT_PM_REDIRECTED_COMPOSITION constant value)
- D3DKMT_PRESENTHISTORYTOKEN (new Composition member)
- DXGI_DDI_BASE_ARGS (new pDXGIDDIBaseFunctions4 member)
- DXGI1_3_DDI_BASE_FUNCTIONS (new pfnPresent1 function pointer)
Texture format support for shared surfaces
Drivers should support both sharing resources and shareable backbuffers for these additional texture formats from the DXGI_FORMAT enumeration:
- DXGI_FORMAT_A8_UNORM
- DXGI_FORMAT_R8_UNORM
- DXGI_FORMAT_R8G8_UNORM
- DXGI_FORMAT_BC1_TYPELESS\*
- DXGI_FORMAT_BC1_UNORM
- DXGI_FORMAT_BC1_UNORM_SRGB
- DXGI_FORMAT_BC2_TYPELESS\*
- DXGI_FORMAT_BC2_UNORM
- DXGI_FORMAT_BC2_UNORM_SRGB
- DXGI_FORMAT_BC3_TYPELESS\*
- DXGI_FORMAT_BC3_UNORM
- DXGI_FORMAT_BC3_UNORM_SRGB
In addition, drivers should support the DXGI_FORMAT_L8_UNORM placeholder format if they support Microsoft Direct3DÂ 11 and later on Direct3D feature level 9 hardware. DXGI_FORMAT_L8_UNORM is functionally equivalent to the D3DDDIFMT_L8 format.
Drivers should also support additional texture formats from the D3DDDIFORMAT enumeration:
- D3DDDIFMT_G8R8
- D3DDDIFMT_R8
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for