Pages

Thursday, March 17, 2022

World Wine News issue 414

This is the 414th issue of World Wine News. Its main goal is to inform you of what's going on around Wine. Wine is an open-source implementation of the Windows API on top of X and Unix. Think of it as a Windows compatibility layer. Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code. 

The full article is here

Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off  CodeWeavers CrossOver+ today.

 

Friday, March 11, 2022

Wine development release 7.4 is now available for Linux FreeBSD and macOS

The Wine development release 7.4 is now available.

What's new in this release:

  • 'Light' theme enabled by default.
  • Bundled vkd3d library.
  • WineD3D, D3D12 and DXGI modules converted to PE.
  • More large scale cleanups to support 'long' type.
  • Various bug fixes.

The source is available now. Binary packages are in the process of being built, and will appear soon at their respective download locations.

 Bugs fixed in 7.4 (total 14):

  20296  Multiple apps crash due missing support for COM dll surrogate, dllhost.exe (League of Legends 08_18_2009_04, 3Dmark03, 3Dmark05, 3Dmark06)
  41053  RawInput (RegisterRawInputDevices) does not work for gamepads
  48508  Psi-Ops: The Mindgate Conspiracy freezing in stable Wine 5.0
  50887  cannot read/run/open some files
  52204  Vibration on DualSense controller works incorrectly in all Games
  52476  QuickLOAD: wine 7 causes VB5 application to change input value by factor 10
  52562  advapi32:registry fails in Wine because some French timezone name translations are too long
  52581  Internet MIDI crashes with Light Blue theme enabled
  52596  The Godfather main menu cursor and text not rendered correctly
  52614  API set DLLs fail to load on Arch Linux with "failed to load apiset: c0000482"
  52618  32-bit EXEs do not launch from build dir on macOS 10.14 in WOW64
  52626  MahjongSoul needs unimplemented function combase.dll.RoSetErrorReportingFlags
  52637  comctl32:listbox test_LBS_NODATA() fails in the Japanese and Chinese locales
  52639  comctl32:toolbar test_visual() fails in Wine with the Light theme

Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off  CodeWeavers CrossOver+ today.

 

Friday, March 4, 2022

World Wine News issue 413

This is the 413th issue of World Wine News. Its main goal is to inform you of what's going on around Wine. Wine is an open-source implementation of the Windows API on top of X and Unix. Think of it as a Windows compatibility layer. Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code. 

The full article is here

Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off  CodeWeavers CrossOver+ today.

 

vkd3d-proton version 2.6 has been released

VKD3D-Proton is a fork of VKD3D, which aims to implement the full Direct3D 12 API on top of Vulkan. The project serves as the development effort for Direct3D 12 support in Proton.

 

It has been a long while since 2.5, and this release rolls up a lot of fixes, features and optimizations.

Fixes

  • Fix black screen rendering bug in Horizon Zero Dawn after latest game updates.
  • Fix crashes on startup in Final Fantasy VII: Remake and Warframe.
  • Fix crashes in Guardians of the Galaxy when interacting with certain game objects.
  • Fix hang on game shutdown in Elden Ring.
  • Fix broken geometry rendering in Age of Empires: IV.

Optimization

  • Improve generated shader code for vectorized load-store operations in DXIL.
  • Greatly reduce CPU overhead for descriptor copy operations,
    which is a key contributor to CPU overhead in D3D12.

Features

Pipeline library rewrite

Support D3D12 pipeline libraries better where we can now also cache
generated SPIR-V from DXBC/DXIL.
Massively reduces subsequent load times in Monster Hunter: Rise,
and helps other titles like Guardian of the Galaxy and Elden Ring.
Also lays the groundwork for internal driver caches down the line for games which do not use this API.
Also, deduplicates binary blobs for reduced disk size requirements.

Shader models

Shader model 6.6 is now fully implemented. This includes support for:

  • ResourceDescriptorHeap[] direct access
  • 64-bit atomics
  • IsHelperLane()
  • Compute shader derivatives
  • WaveSize attribute
  • Packed math intrinsics

Minor features

  • Handle API feature MinResourceLODClamp correctly if VK_EXT_image_view_min_lod is supported.
  • Expose CastFullyTypedFormat feature.
  • Expose some advanced shader features on Intel related to UAV formats (VK_KHR_format_feature_flags2).
  • Support COLOR -> STENCIL copies.

Workarounds

  • Workaround DEATHLOOP not emitting synchronization commands correctly. Fixes menu flicker on RADV.
  • Workaround quirky API usage in Elden Ring. Removes many kinds of stutter and chug when traversing the scenery.
  • Workaround certain environments failing to create Vulkan device if some VK_NVX_* extensions are enabled.
  • Workaround glitched foliage rendering in Horizon Zero Dawn after latest game updates.
  • Workaround some questionable UE4 shaders causing glitched rendering on RADV.

Note on future Vulkan driver requirements

2.6 is expected to be the last vkd3d-proton release before we require some newer Vulkan extensions.
VK_KHR_dynamic_rendering and VK_EXT_extended_dynamic_state
(and likely dynamic_state_2 as well) will be required.

VK_KHR_dynamic_rendering in particular requires up-to-date drivers and the legacy render pass path
will be abandoned in favor of it. Supporting both paths at the same time is not practical.
Moving to VK_KHR_dynamic_rendering allows us to fix some critical flaws with the legacy API
which caused potential shader compilation stutters and extra CPU overhead.

Link to source code

Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off  CodeWeavers CrossOver+ today.