Direct3D-to-Vulkan Library vkd3d 1.17 Released with Shader Enhancements

vkd3d 1.17, the Direct3D-to-Vulkan translation library used by Wine, adds new HLSL features, MSL improvements, FX updates, and bug fixes.

The team behind vkd3d, an open-source library that translates Microsoft’s Direct3D graphics calls to Vulkan, developed and maintained by the Wine project, has announced the release of version 1.17.

One of the most notable additions is initial HLSL support for thread group shared memory, something developers have been waiting on for a while. On top of that, geometry shader handling sees a boost with better support for multiple output streams, bringing vkd3d’s behavior closer to Microsoft’s own compiler tools, which is key for compatibility.

Another big focus in this release is the experimental Metal Shading Language (MSL) target. While still under active development, it now supports texture sampling, gather operations, loops, switches, and a wide range of integer and fragment shader features.

Plus, there’s even support for converting DXIL shaders to MSL, which could help broaden cross-platform compatibility for certain applications.

Beyond that, vkd3d 1.17 also delivers improvements to FX shader handling, parser support for features like StructuredBuffer resources, and expanded SPIR-V capabilities, including debug information output. The release also introduces a new tx source type for working with legacy D3DX texture shaders.

To show off some of these capabilities, the developers have included a fresh demo: a tessellation-based rendering of Martin Newell’s classic teapot model. It’s a neat showcase, though they note that some limitations in MoltenVK mean it won’t run perfectly everywhere just yet.

As with every vkd3d release, there are also plenty of bug fixes and smaller tweaks that help smooth out rough edges. The source code is available from WineHQ’s download servers as well as the project’s GitLab repository.

For more information, visit the announcement. vkd3d 1.17’s source code can be downloaded from GitLab’s project page.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Leave a Reply

Your email address will not be published. Required fields are marked *