| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  | The Wine team is proud to announce that release 1.8 of vkd3d, the Direct3D to | 
					
						
							| 
									
										
										
										
											2020-09-22 02:05:48 +03:30
										 |  |  | Vulkan translation library, is now available. | 
					
						
							| 
									
										
										
										
											2018-05-23 19:19:15 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-05 18:26:13 +02:00
										 |  |  | This release contains improvements that are listed in the release notes below. | 
					
						
							|  |  |  | The main highlights are: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  |   - Support for still many more HLSL features and intrinsics. | 
					
						
							|  |  |  |   - Performance improvements to vkd3d descriptor updates. | 
					
						
							| 
									
										
										
										
											2022-09-19 13:11:09 +02:00
										 |  |  |   - Miscellaneous bug fixes. | 
					
						
							| 
									
										
										
										
											2018-05-23 19:19:15 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | The source is available from the following location: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  |   https://dl.winehq.org/vkd3d/source/vkd3d-1.8.tar.xz | 
					
						
							| 
									
										
										
										
											2018-05-23 19:19:15 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | The current source can also be pulled directly from the git repository: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-19 13:11:09 +02:00
										 |  |  |   https://gitlab.winehq.org/wine/vkd3d.git | 
					
						
							| 
									
										
										
										
											2018-05-23 19:19:15 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | Vkd3d is available thanks to the work of multiple people. See the file AUTHORS | 
					
						
							|  |  |  | for the complete list. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ---------------------------------------------------------------- | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  | What's new in vkd3d 1.8 | 
					
						
							| 
									
										
										
										
											2018-10-05 18:26:13 +02:00
										 |  |  | ======================= | 
					
						
							| 
									
										
										
										
											2018-05-23 19:19:15 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  | *** libvkd3d | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - Performance improvements have been made to the code that handles descriptor | 
					
						
							|  |  |  |   updates. In some applications the improvement can be quite significant. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - Host-visible descriptor heaps are persistently mapped on creation. Some | 
					
						
							|  |  |  |   applications access resource data from the CPU after calling Unmap(), and | 
					
						
							|  |  |  |   that's supposed to work in practice. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - 1-dimensional texture unordered-access views and shader resource views are | 
					
						
							|  |  |  |   implemented. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - Shader resource view, unordered access view, and constant buffer view root | 
					
						
							|  |  |  |   descriptors with NULL GPU addresses are supported. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - Direct3D 12 descriptor heap destruction is delayed until all contained | 
					
						
							|  |  |  |   resources are destroyed. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-09-22 02:05:48 +03:30
										 |  |  | *** libvkd3d-shader | 
					
						
							| 
									
										
										
										
											2018-10-05 18:26:13 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-06-22 16:09:04 +02:00
										 |  |  | - New features for the HLSL source type: | 
					
						
							| 
									
										
										
										
											2023-06-21 12:00:00 +02:00
										 |  |  |   - Support for the ternary conditional operator "?:". | 
					
						
							|  |  |  |   - Support for "discard" statements. | 
					
						
							|  |  |  |   - Support for the "packoffset" keyword. | 
					
						
							|  |  |  |   - Support for semantics on array types. | 
					
						
							|  |  |  |   - Support for RWBuffer loads and stores. | 
					
						
							|  |  |  |   - Register allocation for arrays and structures of resources and samplers | 
					
						
							|  |  |  |     is implemented. | 
					
						
							|  |  |  |   - Support for the SV_IsFrontFace pixel shader system-value semantics. | 
					
						
							|  |  |  |   - Support for using constant expressions as array sizes and indices. | 
					
						
							|  |  |  |   - Support for dynamic selection of vector components. | 
					
						
							|  |  |  |   - Support for the following intrinsic functions: | 
					
						
							|  |  |  |     - D3DCOLORtoUBYTE4() | 
					
						
							|  |  |  |     - any() | 
					
						
							|  |  |  |     - asfloat() | 
					
						
							|  |  |  |     - ddx() and ddy() | 
					
						
							|  |  |  |     - fmod() | 
					
						
							|  |  |  |     - log(), log2(), and log10() | 
					
						
							|  |  |  |     - sign() | 
					
						
							|  |  |  |     - trunc() | 
					
						
							|  |  |  |   - The SampleBias(), SampleCmp(), SampleCmpLevelZero(), and SampleGrad() | 
					
						
							|  |  |  |     texture object methods are implemented. | 
					
						
							|  |  |  |   - Support for the case-insensitive variants of the "vector" and "matrix" | 
					
						
							|  |  |  |     data types. | 
					
						
							|  |  |  |   - Parser support for the "unroll" loop attribute. A warning is output for | 
					
						
							|  |  |  |     "unroll" without iteration count, and an error is output when an iteration | 
					
						
							|  |  |  |     count is specified. Actual unrolling is not implemented yet. | 
					
						
							|  |  |  |   - Parser support for RWStructuredBuffer resources. | 
					
						
							|  |  |  |   - Parser support for SamplerComparisonState objects. Note that outputting | 
					
						
							|  |  |  |     compiled effects is not supported yet, but parsing these allows shaders | 
					
						
							|  |  |  |     containing SamplerComparisonState state objects to be compiled. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - More improvements to HLSL support for the Direct3D shader model 1/2/3 | 
					
						
							|  |  |  |   profiles. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - The section alignment of DXBC blobs produced by | 
					
						
							|  |  |  |   vkd3d_shader_serialize_dxbc() matches those produced by d3dcompiler more | 
					
						
							|  |  |  |   closely. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - The "main" function for shaders produced by the SPIR-V target is always | 
					
						
							|  |  |  |   terminated, even when the source was a TPF shader without explicit "ret" | 
					
						
							|  |  |  |   instruction. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - Relative addressing of shader input registers is supported by SPIR-V | 
					
						
							|  |  |  |   targets. |