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 ("")
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 ("")
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