Skip to content

dzn: Properly support format mutability

Boris Brezillon requested to merge bbrezillon/mesa:dzn-fmt-casting into main

There's basically 3 levels of format casting in D3D12:

  • using _TYPELESS formats allows one to create views with formats that belong to the same D3D12 compatibility group. Unfortunately, doesn't quite match what Vulkan wants (compat list is much more restrictive). Another issue with this solution is that D3D12 drivers can't optimize things when their asked to create a resource with a typeless format.
  • the CastingFullyTypedFormatSupported feature addresses the optimization issue, but still doesn't provide the compatibility level Vulkan expects
  • RelaxedFormatCastingSupported does exactly what we need, but it's just been released, and isn't widely supported yet

This MR is trying to add support for each of these methods, the last one being untested, because I don't have D3D12 driver support for it, which is why this MR is marked Draft.

/cc @jekstrand for the common vulkan bits

Edited by Jesse Natalie

Merge request reports