mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-09-13 09:16:14 -07:00
91 lines
2.9 KiB
Plaintext
91 lines
2.9 KiB
Plaintext
|
The Wine team is proud to announce that release 1.0 of vkd3d, the
|
||
|
Direct3D 12 to Vulkan translation library, is now available.
|
||
|
|
||
|
This is the first release of vkd3d. A lot of Direct3D 12 features are still
|
||
|
missing and bugs are expected. The current version was tested mainly with demo
|
||
|
applications. A number of features that are being worked on have been deferred
|
||
|
to the next development cycle. This includes in particular geometry and
|
||
|
tessellation shaders support, various shader translation improvements, as well
|
||
|
as various improvements for core Direct3D 12 methods.
|
||
|
|
||
|
The source is available from the following location:
|
||
|
|
||
|
https://dl.winehq.org/vkd3d/source/vkd3d-1.0.tar.xz
|
||
|
|
||
|
The current source can also be pulled directly from the git repository:
|
||
|
|
||
|
https://source.winehq.org/git/vkd3d.git/
|
||
|
|
||
|
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
|
||
|
for the complete list.
|
||
|
|
||
|
----------------------------------------------------------------
|
||
|
|
||
|
What's included in vkd3d 1.0
|
||
|
============================
|
||
|
|
||
|
|
||
|
*** libvkd3d
|
||
|
|
||
|
- libvkd3d is the main component of the vkd3d project. It's a 3D graphics
|
||
|
library built on top of Vulkan with an API very similar to Direct3D 12.
|
||
|
|
||
|
- A significant number of Direct3D 12 features are implemented, including:
|
||
|
- Graphics and compute pipelines.
|
||
|
- Command lists, command allocators and command queues.
|
||
|
- Descriptors and descriptor heaps.
|
||
|
- Root signatures.
|
||
|
- Constant buffer, shader resource, unordered access, render target and depth
|
||
|
stencil views.
|
||
|
- Samplers.
|
||
|
- Static samplers.
|
||
|
- Descriptors copying.
|
||
|
- Committed resources.
|
||
|
- Fences.
|
||
|
- Queries and query heaps.
|
||
|
- Resource barriers.
|
||
|
- Root constants.
|
||
|
- Basic support for indirect draws and dispatches.
|
||
|
- Basic support for command signatures.
|
||
|
- Various Clear*() methods.
|
||
|
- Various Copy*() methods.
|
||
|
|
||
|
|
||
|
*** libvkd3d-shader
|
||
|
|
||
|
- libvkd3d-shader is a library which translates shader model 4 and 5 bytecode
|
||
|
to SPIR-V. In this release, libvkd3d-shader is an internal library. Its API
|
||
|
isn't set in stone yet.
|
||
|
|
||
|
- Vertex, pixel and compute shaders are supported. Also, very simple geometry
|
||
|
shaders should be translated correctly. Issues are expected when trying to
|
||
|
translate tessellation shaders or more complex geometry shaders.
|
||
|
|
||
|
- A significant number of shader instructions are supported in this release,
|
||
|
including:
|
||
|
- Arithmetic instructions.
|
||
|
- Bit instructions.
|
||
|
- Comparison instructions.
|
||
|
- Control flow instructions.
|
||
|
- Sample, gather and load instructions.
|
||
|
- Atomic instructions.
|
||
|
- UAV instructions.
|
||
|
|
||
|
- Root signature serialization and deserialization is implemented.
|
||
|
|
||
|
- Shader model 4 and 5 bytecode parser is imported from wined3d.
|
||
|
|
||
|
- Shader model 5.1 is not supported yet.
|
||
|
|
||
|
|
||
|
*** libvkd3d-utils
|
||
|
|
||
|
- libvkd3d-utils contains simple implementations of various functions which
|
||
|
might be useful for source ports of Direct3D 12 applications.
|
||
|
|
||
|
|
||
|
*** demos
|
||
|
|
||
|
- A simple hello triangle Direct3D 12 demo.
|
||
|
- A Direct3D 12 port of glxgears.
|