The Wine team is proud to announce that release 1.5 of vkd3d, the Direct3D to Vulkan translation library, is now available.
This release contains improvements that are listed in the release notes below. The main highlights are:
- Support for various HLSL features and intrinsics. - Typed unordered access view loads of multicomponent formats. - Miscellaneous bug fixes.
The source is available from the following location:
https://dl.winehq.org/vkd3d/source/vkd3d-1.5.tar.xz
The current source can also be pulled directly from the git repository:
https://gitlab.winehq.org/wine/vkd3d.git
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS for the complete list.
----------------------------------------------------------------
What's new in vkd3d 1.5 =======================
*** libvkd3d-shader
- New features for the HLSL source type: - Improved support for HLSL object types (like e.g. `Texture2D') inside structures and arrays. - Implicitly sized array initialisers. - Support for the dot() intrinsic function. - Support for the ldexp() intrinsic function. - Support for the lerp() intrinsic function. - Support for the logical `and', `or', and `not' operators in shader model 4 and 5 targets. - Support for casts from `bool' types in shader model 4 and 5 targets. - Constant folding for integer bitwise operations. - Constant folding for integer min() and max().
- New interfaces: - The VKD3D_SHADER_COMPILE_OPTION_TYPED_UAV compile option can be used to specify the SPIR-V format to use for typed unordered access view loads. When set to `Unknown', and the `shaderStorageImageReadWithoutFormat' feature is enabled in the target environment, this allows typed loads from multicomponent format unordered access views. If left unspecified, a R32 format will be used, like in previous versions of libvkd3d-shader.