I compile wine from source, and use that exclusively to play WoW. When I install the new dxvk releases, using winetricks and the setup verb, if I compile and install a new copy of wine, do I need to reinstall dxvk? Are the dxgi and other files overwritten by my wine builds when I install my compiled wine?
Don't know, why don't you just try it out?
No, you shouldn't need to reinstall DXVK. DXVK are DLLs in your game directory which aren't affected by a wine re-installation.
@tgharib that is just false, DXVK dlls are copied to the prefix's system32 and syswow64 directories. There is a good chance wine overwrites these.
Just set DXVK_HUD=1 in the environment after a wine upgrade and check to see if the HUD still appears.
Probably compiling a new build every time will nuke DXVK and probably prefixes you've made.
If you're not cherry picking , why not use Wine normally? Let it be staging or devel.
@doitsujin , I will, and let you know how it goes, staging updates about every 3 days, so that is how often I build new wine from source. On the next build, after install I will run and see if the fps are affected.
@Leopard1907, No, the prefix is not nuked, when I install new versions, that I compiled. Been compiling since wine 2.19. Wine staging is the only way WoW would run, and before PBA and DXVK, the best fps was around 12, using same settings as my windows 10, which was running around 130 in the same areas in game. PBA was the first external patch I used, and it was good, but BFA dropped DX9 support, and DXVK gives good DX11 support. PBA does not benefit DX11 much, because wine itself is still working on DX11.
@ryao, I have that already, and as stated to @doitsujin , I will see if my next compile and install overwrites the dlls that DXVK installs.
@tgharib , what @Guy1524 told you is correct, if you look at the setup_dxvk.verb in the dxvk folder, you will see it copes to the windows system folders, in your wine prefix.
Then why don't you use Staging binaries if you're not cherry picking? I'm also using Staging with binaries and DXVK stays there after updates.
@Leopard1907 , I compile, to take maximum advantage of my CPU, by compiling the code to match the architecture of my CPU.
If you want to be on the safe side, simply put the dll's in the game's folder, set them to native from winecfg and you're done.
Whenever I upgrade to a newer version of Wine, I normally move the game's folder outside the prefix then I recreate the prefix anew and move the game back in.
@Jrugia That will most likely not work, as windows uses "system dll's" most of the time. Putting the DXVK dll's in the gamefolder (World of Warcraft) i do not think works, as loads of other stuff also loads alongside (Battle.net++) that are in different folders, and tend to load .dll's from windows system folders. (Also think this has been explained someplace else... has to do with some way windows 7 and newer loads stuff)
@SteveEbey73742 I dont use the winetricks install, so i am not entirely sure HOW that is done... But i think the setup script in the DXVK archive does pretty much the same i do:
That way the only thing you need to do when upgrading DXVK is to replace your DXVK folder (Symlinks still works). Upgrading wine does NOT replace symlinks inside your prefix, so you can swap wine versions as much as you want with that wineprefix.
If you want to disable DXVK, delete the symlinks and dll overrides and do a wineboot -u or similar to replace the missing dll's with wine defaults.
PS. I am at work atm, so typing a guide from memory would probably suck... If you want @SteveEbey73742 i can make up a quick one for all the symlink creation you want?
@SveSop , I am running the latest dxvk and there is no setup script, just the winetricks verb. as to the other comments made, I have the windows folders for WoW symlinked to the wine prefix I use, and that works just fine. As stated in one of my earlier replies here, I will compile wine when staging updates, and see what happens when I install wine. If it does overwrite the dlls for dxvk, I will know. Once I do that I will post here, and close this issue.
@SteveEbey73742 Oh, i see that now. It used to have a "install script" included.
I can't say i know how to read or interpret the setup_dxvk.verb... Probably winetricks "understands" whatever references in that one :) ("/usr/lib64/wine/dxvk" ? What folder is that?)
When i do it "my way", its a bit more work when i do it, but no need to ever change it for that wineprefix, and it works with changing wine versions and dxvk versions :)
Hmm.. i might fire up a VM just to check what that script does tho :)
@Jrugia That will most likely not work, as windows uses "system dll's" most of the time. Putting the DXVK dll's in the gamefolder (World of Warcraft) i do not think works, as loads of other stuff also loads alongside (Battle.net++) that are in different folders, and tend to load .dll's from windows system folders. (Also think this has been explained someplace else... has to do with some way windows 7 and newer loads stuff)
@SteveEbey73742 I dont use the winetricks install, so i am not entirely sure HOW that is done... But i think the setup script in the DXVK archive does pretty much the same i do:
1. Compile/extract whatever version of DXVK in a folder of your choosing. (eg. $HOME/dxvk) 2. Delete the wine created d3d11.dll and other DXVK dll's and then replace them with symlinks to the respective 32 and 64 bit dll's in your wineprefix windows/system32 (64 bit) and windows/syswow64 (32 bit). 3. Set up .DLL overrides in winecfgThat way the only thing you need to do when upgrading DXVK is to replace your DXVK folder (Symlinks still works). Upgrading wine does NOT replace symlinks inside your prefix, so you can swap wine versions as much as you want with that wineprefix.
If you want to disable DXVK, delete the symlinks and dll overrides and do a wineboot -u or similar to replace the missing dll's with wine defaults.
PS. I am at work atm, so typing a guide from memory would probably suck... If you want @SteveEbey73742 i can make up a quick one for all the symlink creation you want?
I don't know about WoW, but it works well with the offline games I play.
Updated wine, installed it, and it appears to leave the dxvk files alone. I ran WoW, and dxvk shows to have the same performance, maybe 1-2 fps higher, with the latest staging patches. I have also had vulkan update, and installed the newest dxvk release, so will test those as well.
Can confirm. I use wine-staging I've compiled myself and dxvk for WoW. I've never needed to reinstall dxvk after upgrading WINE.
Most helpful comment
@tgharib that is just false, DXVK dlls are copied to the prefix's system32 and syswow64 directories. There is a good chance wine overwrites these.