1D3D12 2===== 3 4Overview 5-------- 6 7The D3D12 driver is a Gallium driver that emits API calls for Microsoft's 8:abbr:`D3D12 (Direct3D 12)` API instead of targeting a specific GPU 9architecture. This can be used to get full desktop OpenGL 3.3 support on 10devices that only support D3D12. 11 12Debugging 13--------- 14 15There's a few tools that are useful for debugging D3D12, such as these 16environment variables: 17 18.. envvar:: D3D12_DEBUG <flags> ("") 19 20``verbose`` 21 Enable verbose output to stdout 22``blit`` 23 Trace blit and copy resource calls 24``experimental`` 25 Enable experimental shader models feature 26``dxil`` 27 Dump DXIL during program compile 28``disass`` 29 Dump disassambly of created DXIL shader 30``res`` 31 Debug resources 32``debuglayer`` 33 Enable `debug layer`_ 34``gpuvalidator`` 35 Enable `GPU validator`_ 36 37.. envvar:: DXIL_DEBUG <flags> ("") 38 39``verbose`` 40 Enable verbose output to stdout 41``dump_blob`` 42 Write shader blobs 43``trace`` 44 Trace instruction conversion 45``dump_module`` 46 dump module tree to stderr 47 48.. _debug layer: https://docs.microsoft.com/en-us/windows/win32/direct3d12/understanding-the-d3d12-debug-layer 49.. _GPU validator: https://docs.microsoft.com/en-us/windows/win32/direct3d12/using-d3d12-debug-layer-gpu-based-validation 50 51Utilities 52--------- 53 54Environment variables that control the behavior of the D3D12 driver. 55 56.. envvar:: MESA_D3D12_DEFAULT_ADAPTER_NAME <string> ("") 57 58Specifies a substring to search for when chosing a default adapter to run on. 59The first adapter matching the substring is chosen. The substring is not 60case sensitive. 61 62