A points that might require some more work: * According to Microsoft docs, NaN values are automatically mapped to zero. I can't quickly find any hint in the Vulkan specs of how NaN values are supposed to be handled, so I would assume that nothing is enforced and we should do the mapping ourselves. * Vulkan extension `VK_EXT_depth_range_unrestricted` should be detected and enabled to set the bounds freely. * Conversely, availability of this feature should be advertised with `DepthBoundsTestSupported` in `D3D12_FEATURE_DATA_D3D12_OPTIONS2`.