--- /dev/null
+D3D12
+=====
+
+Overview
+--------
+
+The D3D12 driver is a Gallium driver that emits API calls for Microsoft's
+:abbr:`D3D12 (Direct3D 12)` API instead of targeting a specific GPU
+architecture. This can be used to get full desktop OpenGL 3.3 support on
+devices that only support D3D12.
+
+Debugging
+---------
+
+There's a few tools that are useful for debugging D3D12, such as these
+environment variables:
+
+.. envvar:: D3D12_DEBUG <flags> ("")
+
+``verbose``
+ Enable verbose output to stdout
+``blit``
+ Trace blit and copy resource calls
+``experimental``
+ Enable experimental shader models feature
+``dxil``
+ Dump DXIL during program compile
+``disass``
+ Dump disassambly of created DXIL shader
+``res``
+ Debug resources
+``debuglayer``
+ Enable `debug layer`_
+``gpuvalidator``
+ Enable `GPU validator`_
+
+.. envvar:: DXIL_DEBUG <flags> ("")
+
+``verbose``
+ Enable verbose output to stdout
+``dump_blob``
+ Write shader blobs
+``trace``
+ Trace instruction conversion
+``dump_module``
+ dump module tree to stderr
+
+.. _debug layer: https://docs.microsoft.com/en-us/windows/win32/direct3d12/understanding-the-d3d12-debug-layer
+.. _GPU validator: https://docs.microsoft.com/en-us/windows/win32/direct3d12/using-d3d12-debug-layer-gpu-based-validation