DirectX Graphics Infrastructure

{{Short description|User-mode component of Microsoft Windows}}

{{outdated|date=August 2014}}

DirectX Graphics Infrastructure (DXGI){{cite web|url=https://docs.microsoft.com/en-us/windows/win32/direct3ddxgi/d3d10-graphics-programming-guide-dxgi|title=DXGI Overview|publisher=Microsoft|work=MSDN|date=20 August 2021 }} is a user-mode component of Microsoft Windows (for Windows Vista and above) which provides a mapping between particular graphics APIs such as Direct3D 10.0 and above (known in DXGI parlance as producers) and the graphics kernel, which in turn interfaces with the user-mode Windows Display Driver Model driver. DXGI provides objects to handle tasks such as enumerating graphics adapters and monitors, enumerating display modes, choosing buffer formats, sharing resources between processes (such as between applications and the Desktop Window Manager), and presenting rendered frames to a window or monitor for display.

Both Direct3D 10 and OpenGL applications in Windows Vista work through DXGI.

Windows 8 introduced a notably useful DXGI-based API called Desktop Duplication API for hardware accelerated video capture using DirectX. [https://learn.microsoft.com/en-us/windows-hardware/drivers/display/desktop-duplication-api Desktop duplication API]

DXGI 1.1 added surface sharing between the various Windows graphics API.{{cite web|url=https://docs.microsoft.com/en-us/windows/win32/direct3darticles/surface-sharing-between-windows-graphics-apis|title=Surface Sharing Between Windows Graphics APIs|publisher=Microsoft|work=MSDN|date=24 May 2021 }} The newest version is DXGI 1.6, introduced with Windows 10 Creators Update and updated with Windows 10 Fall Creators Update.{{cite web|url=https://docs.microsoft.com/en-us/windows/win32/direct3ddxgi/dxgi-1-6-improvements|title=DXGI 1.6 Improvements|publisher=Microsoft|work=MSDN|date=6 January 2021 }}

DXGI 2 preview was released alongside the Oculus Rift SDK, containing improvements for stereoscopic rendering.{{Citation needed|reason=Seemingly no mention of DXGI 2 on the internet? It exists, but there's no mention of it outside of error codes provided by users|date=September 2024}}

See also

References

{{reflist}}