Today, the Vulkan API 1.2.149 spec update went out and it includes another extension that's aimed at helping translation layers like DXVK. While we don't usually comment on such minor specification updates to Vulkan, we do pick it up in cases like this where it may directly benefit compatibility layers for Linux gaming.
VK_EXT_4444_formats is the new extension, which was worked on by Joshua Ashton (original creator of D9VK, now part of DXVK) for Valve and Jason Ekstrand for Intel. This is actually Ashton's second extension, following on from the release of Vulkan 1.2.140 back in May.
So what's it for? From the official documentation:
This extension defines the VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT and VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT formats which are defined in other current graphics APIs.
This extension may be useful for building translation layers for those APIs or for porting applications that use these formats without having to resort to swizzles.
When VK_EXT_custom_border_color is used, these formats are not subject to the same restrictions for border color without format as with VK_FORMAT_B4G4R4A4_UNORM_PACK16.
Nice to see Vulkan continuing to evolve as an API. Having it open like this is great, as they can continue to push through the latest and greatest features (like the upcoming official vendor-neutral Ray Tracing extensions) on top of bringing in extensions to aid translating from older and competing modern APIs.
But it's a lot about the implementation, I have read Vulkan code and seems more -if not complex-, longer than OpenGL.
See more from me