mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
Direct3D to Vulkan translation library
c560fdfa26
From the Vulkan spec, 8.13 "Interpolation Decorations": Fragment shader inputs that are signed or unsigned integers, integer vectors, or any double-precision floating-point type must be decorated with Flat. This also matches glslang behaviour. Specifically, this fixes tone-mapping in Unreal Engine 4 on RADV and AMDGPU-PRO, where gl_Layer is used as a fragment shader input. Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de> Signed-off-by: Józef Kucia <jkucia@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org> |
||
---|---|---|
bin | ||
crosslibs | ||
demos | ||
include | ||
libs | ||
m4 | ||
programs/vkd3d-compiler | ||
tests | ||
.gitignore | ||
ANNOUNCE | ||
AUTHORS | ||
autogen.sh | ||
configure.ac | ||
COPYING | ||
INSTALL | ||
LICENSE | ||
Makefile.am | ||
README |
============================= The vkd3d 3D Graphics Library ============================= Vkd3d is a 3D graphics library built on top of Vulkan. It has an API very similar, but not identical, to Direct3D 12. ============== Building vkd3d ============== Vkd3d depends on SPIRV-Headers and Vulkan-Headers (>= 1.1.88). Vkd3d generates some of its headers from IDL files. If you are using the release tarballs, then these headers are pre-generated and are included. If you are building from git, then they will be generated at build-time using widl. By default, vkd3d will use the widl found in `PATH'. If widl is not available or is not recent (>= 3.0 or so), then you can build Wine with `make tools/widl' to avoid building all of Wine. You can then point vkd3d's configure at that widl binary with `WIDL="/path/to/widl"'. =========== Using vkd3d =========== Vkd3d can be used by projects that target Direct3D 12 as a drop-in replacement at build-time with some modest source modifications. If vkd3d is available when building Wine, then Wine will use it to support Direct3D 12 applications.