Wine Reviews has release information and reviews of Windows applications and games running on Linux macOS and ChromeOS using Wine from Winehq.org Proton Lutris Q4Wine PlayOnLinux PlayOnMac WineBottler WineSkin WineTricks and Wine-Staging.
I’m thrilled to announce that CodeWeavers has released CrossOver 23 for macOS, Linux and ChromeOS!
CrossOver 23 includes an update to Wine 8.0.1, bringing with it over
5,000 changes that offer improvements to a variety of applications. This
release also includes an update to Wine Mono 7.4.0, vkd3d 1.8, DXVK
1.10.3 and MoltenVK 1.2.3.
Our most exciting feature is initial DirectX 12 support on macOS.
Diablo II Resurrected and Diablo IV are currently running well on macOS
Ventura, making them the first DirectX 12 games working on a released
macOS version. This breakthrough was the culmination of years of
development, and we look forward to continuing to aggressively pursue
support for even more DirectX 12 titles. Diablo IV is also newly working
on Linux with the CrossOver 23 release.
We’re pleased to announce that this release also includes initial
support for geometry shaders and transform feedback on macOS Ventura.
This unlocks many games that previously suffered from missing graphics
or black screens in-game. Risk of Rain 2, TEKKEN 7, Octopath Traveler,
Street Fighter V, Astroneer, MechWarrior 5: Mercenaries and Trailmakers
are just some of the titles that are now running on CrossOver 23. Note
that using wined3d instead of DXVK will produce the best results for
games using geometry shaders. And speaking of wined3d, our team also
noted some nice performance improvements with wined3d.
EA App is now running on both macOS and Linux with CrossOver 23. Many
EA App games are now working, including The Sims 4, Titanfall 2 and
Mass Effect Legendary Edition. If you are running EA App games through
Steam, make sure to install “EA App for Steam” into your bottle: that
CrossTie installs needed dependencies.
For our Linux users, we worked around an XWayland bug, and Office 365
applications are now running with better performance with Wayland under
CrossOver 23.
One of the most requested features we get for the CrossOver GUI is
the ability to uninstall applications, and that is now possible with
CrossOver 23. Uninstalling is now a quick operation: simply go to the
“Bottle Details” at the bottom of the right sidebar for your bottle and
right-click on the application listed under “Installed Software” to find
the uninstall option. CrossOver also now deletes launchers for
uninstalled applications. For example, launchers for games uninstalled
through Steam will now be removed for you.
Of course, this release also contains some important bug fixes,
including fixes for the latest Quicken, Steam, Rockstar Games Launcher,
Age of Empires II Definitive Edition and Ubisoft Connect updates that
caused those applications to stop working with CrossOver.
Lastly, a note about macOS Sonoma. Currently, CrossOver 23 runs on
the Sonoma beta, but there are definitely known issues. We are working
on fixes, and we plan to release an update to CrossOver 23 that will be
fully compatible with it.
Change Log :
23.0.0 CrossOver - August 16, 2023
Core Technology Improvements:
CrossOver 23 includes Wine 8.0.1, with over 5,000
improvements, and selected patches from recent Wine with benefits to
many popular applications.
Update to Wine Mono 7.4.
Update to vkd3d 1.8.
Update to DXVK 1.10.3.
Support for EA App.
Ability to uninstall applications.
macOS:
Initial support for DirectX 12 games, including Diablo II: Resurrected and Diablo IV.
Initial support for geometry shaders and transform feedback.
Update to MoltenVK 1.2.3.
Linux:
Office 365 support on Wayland.
Support for Diablo IV.
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
With
this release, we're adding back the ability to run games with Proton.
While this can be an useful thing for testing compatibility, it is still
recommended to stick with the builds provided by Lutris. We are now
using @GloriousEggroll's Proton based builds by default, which makes using Steam's proton an even narrower edge case.
For players with very large libraries, Lutris will be a lot more responsive thanks to the performance improvements by @danieljohnson2, along with loads of other UI improvements!
Starting from this release, it is now possible to reference ModDB
links in Lutris installers. If your distribution doesn't provide the moddb Python package, you'll have to install it with: pip install moddb.
We also have an integration with Itch.io, thanks to @GoGoOtaku (note that we don't have a way to search for or install free games from Itch.io with this integration).
Changelog:
Add support for Proton
Add drag and drop on the main window. Dropped files will be matched
No-Intro, Redump and TOSEC checksums.
Add support for ModDB links in installers (moddb python module required)
Added "Missing" sidebar option for games whose directory is missing
Re-style the configuration, preferences, installer and add-games windows
Group configuration options into sections
Added checkbox to stop asking for the launch config for a game
Added checkbox to sort installed games first
Support for launch-configs in shortcuts and the command line
Show platform badges on banners and cover-art
Installing games from setup files can now use different presets (Win98, 3DFX, ...)
Add filter field to runner list
Show game count in search bar
Workaround Humble Bundle authentication issues by allowing importing
cookies from Firefox
Lutris helps you install and play video games from all eras and from most
gaming systems. By leveraging and combining existing emulators, engine
re-implementations and compatibility layers, it gives you a central interface
to launch all your games.
The client can connect with existing services like Humble Bundle, GOG and Steam
to make your game libraries easily available. Game downloads and installations
are automated and can be modified through user made scripts.
Changelog:
2nd beta release for 0.5.13
Add support for Proton
Add drag and drop on the main window. Dropped files will be matched
No-Intro, Redump and TOSEC checksums.
Add support for ModDB links in installers (moddb python module required)
Added "Missing" sidebar option for games whose directory is missing
Re-style the configuration, preferences, installer and add-games windows
Group configuration options into sections
Added checkbox to stop asking for the launch config for a game
Added checkbox to sort installed games first
Support for launch-configs in shortcuts and the command line
Show platform badges on banners and cover-art
Installing games from setup files can now use different presets (Win98, 3DFX, ...)
Add filter field to runner list
Show game count in search bar
Workaround Humble Bundle authentication issues by allowing importing
cookies from Firefox
The Wine development release 8.2 is now available.
What's new in this release:
Better debug information in Wow64 mode.
Wow64 thunks in the WPCAP library.
Indeo IV50 codec support.
Monitor names set from EDID data.
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 8.2 (total 22):
- #48528 The Void crashes with builtin d3dx9_36 (needs D3DXFillCubeTextureTX() to return S_OK) - #51345 Regression: Visual Studio 2005 "package load failure" - #51545 STDOUT lost from a forked program on Cygwin/MSYS2 - #53747 SubLab VST3 plugin fails to register (needs Windows.System.Profile.SystemManufacturers.SmbiosInformation) - #53926 New typelib marshaller depends on IID_IDispatch support from target interface - #54103 opengl32:opengl - test_copy_context() crashes on w11pro64_nv - #54150 d3dcompiler_43:hlsl_d3d11 & d3dcompiler_47:hlsl_d3d11 - test_trig() fails on w11pro64_nv - #54234 vbscript fails to compile when colon follows Else in If...Else - #54318 Rich Edit inserts newly composed text at wrong position when system IME composition ends while a selection is active - #54371 loader won't launch from PATH unless named "wine" - #54384 GOG Heroes of Might and Magic IV crashes on launch - #54431 Switching active window (alt+tab or otherwise) away from Final Fantasy XI causes keyboard keys to remain pressed - #54456 vbscript memory leak in For Each with SafeArray as group - #54457 vbscript memory leaks in interp_redim_preserve - #54458 vbscript memory leaks in Global_Split - #54463 Wrong version value is returned from win32_operatingsystem on win10 (regression) - #54465 dbghelp:dbghelp - The 64-bit test_modules() fails on Windows 7 - #54477 user32:msg - test_message_conversion()'s broadcast test fails on Windows 7 and 10 - #54486 getenv_s returns the wrong value - #54489 VarAbs() does not handle BSTR arguments correctly - #54490 vbscript fails to compile when statement follows ElseIf - #54493 vbscript fails to compile concat when used without space and expression begins with H
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
There will always be apps — mostly games — whose publishers won’t
port them to the Mac for financial or contractual reasons. Codeweavers’
CrossOver offers a simple, convenient way to run many of those apps. The
result isn’t as reliable or universal as other solutions, but it’s a
lot cheaper and easier, and with CrossOver’s helpful database of app
functionality and generous try-before-you-buy period, you can see
whether it’ll run the apps you want to use before you commit your
hard-earned cash.
CrossOver
translates Windows commands into Mac ones on the fly — like hiring an
interpreter to help you in a foreign country, rather than learning the
language yourself. It’s based on the open-source WINE project, but its
improvements to standard WINE make it a lot easier for everyday users to
successfully run.
CrossOver 22 is only available from Codeweavers' web site.
$74 gets you a full copy and a year’s worth of updates to the app. Once
that period elapses, you can still use the copy you already have as
long as you want to, but you won’t be able to download fresh updates.
You'll have a limited window of time after your subscription expires to
renew it for roughly $30.
You can also pay $494 for CrossOver Life, which removes the need for
annual renewals. The company tends to offer once-a-year discounts around
Black Friday, sometimes slashing the cost of a year's updates to as
little as $15.
After a quick installation, CrossOver does most of the hard work for
you. It sets up a “bottle” — a contained virtual environment — in which
you can install basic Windows or Linux underpinnings, plus any apps
you’d care to run. CrossOver builds in shortcuts to install popular apps
like Steam,
and it can seamlessly install apps from the Internet, from downloaded
ISO files, or from a physical disc, should you have an external drive.
You
can have multiple separate bottles for different apps, or put all the
apps you use in a single vessel. As with containerized software setups
like Docker,
this makes CrossOver easier and less stressful to use. In the unlikely
event that something goes horribly wrong inside a bottle, it won’t
affect your larger system. You can just delete the bottle and start
fresh.
Each
new version of CrossOver offers under-the-hood improvements to help all
apps in general and specific titles in particular run better. But
CrossOver 22’s biggest leap forward lies in its overhauled interface.
Previous
versions hid important toggles and features behind poorly designed
contextual menus. CrossOver 22 takes its design cues instead from the
Mac App Store, putting crucial options in full view. It’s easier than
ever to run apps you’ve already installed, or add new ones.
Codeweavers’
database of popular apps and their compatibility, maintained by
volunteer testers, is now more directly integrated into the app itself,
rather than requiring a separate visit to Codeweavers's web site. That
database isn’t comprehensive — some titles I’ve personally used under
CrossOver aren’t included — but it’s a good place to start when you’re
curious about whether a particular app will run there.
The path between original Windows code and successful Mac execution
isn’t always straight. For instance, Windows games use a set of tools
known as DirectX to enable 3D graphics. CrossOver has to pass those
commands through an open-source translator called DXVK, which maps them
to the open-source Vulkan 3D standard. These Vulkan commands must then
go through another interpreter, MoltenVK, to run under Apple’s own 3D toolkit, Metal.
Each of these handoffs eats up processing power and makes the
resulting games run slower and less reliably than they would if coded
for the Mac from the get-go.
The beefier your processing power,
the better performance you’ll get from CrossOver. Even though it’s an
Intel native app, it runs best on Apple silicon under Rosetta 2 emulation,
thanks to the sheer horsepower of the M1 and higher. (CrossOver plans
to eventually support Apple silicon, but Codeweavers says that
transition is likely years away.) Popular launcher apps like Steam, and
simpler 2D games like Guacamelee, ran without a hitch in my tests, but more sophisticated titles had various degrees of tradeoffs.
When I ran 2017’s Star Wars: Battlefront II on my stock M1 Mac Mini,
the game looked great. But depending on the game mode and the size and
type of the environments I found myself in, performance ranged from fast
and fluid to an unplayable crawl. I’ve seen YouTube videos of other
CrossOver users playing the game much more smoothly, even on levels that
choked my computer. If you want to game with CrossOver, having more
than 8GB RAM or something more powerful than a basic M1 will likely
serve you well.
Furthermore, Metal has different aims and
priorities than DirectX, trading some measure of tech sophistication for
the ability to run across MacOS, iOS, and tvOS. Even under Apple’s
recently announced Metal 3, there are just some things DirectX does for
which Metal lacks an easily translated equivalent.
I saw this firsthand playing Jedi: Fallen Order.
Though the game mostly ran smoothly barring some pauses for loading,
the world around my protagonist didn’t render right, presenting a mass
of flickering black triangles instead of realistic surroundings. I was
able to adapt and still enjoy the game, but if you’re looking for
absolute fidelity, consider this fair warning.
And even if
everything else goes swimmingly, there are some facets of Windows
software that just won’t work outside that platform, no matter what.
Barring some miracle in a future version, I’ll never know how well Star Wars: Squadrons
runs on CrossOver, because the anti-cheating software for its
multiplayer mode won’t cooperate, shutting down every attempt to install
the game.
ntel Macs can directly install Windows through Boot Camp, but this option isn't available on newer Apple Silicon-powered Macs.
Virtual machines like VMWare Fusion and Parallels Desktop
let Mac users run Windows and its apps. By emulating the entire Windows
operating system, they offer better compatibility with more kinds of
PC apps, especially games.
Both apps are Apple Silicon native and
can, with various degrees of workarounds, run Apple Silicon-friendly
ARM-based versions of Windows 11 (and their apps) natively. CrossOver
tops out at apps for Windows 10, and because of the engineering
complexities involved, Codeweavers says it won't offer a native Apple
Silicon version for several more years.
But Parallels and VMWare
each cost more than a year of CrossOver updates, and neither will work
without a copy of Windows itself. Even an older version of that can run
you as much as $140.
CrossOver 22 is impressive in its simplicity — at least in terms of how
easy it is to get select Windows applications up and running on macOS.
It's by no means perfect, and your mileage will vary dramatically
depending on the complexity of the applications you're looking to run,
not to mention the power of your Mac computer itself. But with prudent
use of the free trial to test your must-work apps, it's a great
opportunity to bridge the gap between Apple and Microsoft's computing
worlds.
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
On systems supporting HDR10 color spaces, HDR can now be enabled by setting the environment variable DXVK_HDR=1, or by setting the option dxgi.enableHDR = True in the configuration file. When using vkd3d-proton 2.8 or newer, this will allow D3D12 games to detect and use the HDR10 color space if they support it.
No major Linux desktop environment currently supports HDR. In order to use this on Linux, a Gamescope session with --hdr-enabled is required. This is currently only supported under AMDGPU and requires kernel patches from the josh-hdr-colorimetry branch.
Note: D3D11 support is implemented, but not expected
to work in most games as they typically require AMDAGS or NVAPI to set
up HDR output, rather than using the corresponding DXGI APIs.
Additionally, only Nvidia drivers are expected to work on Windows.
Shader compilation improvements
Use of pipeline libraries was extended to pipelines with tessellation
or geometry shaders in order to further reduce stutter. Additionally,
more features of the VK_EXT_extended_dynamic_state3 extension are leveraged to reduce stutter in some situations when MSAA is used, provided that the Vulkan driver supports them.
Note: Current development builds of RADV will expose VK_EXT_graphics_pipeline_library with the features that DXVK needs if the RADV_PERFTEST=gpl
environment variable is set. Note that the implementation is not yet
complete and does not support shader caching at this time, but it should
generally work with DXVK.
Sample rate shading
For older games that support MSAA, the d3d9.forceSampleRateShading and d3d11.forceSampleRateShading options were added to let users enable sample rate shading for all shaders. This will have a very
high impact on GPU-bound performance, but may increase overall image
quality in certain games that suffer from specular aliasing or
shimmering alpha-tested geometry.
Note: Games that resolve the rendered images
inadequately (e.g. performing a linear resolve on HDR render targets)
will likely not benefit from this option.
GLFW backend
For native Linux builds of DXVK, a GLFW backend was added as a compile-time alternative to the existing SDL2 backend. See PR #3111 for details.
Bug fixes and Improvements
Improved D3D11 command submission logic in order to make overall
performance more consistent, and to bring DXVK's behaviour more in line
with native D3D11 drivers.
Fixed D3D11 reference counting issues around 2D textures. (#3169)
Fixed Vulkan validation errors when creating DXGI_FORMAT_A8_UNORM UAVs. Note that UAVs of this format may not work as expected.
Fixed Vulkan validation errors that would occur when allocating dedicated image memory on Nvidia GPUs in some situations.
Fixed Vulkan validation errors caused by broken timeline semaphores on 32-bit Proton.
Worked around an issue with the Uplay overlay being stuck on screen. (#3146)
Note that this fix does not apply to Windows as it was achieved by loading winevulkan.dll directly instead of the actual Vulkan loader. Note that this change will break Red Dead Redemption 2 with dxvk-nvapi prior to this commit: jp7677/dxvk-nvapi@ac00a42
Worked around a bug in AMD's Windows driver as well as AMDVLK that would cause numerous games to crash since DXVK 2.0. (#3172)
Fewer threads will be used to perform background optimization of
graphics pipeines. This may result in a smoother gameplay experience on
some systems. Note that this change does not affect initial shader
compiling, as finishing that quickly is crucial to avoid stutter.
The state cache file will now only be created when the first pipeline is written to it, in order to avoid empty cache files.
This change mostly affects D3D9 games on systems with EXT_graphics_pipeline_library support.
Ashes of the Singularity: Fixed performance regression caused by suboptimal descriptor set allocation.
Battlefield: Bad Company 2: Fixed flickering (#3078, PR #3079)
Gujian 3: Fixed rendering issues on some GPUs. (#1784)
Resident Evil 4 HD: Fixed invalid Vulkan usage causing a GPU hang on RADV. (PR #3089)
Saints Row: The Third: Fixed a severe performance issue with rain when using the D3D9 renderer. (#2473, PR #3158)
Sekiro: Shadows Die Twice: Fixed stuttering issues on Nvidia GPUs. (#3179)
Sonic Frontiers: Worked around a game bug that would cause shadows to flicker when GPU-bound.
Supreme Commander: Forged Alliance: Fixed a crash after loading (#3058, PR #3060)
Note: The setup script setup_dxvk.sh
was no longer deemed useful and got removed. This change will only
affect users who manually install DXVK into a wine prefix, rather than
using it through Proton or Lutris.
Note: Due to changes to our DXGI implementation, older versions of vkd3d-proton (prior to 2.8) will no longer work with this version of DXVK.
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.
This release rolls up some significant new developments before the holidays.
VK_EXT_descriptor_buffer support
This extension is significant in that it removes a ton of CPU overhead.
We already had most of this in place on RADV and Steam Deck,
but this will allow NVIDIA, Intel, Turnip, and other AMD driver implementations to hit the same optimal code paths.
GPU bound performance increases slightly since we can also remove some
shader code that was required to workaround lack of descriptor buffers.
New extension requirements
To support descriptor buffers in the code base, these features are now required instead of optional.
Note that these features are widely supported already and is not expected to cause any problems.
If an implementation could support v2.7, it will support v2.8.
VK_KHR_buffer_device_address
VK_KHR_push_descriptor
Rewritten support for host accessible images
The entire API feature was rewritten from scratch to support more implementations and edge cases without
a lot of per-application hacks and workarounds.
As the most extreme example of weird API usage, Guardians of the Galaxy should (finally) run well on NVIDIA.
Rewritten swap chain
To most users, this change should be transparent.
Allow more precise control on latency and frame pacing with VK_KHR_present_wait.
mesa-git supports this along with NVIDIA.
VKD3D_SWAPCHAIN_LATENCY_FRAMES=n allows user to force a specific amount of latency.
Implementation of DXGI latency fences is now correct.
Reduce CPU overhead on the main thread that presents to swap chain.
Fixes a spurious hang in Hitman III where game relies on asynchronous present in order to not lock up.
Win32 specific DXGI code is handled by DXVK. A DXVK build from Experimental or later is required for this to work.
This allows a native Linux implementation of vkd3d-proton, including swap chain.
When VK_KHR_present_wait is not supported, behavior should be 1:1 with old implementation.
NOTE: The old swapchain implementation is still in the repository, and is expected to be removed in the next release.
For now, VKD3D_CONFIG=swapchain_legacy can be used to triage any potential issues with the new one.
NOTE: A driver crash was observed on NVIDIA 525.x drivers when running in some PRIME configurations.
For now, we disable use of present_wait on these drivers.
Fixes and workarounds
Workaround GPU hangs in Spiderman Remastered: Miles Morales (same issue as the original).
Fix rendering bug with gun damage in Borderlands 3 on RADV.
Refactor how resizable BAR is used. GPUs with 4 GiB and lower will no longer attempt to use resizable BAR,
which can avoid some out-of-memory situations.
Fix GPU hang in Age of Empires IV.
Fix some minor issues in mesh shader implementation.
Fix some issues preventing RE: Village from booting on Arc.
Some last minute frenzied fixes for Witcher 3 next-gen update.
All features except RT appears to work on RADV.
Hairworks is known to crash GPU on NVIDIA. More investigation is needed to root cause.
Some RT effects work on NVIDIA, others don't:
GI is reported to work.
AO crashes GPU. More investigation is needed to root cause.
Implement minor missing D3D12 features
An obscure feature was stubbed out and forgotten until now. ID3D12Device1::SetEventOnMultipleFenceCompletion() is now implemented.
Also, implement SetEventOn(Multiple)FenceCompletion for shared D3D12 fences.
Fixes a regression in Gears 5 causing lockup on boot.
Lutris is an open-source Linux game manager, but it’s more than that.
It aims to provide a single unified way to handle gaming on Linux.
It
brings together all aspects of Linux gaming into one place. Steam,
Wine, HumbleBundle, GOG, and even a whole range of emulators are all
brought together for a relatively seamless experience.
Lutris also provides methods for installing games. It integrates with
Steam, and it provides installer scripts for even the trickiest Wine
games.
Running Lutris
You can start Lutris from any other graphical application. The basic
screen that you get when you don’t have any games installed is fairly
plain. It just prompts you to create an account and add your games.
It’s best for you to create a Lutris account now. Your account is the
way that the client can keep your game library synchronized. It also
opens up the option to browse and install games from the platform’s
website. You can register easily on the Lutris website.
Once you’ve set up your account, take a look at the client again. The
middle button on the main screen will allow you to link your new
account to the client. Click on it and enter in your username and
password.
Adding Games and Runners
Lutris has a couple of ways of adding games. It uses other programs
called runners to actually run games. This is more of a management
platform than anything else. It organizes things but doesn’t do any
heavy lifting.
To see the list of available runners, click on the icon at the top of
your Lutris window. A window will open up with a list of runners. Many
are emulators, but you’ll see Steam and Wine there, too. With the
exception of Steam, you can install the runners through this window. You
can even manage and install multiple versions of Wine. Lutris will keep
track of them. It actually has custom scripts for Wine games that
specify the best version of Wine to use.
Steam has to be installed separately through your distribution’s
package manager, but Lutris will pick it up immediately once you have.
In order to actually get your Steam games, you need to sign into your
Lutris account in your web browser. Go to your profile and click on the
“Sign in through Steam” button. This will link your Steam account so the
client can display your games and other Steam features.
For
many other games you can browse the selection on the Lutris website.
There are tons on there, and more are constantly being added. Like with
Steam, you can download games from the site, and the client will set
them up for you.
If you have any other games that aren’t covered through Steam or the
Lutris website, you can add them manually. The plus sign at the top of
the client lets you create your own custom game launcher for games that
are already installed on your computer. The development team plans on
adding support for GOG and HumbleBundle in the near future, but for now
you can still add games that you purchase through either of these
services manually.
Once you’ve added a library of games, you’ll see a nice tiled image
layout of all of your games on the main screen of the Lutris client. You
can now run all of your games through Lutris!
The Wine development release 8.0-rc2 is now available.
What's new in this release:
Bug fixes only, we are in code freeze.
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 8.0-rc2 (total 50):
- #31927 ws2_32:sock fails intermittently - 'Test succeeded inside todo block: GetQueuedCompletionStatus returned 0' - #42797 ICU64 for VICE: No highlighted read/write-colors in Memory-window. - #46500 Cogpack - Exercises can't be run - Error 380 - Invalid property value - #46538 Unreal Tournament (UT99): mouse clicks in main menu work only once - #49394 CED1401 USB function driver needs ntoskrnl.exe.KeInsertQueueDpc() - #49517 Warframe crashes during loading before menu with wined3d, gives popup - #50013 MyPhoneExplorer 1.8.15 crashes - #50043 Kholat from GOG does not launch anymore - #50315 Silent Hill 2 failed to install -installshield extraction error - #50468 winedbg fails to load symbols for non PE builtin dlls - #52334 Performance has degraded in multiple games (WoW 1.12.1, Kane & Lynch: Dead Men Demo) - #52394 "Control panel" -> "Add/Remove Programs" in builtin wine explorer is not working - #52564 dxgi:dxgi times out in test_find_closest_matching_mode() on cw-gtx560 - #52708 libs/xslt/libxslt/attributes.c:136:9: error: variadic functions must use the base AAPCS variant - #52779 Construction Set Extender crash with an Assertion Error in wine 7.5 - #52873 oleaut32:typelib fails in Wine in Hindi - #52964 kernel32:locale - test_CompareStringA() fails on Wine in Hindi - #52997 Integration of D3D12 support with a PE build of vkd3d causes a crash in Steam Overlay. - #53028 gamepad buttons stopped working correctly - #53099 wineserver (gcc -O0) crash when exiting LiLi USB Creator - #53300 Controller response delayed - #53384 Hogia Hemekonomi Unexpected error on first start - #53406 Had been running 7.10 Fedora version no problem, but today updated to 7.12 broke?? - #53485 Cursor is missing in Visio 2003 when editing text - #53503 QuickBooks Pro 99 page faults with print preview or attempting to print - #53525 dinput:hid - test_hid_multiple_tlc() sometimes fails with testsigning turned on - #53550 Some Catalan locales not properly handled - #53595 Iran Timezone is not detected correctly - #53623 Resident Evil 7 has broken rendering in DX11 mode - #53625 In function ‘get_gnutls_cipher’ ... error: ‘GNUTLS_CIPHER_AES_128_CFB8’ undeclared - #53744 WM_SETTEXT between ANSI programs treating LPARAM as Unicode causing name corruption - #53756 configure fails in 32-bit gcc checking pthread_create using -Wl,--disable-stdcall-fixup - #53884 Project Ignis: EDOPro corrupted textures on resizing - #53894 user32:sysparams - test_WM_DISPLAYCHANGE() times out on Windows 7+ - #53911 DC++ can't retrieve file list from another user - #53912 Static initialization in Winelibs may hang the loader as of Wine 7.21 - #53918 Building with external PE libraries fails when static libraries are also installed - #53941 Chicken Tournament crashes on start - #53976 ntoskrnl.exe:ntoskrnl - test_pnp_devices() fails on Windows 7 - #53977 amstream:amstream qedit:mediadet mf:transform mfmediaengine:mfmediaengine quartz:filtergraph winmm:mci wmp:media wmvcore:wmvcore mf:mf mfplay:mfplay qasf:asfreader broken on Debian Testing - #53980 httpapi:httpapi sometimes crashes testing overlapped I/O with the v2 server in Wine - #53990 Serious Sam 2 crashes with OpenGL renderer - #54000 user32:win - test_mouse_input() gets an unexpected 0x60 message on Windows 11 - #54060 Compilation fails with gcc 4.8.4 (Error: junk at end of line, first unrecognized character is `"') - #54085 windows.devices.enumeration:devices - test_DeviceAccessInformation() sometimes crashes on Windows 10 - #54094 kernel32:process - test_services_exe() sometimes fails due to an invalid buffer size in Windows - #54096 Non-PE builds broken since "ntdll: Move the .so module initialization to winecrt0." - #54101 unimplemented function MSVCP70.dll.?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ - #54105 taskschd:scheduler fails on Windows 10 1607+ - #54121 8.0-rc1 build fails with errors in bcrypt in Ubuntu 18.04
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
The Wine development release 8.0-rc1 is now available.
This is the first release candidate for the upcoming Wine 8.0. It
marks the beginning of the yearly code freeze period. Please give this
release a good testing and report any issue that you find, to help us
make the final 8.0 as good as possible.
What's new in this release:
Bundled vkd3d upgraded to version 1.6.
Vulkan and OpenGL thunking optimizations.
More support for print processors.
Improved joystick control panel.
Long types printf format conversion finished.
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 8.0-rc1 (total 52):
- #28290 shell32:shelllink - test_load_save() crashes randomly in Wine - #36681 ws2_32/tests/sock.c fails on gentoo without IPX support - #46649 Multiple applications need D3DXDisassembleShader() implementation (Tom Clancy's Rainbow Six: Vegas 2, The Void) - #48105 kernel32:console fails on Japanese and Chinese Windows - #51234 user32:clipboard test_ClipboardOwner() has a race condition with clipboard managers - #51456 oleaut32:typelib: test_CreateTypeLib(SYS_WIN32) fails in 64-bit Wine - #51457 The 32-bit version:install fails in 64-bit wineprefixes (now todo) - #51780 The user32:msg output is too big in Wine - #52507 user32:win has some spurious GetScrollInfo failures - #52875 riched20:editor fails with the UTF-8 code page - #52877 user32:msg - test_dbcs_wm_char() fails in Wine in the Japanese and Chinese locales - #52909 rpcrt4:ndr_marshall crashes on the latest Windows 8.1, 21H1 and 21H2 - #52910 mshtml:htmldoc fails on Windows with the UTF-8 codepage - #52965 kernel32:locale - test_GetLocaleInfoW() and test_invariant() fail on Windows in Hindi - #52980 conhost.exe:tty - test_tty_input() fails in most locales on Windows - #53183 shell32:shelllink - test_load_save() randomly fails to delete test.lnk in Wine - #53199 dinput:force_feedback - test_windows_gaming_input() sometimes has unexpected reference counts in Wine - #53207 user32:msg - test_button_messages() fails randomly in Windows and Wine - #53208 user32:msg - The SW_SHOWMINIMIZED test in test_messages() succeeds in Wine with fvwm - #53211 ddraw:ddraw1 has over 255 failures on the debian11 TestBot VMs - #53233 ddraw:ddraw1 - test_clear() has rare failures in Wine on the debian11 VM - #53240 dinput:device8 - test_sys_mouse() has some rare failures on the TestBot VMs - #53254 urlmon:url - test_URLDownloadToFile_abort() sometimes fails on Windows 7+ - #53327 Ragnarok Online bad performance - #53342 quartz:mpegaudio - The 64-bit test_streaming_events() times out on fg-deb64 - #53530 mshtml:htmldoc - test_editing_mode(TRUE, TRUE) sometimes fails - #53568 16bit applications refuse to start wine 7.15+ - #53646 Multiple installers crash in user32 (Drakan, Star Wars, Colin McRae, X-COM, etc.) - #53678 vbscript can not compile CaseClausules that do not use a colon - #53684 ntdll:info is broken on Windows 8 to 10 1709 in the GitLab WineTest builds - #53686 The 64-bit kernel32:console is broken on Windows in the GitLab WineTest builds - #53783 vbscript can not compile private const expressions - #53814 TMUnlimiter 1.2.0.0 requires ini files with whitespace in the section to be parsed properly - #53895 ddraw:ddraw1, ddraw:ddraw2, ddraw:ddraw4, ddraw:ddraw7 - test_cursor_clipping() fails on dual screen setups in Wine - #53927 script56.chm help file pages not functioning properly due to wine missing beforeprint and afterprint html events - #53950 dup2 error returns ENFILE instead of EBADF - #53964 Redim should fail on fixed arrays - #53966 NCryptExportKey is not implemented - #53968 NCryptSignHash is not implemented - #53971 postgresql installer 9.3 needs support for Username in WScript.Network - #53972 BCryptSignHash does not support BCRYPT_PAD_PSS - #53987 Regression in print handling in Framemaker 8 - #53996 MDB Viewer Plus: can not open database - #53999 JGlossator crashes - #54009 Wine segfaults on startup on macOS 12 and 13 - #54012 kernel32:heap - The 64-bit test_GlobalAlloc() fails on Windows 7 - #54043 Studio One Professional 5 crash on launch with an unimplemented function USER32.dll.RegisterSuspendResumeNotification - #54057 prints do not work in any application - #54075 wldap32:parse - test_ldap_paged_search() sometimes gets LDAP_SERVER_DOWN in Wine, crashes - #54087 mshtml:events sometimes gets a failure in Protocol_Continue() on Windows - #54098 winhttp:notification fails and times out systematically in Wine - #54111 Unable to run "make install" after "makedep: Add a helper function to skip spaces in strings."
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
The Wine development release 7.22 is now available.
What's new in this release:
32-on-64 thunks for both Vulkan and OpenGL.
OpenLDAP library bundled and built as PE.
Support for the RAW print processor in WinPrint.
More progress on the long types printf format conversion.
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.22 (total 38):
- #41989 Musette crashes in winex11 - #45233 TIDAL installer can't launch installed program in 64bit WINEPREFIX - #48053 kernel32:change fails randomly (and rarely) in Wine - #49091 nProtect Anti-Virus/Spyware 4.0 'TKPcFtCb64.sys' crashes on unimplemented function 'ntoskrnl.exe.KeInitializeGuardedMutex' - #49297 Spark AR studio installer fails to start:Spark AR Studio is not supported in this version of Windows. Please upgrade to Windows 10 - #50097 comctl32:monthcal fails on Wednesdays!!! - #52511 Hemekonomi hangs on exit due to deadlock between loader_section and Win16 mutex - #52872 vbscript: incorrect codepage handling in Asc/Chr, causing tests failures on Hindi locale - #53130 ntdll:threadpool - test_tp_instance() fails (rarely) on Windows 8+ - #53131 ntdll:threadpool - test_tp_multi_wait() fails (rarely) in Wine - #53266 Syberia: game crashes frequently - #53268 urlmon:protocol - test_protocol_terminate() fails on Windows and Wine - #53288 Application compiled with MSVC 2022 ASan does not start, needs QueryVirtualMemoryInformation - #53296 USB Device Remover crashes on unimplemented function mscoree.dll.StrongNameTokenFromAssembly - #53387 Vernier USB sensors are not usable in WINE - #53402 fake dlls such as OPENGL32.dll won't load when their unix lib is linked by LLVM lld - #53429 opengl32:opengl fails on Debian 11 + Intel GPU - #53474 Change in memory handling gives crash in Framemaker 8 - #53529 Use wine with custom ld-linux.so.2 32-bit preloader, without hacks - #53670 vbscript can not compile if expressions with reversed gte, lte, (=>, =<) - #53677 invalid O_WRONLY read sets errno=EACCES instead of EBADF - #53741 Gothic II: Night of the Raven (v2.7) fails to start (failure to load msdbi.dll) - #53782 vbscript can not compile ReDim with list of variables - #53807 vbscript fails to redim original array in function when passed byref - #53867 vbscript fails to retrieve property array by index - #53868 vbscript fails to return TypeName for VT_DISPATCH - #53870 vkGetPhysicalDeviceSurfaceCapabilities2KHR passes invalid VkSurfaceKHR handle to driver - #53873 vbscript fails to compile Else If when If is on same line - #53909 opengl32.dll can't be loaded if win32u.so is not initialized first - #53915 Pivot animator runs into assert - #53919 crypt32:cert - testVerifyRevocation() uses an outdated certificate - #53923 tools/makedep during wine-7.21 build segfaults - #53930 Build broken with Clang in MSVC mode due to OpenLDAP import using getopt.h - #53932 ntlm_auth was not found or is outdated. - #53935 __unDName doesn't support 'G' and 'H' modifiers - #53940 VARA window is black when launched from RMS Express - #53954 Saints Row 2022 fails with Unimplemented function KERNEL32.dll.SetProcessInformation - #53967 Running anything hangs on start up Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
The holiday season is approaching, so today we offer a slightly
lighter, but interesting topic. After a period of tumultuous
development, Linux gaming has finally managed to win the trust of gamers
and convince them to the platform from under the penguin sign. Thanks
to digital video game distribution services, gamers can enjoy their
favorite Windows titles also on EuroLinux Desktop.
However, before trying to install Steam, you should make sure that
EuroLinux Desktop includes the required graphics drivers. If not, Nvidia
users should download the company's official drivers, and AMD users
should install the open Mesa drivers.
Compatibility layers
Wine – allows Windows programs to run on Linux using native Linux libraries, APIs and drivers.
Proton – Wine fork by Valve, with some special tools for additional compatibility.
Vulkan – a cross-platform, open-source graphics API
that is capable of using most DirectX calls present in Windows games.
Although you can install DirectX in Wine, a "more native" alternative is
to use just Vulkan.
A breakthrough for gaming on Linux systems was the introduction of
DXVK (DirectX to Vulkan), a tool for converting Microsoft DirectX 11 and
DirectX 10 graphics calls to Vulkan, an open source graphics API that
is compatible with Linux. DXVK is mainly used in Steam Play and is part
of the Proton group. The solution works differently than the traditional
emulator approach to gaming, where you have to use a Windows virtual
machine and play as if "inside it." DXVK allows translation and full use
of the computer's hardware resources. With this solution we get
comparable performance to the native version of the game.
ProtonDB
ProtonDB
is a service that compiles player experiences into a convenient-to-view
database where you can see how well a title performs on GNU/Linux. The
service has an actively growing community of testers who help improve
Proton. Users can easily check the game's compatibility rating, leave
reviews, and rate performance and compatibility. Game testers also leave
bug fixes and tips on what to do to fix a game and help it run on
Linux. Using the site, you can search for games from your library on the
homepage or link your Steam account to check the status of each game in
one go.
Steam
Steam is Valve's digital video game distribution service and store.
The Steam software client was launched in September 2003 as a way to
provide automatic updates for games developed by Valve. It was then
expanded in late 2005 to include the ability to distribute titles from
other game publishers. Steam offers various features such as digital
rights management (DRM), game server matchmaking and anti-cheat
programs, as well as social services and streaming games.
Civilization V game running via Steam on EuroLinux Desktop
To install Steam on EuroLinux 9 Desktop, run the following commands:
Proton is integrated into the Steam client via "Steam Play." To activate Proton, launch the Steam client and click the Steam menu in the upper left corner. Then click the Settings menu to open a new window, and the Steam Play button. At the bottom of the panel, select Enable Steam Play for Supported Titles and leave the Proton Experimental
selection in the drop-down list. The application will ask you to
restart the Steam client. If you want to try other games that are not
guaranteed to work on Linux, check the Enable Steam Play for All Other Titles checkbox.
GOG
GOG is a digital distribution platform service for video games and
movies. It makes many DRM-free digital games available for many
platforms, including Linux. A Linux version of the client is planned,
but an expected release date is not available. Nevertheless, in the
Software application in the FlatHub repository, you can find several
minimalist clients for this (Polish) provider. In addition, GOG provides
standalone game installers, so you can use it with any web browser. GOG
is also integrated with the Lutris platform.
Lutris
Lutris is a free and open source game manager for GNU/Linux. It
provides a consistent interface and community installation scripts that
automatically configure the Wine environment for specific game titles.
Lutris also offers integration for software purchased from GOG, Humble
Bundle, Steam and Epic Games Store. These can be run after logging into
the respective services, directly through the Lutris app. In addition,
Lutris supports more than 20 emulators, including ScummVM, DOSBox.
Dolphin, MAME, Snes9x, PCSX2 and PPSSPP. On EuroLinux Desktop, the
Lutris client can be installed directly from the Software application by
searching the FlatHub repository.
Lutris interface after GOG.com integration
Installing a game from GOG.com via Lutris
Game running on EuroLinux Desktop thanks to the Lutris service
The Wine development release 7.21 is now available.
What's new in this release:
OpenGL library converted to PE.
Support for multi-architecture PE builds.
More preparation work for Vulkan 32-on-64 support.
Support for creating import libraries without dlltool.
Locale data updates.
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.21 (total 25): - #29974 StarBurn 13 crashes on disabling skins - #51418 fotoBiz X - Fatal error on startup - #51779 Visual Studio msvsmon fails to bind server socket in child processes - #52467 Kaseya Live Connect 9.5.0.28 management software sub-component crashes - #53081 Retina Mode broken since 7f7f9fa22c5cbe629e79a54257d5bd21403e80db - #53100 Euphoria: freezes every second while controllers are plugged in - #53153 SetWindowPos() incorrectly computes exposure region of parent window with WS_EX_COMPOSITED - #53484 dxgi:dxgi times out on the debiant VM - #53590 GetFileInformationByHandleEx() not fully implemented causing boost::directory_iterator failures with boost v1.79 and newer - #53606 First intro stops on last frame in multiple games (Darksiders Genesis, The Medium) - #53617 Imaris fails at exit with error, and keeps a process running. - #53631 Multiple 64-bit applications have issues with dialogs (DipTrace, foobar2000 installer) - #53676 vbscript can not exec_script - invalid number of arguments for Randomize - #53738 Cherry MIDI sequencer cannot read files with a path including CJK characters - #53749 Hotel Giant 2: black screen after changing resolution or enabling anti-aliasing - #53768 Winfile crashes due to unimplemented user32.dll.DragObject - #53798 Port Royale 2: incomplete text rendering - #53849 Apiset DLLs broken in non-PE builds - #53856 Wine 7.20 installs some windows files to the wrong location - #53859 Hades shows black screen at Vulkan mode - #53861 Non-PE builds fail after "makefiles: Add support for multiple PE architectures." - #53872 Adobe Reader XI crash opening settings in Protected Mode - #53879 Gothic 1 doesn't launch (msdbi.dll failed to initialize) - #53888 vbscript does not allow Mid on non VT_BSTR - #53893 ws2_32:sock - test_WSASocket() gets an unexpected raw protocol name in French on Windows
Run Microsoft Windows Applications and Games on Mac, Linux or ChromeOS save up to 20% off CodeWeavers CrossOver+ today.
A Vulkan 1.3 capable driver and wine version are required to run this version of DXVK. See the driver support page for details.
Many features in this release, especially the shader compilation
changes detailed below, require the use of modern Vulkan features, such
as Dynamic Rendering, Extended Dynamic State, and Null Descriptors. Due
to the significant changes required to make use of them, it was no
longer practical to maintain and test code paths for older drivers which
do not support these features.
In practice, any system capable of running D3D11 and D3D12 games using Proton Experimental right now will be able to run DXVK 2.0.
Note: Third-party Vulkan layers that were not updated for Vulkan 1.3 will no longer work.
D3D9 changes
Memory management improvements
In order to reduce the likelihood of running out of address space in
32-bit D3D9 games, DXVK will now use memory-mapped files to store shadow
copies of textures. This allows us to unmap memory that is not being
used by the game, thus freeing up significant amounts of address space,
up to several hundred Megabytes. See PR #2663 for implementation details.
Note: This change does not affect 64-bit games since
address space is not a concern there. It also does not affect D3D10 or
D3D11 since resource uploads work differently in those APIs and are much
more memory efficient.
Render target feedback loops
On drivers which support VK_EXT_attachment_feedback_loop_layout,
reading from an active render target in D3D9 games is now properly
supported, which previously caused rendering artifacts on newer AMD
hardware and required driver-level workarounds. This affects a number of
games, including GTA IV.
Alpha test improvements
The D3D9 alpha test implementation was changed to more closely match
the behaviour of Nvidia's implementation, which fixes inaccuracies in
various games. The d3d9.alphaTestWiggleRoom option was removed, and games that previously required this option should now work correctly by default.
D3D10 changes
DXVK previously shipped incomplete implementations of d3d10.dll and d3d10_1.dll, but has not installed them by default since Version 1.6
since wine's implementation provides more features that are needed for
D3D10 games to run, including the D3D10 Effects framework.
Since our implementation is incomplete and has not been used by
Proton or Lutris for a very long time, DXVK will no longer ship these
DLLs starting with this release. The D3D10 API itself is still supported
via d3d10core.dll.
D3D11 changes
Feature support
DXVK now exposes D3D11 Feature Level 12_1 with the following newly added features:
Tiled Resources up to Tier 3, provided that the corresponding Vulkan sparse binding and sparse residency features are supported
Conservative Rasterization up to Tier 3, provided that the corresponding Vulkan conservative rasterization features are supported.
Rasterizer Ordered Views, provided that the corresponding Vulkan fragment shader interlock features are supported.
While no games are known to use these features directly in D3D11,
some games and game launchers rely on feature support being consistent
between D3D11 and D3D12 in order to allow users to enable D3D12 in the
game options. While our implementation of these feature is generally
functional, there may be bugs or performance issues in case a game does
use them.
Furthermore, DXVK now supports the D3D11_FEATURE_SHADER_CACHE and D3D11_FEATURE_D3D11_OPTIONS5 feature queries.
Note: AMD Vulkan drivers do currently not support fragment shader interlock and are limited to feature level 12_0.
Note: Intel's ANV driver currently does not support the corresponding Vulkan features and is therefore limited to feature level 11_1. This applies to both DXVK and vkd3d-proton.
Device contexts
The implementations of ID3D11DeviceContext were
refactored so that immediate contexts and deferred contexts no longer
use common entry points. This is closer to Windows behaviour and may
improve compatibility to third-party libraries and mods that hook into
the D3D11 immediate context specifically, and reduces CPU overhead since
some frequently used code paths are now more specialized for each
context type.
State clear and restore methods were optimized to further reduce CPU overhead in games that heavily use deferred contexts, e.g. Assassin's Creed: Origins, or explicitly call ClearState frequently, e.g. God of War.
Shader compilation changes
On drivers which support VK_EXT_graphics_pipeline_library, including the IndependentInterpolationDecoration
feature, Vulkan shaders will now be compiled at the time the game loads
its D3D shaders, rather than at draw time. This reduces or eliminates
shader compile stutter in many games.
In games that load their shaders during loading screens or in the
menu, this can lead to prolonged periods of very high CPU utilization,
especially on weaker CPUs. For affected games it is recommended to wait
for shader compilation to finish before starting the game to avoid
stutter and low performance. Shader compiler activity can be monitored
with DXVK_HUD=compiler.
Note: The relevant Vulkan features are currently only supported by Nvidia drivers (version 520.56.06 or later). Driver support is expected to improve in the future.
State cache interactions
This feature largely replaces the state cache. If the given Vulkan
features are supported, only pipelines that cannot use the pipeline
library feature (e.g. pipelines using tessellation shaders) will be
written to and read from the state cache, so newly created state cache
files will typically only contain a few dozen to a few hundred
pipelines, as opposed to thousands or tens of thousands. If the graphics
pipeline library feature is not supported, the state cache will be used
the same way as it was in older DXVK versions.
Note: State cache files created with DXVK versions prior to 1.4.3 can no longer be used.
Note: Despite our efforts, due to the significant
changes under the hood, there may be issues when using an older state
cache file under some circumstances. If you experience crashes, please
test if the game runs with a clean cache file (DXVK_STATE_CACHE=reset) before reporting a bug.
Caveats
Games which only load their D3D shaders at draw time (e.g. Witcher
3, most Unreal Engine games) will still exhibit some stutter, although
it should still be less severe than without this feature.
For 32-bit games, the implementation tries to aggressively free
Vulkan pipelines in order to save memory. This may cause stutter if the
driver's on-disk shader cache is not working properly.
On Nvidia drivers, the on-disk shader cache will be significantly
larger than with previous versions of DXVK. It may be necessary to
bypass the size limit by setting the environment variable __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1, or setting a new limit manually via __GL_SHADER_DISK_CACHE_SIZE (in bytes).
Linux build support
Work from dxvk-native
has been upstreamed in order to facilitate native Linux builds of DXVK,
which can be used as a drop-in replacement to port D3D applications
without having to change rendering code.
Note: When porting a D3D11 application, please refer to the Feature support and Developer Guidelines pages on the Wiki to avoid hitting unsupported or slow code paths in DXVK.
Repository changes
As part of cleaning up the repository, test applications that were of
limited usefulness, as well as our custom d3dcompiler frontends, have
been moved to the new dxvk-tests repository.
Vulkan and SPIR-V headers are now pulled in as submodules from the
original repositories. This changes how the repository needs to be
cloned and updated, or otherwise building DXVK will fail:
git clone --recursive https://github.com/doitsujin/dxvk.git
# Run the following command to make git pull# automatically pull in submodule updatescd dxvk
git config submodule.recurse true
The project wiki was also updated and expanded to be more useful.
Bug fixes and Improvements
Improved behaviour of DXGI waitable swap chains.
Improved implementation of DXGI frame statistics. Note: The implementation is still not accurate, especially in scenarios with multiple displays or if variable refresh rate is used.
Removed limitations on how many resources can be bound at the same time.
Removed several workarounds for specific Vulkan drivers or driver
versions. This is primarily relevant for Steam's shader pre-caching, as
the generated shader code no longer diverges as much depending on the
driver version and supported feature set.
D3D11 shaders now use the Vulkan memory model in order to more accurately implement UAV coherency rules in compute shaders.
Fixed various issuses with the D3D11.3 WriteToSubresource and ReadFromSubresource methods.
Fixed various float emulation issues in D3D9 applications.
Fixed seamless cube map filtering in D3D9 applications (PR #2889).
Fixed issues when rendering to DXGI_FORMAT_A8_UNORM (D3D11) or D3DFMT_A8 (D3D9) render targets with blending enabled.
Fixed a bug with dual-source blending when multiple render targets
are bound, which could lead to unpredictable results. This affects Elex 2 and potentially other games.
Fixed memory allocation logic on Intel integrated graphics.
Changed behaviour of the DXVK_STATE_CACHE environment variable, see the README for details.
Changed the DXVK_PERF_EVENTS environment variable to DXVK_DEBUG, see the README for details.
Alan Wake: Fixed a regression that caused grey rectangles to appear on screen on AMD GPUs. (#2834, PR: #2835)
Alice Madness Returns: Fixed an issue with flashing bright spots. (PR: #2939)
Anomaly: Warzone Earth: Fixed a deadlock when starting the game. (#1650, PR: #3035)
Beyond Good and Evil: Enabled 60 FPS limit to work around game bugs. (PR #2828)
Dragon Age Origins: Work around an out of memory issue when alt tabbing out of the game. (#3022, PR: #3023)
Empire: Total War: Fixed rendering. (#3017, PR #3018)
Final Fantasy XV: Improved performance when VXAO is enabled.
Grand Theft Auto IV: Disabled support for DF texture formats to make the game render mirrors in higher quality.
Heroes Of Annihilated Empires: Fixed crash. (#2879)
Limit King Of Fighters XIII: Enabled 60 FPS limit to work around game bugs. (#2647, PR #2831)
Metal Gear Solid V: Ground Zeroes: Work around texture streaming issues on GPUs with 4 GiB or more VRAM. (PR #2867)
SiN Episodes: Emergence: Work around an out-of-memory issue caused by the game creating an infinite number of textures. (PR #2907)
Sonic Generations: Improved performance by reducing GPU synchronization. (PR: #3009)