DXVK Guide

Discussion in 'Linux Guides (Generic)' started by booman, Jul 12, 2018.

  1. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    This guide will walk you through setting up Nvidia drivers, Wine versions and DXVK version for DirectX 11 games in PlayOnLinux

    1. Install Nvidia 440

    Use the Driver Manager or Additional Drivers (Mint/Ubuntu) to install Nvidia 440 drivers
    Reboot

    If you don't see 440 then you may have to enter this PPA:

    Open Terminal
    Run command
    Code:
    sudo add-apt-repository ppa:graphics-drivers/ppa
    Refresh Driver Manager
    Check Nvidia 440
    Click Install
    Reboot

    2. Install Vulkan Linux Libraries

    Launch Terminal
    Run the following commands:
    Code:
    sudo apt-get install libvulkan1 libvulkan1:i386
    Press Enter
    Reboot

    3. Vulkan Install Check
    Verify that Linux Vulkan is installed with the following command:
    Code:
    vulkaninfo
    Press Enter

    Note: Will also show you Vulkan version

    4. Install Wine
    Be sure to Have PlayOnLinux 4.3.4 Installed: Download
    Install 32-bit and 64-bit version of Wine 5.0 (or newer)

    6. 64-bit Virtual Drive
    Create a 64-bit Virtual Drive through Manual Installation in PlayOnLinux

    7. DXVK Installer (DLLs & Registry Entries)

    Go to: https://github.com/doitsujin/dxvk/releases
    Download DXVK 1.7
    Extract to your desktop

    Note: Newest versions are only compatible with beta versions of Nvidia drivers

    8. Copy/Paste DLLs

    Copy the DLLs into the game directory where the game executable is run.:
    • d3d10_1.dll
    • d3d11.dll
    • dxgi.dll
    • d3d10.dll
    • d3d10core.dll
    • d3d9.dll
    64 vs 32 bit:
    • If the game is 64-bit, copy the 64-bit dlls
    • If the game is 32-bit, copy the 32-bit dlls
    or Place 64-bit DLL in:
    /home/username/.PlayOnLinux/wineprefix/game/c_drive/Windows/System32

    or Place 32-bit DLL
    /home/username/.PlayOnLinux/wineprefix/game/c_drive/Windows/syswow64

    Note: d3d11 and dxgi already existing?
    Overwrite them!


    9. Wine Overrides
    1. PlayOnLinux Configure
    2. Select your Virtual Drive
    3. Wine Tab
    4. Configure Wine
    5. Libraries Tab
    6. Add the following overrides:
      d3d10_1
      d3d11
      dxgi
      d3d10
      d3d10core
      d3d9
    7. Click Edit, change them from (native,builtin) to (native) Windows:
      d3d10_1 (native)
      d3d11 (native)
      dxgi (native)
      d3d10 (native)
      d3d10core (native)
      d3d9 (native)
    Note: You can type in the override name instead of searching, just be careful of typos

    10. Enable DXVK HUD

    PlayOnLinux Configure
    Miscellaneous Tab
    Command to execute before running program
    Enter this Command: export DXVK_HUD=devinfo,fps

    Note: Turn off DXVK HUD by removing the command

    Close Configure

    11. Run Game

    If you see Vulkan info like FPS and Nvidia information
    Its working!

    Some games are still not 100% functional and still may not run properly. DXVK is releasing updates on a regular basis, but you may have to install the newest versions of Nvidia and Wine staging.
    Other games like Fallout 4 still have bugs and do not run without patched versions of Wine.

    Crackling Sound or No Sound
    Some games like Metro will have really bad crackling audio
    To fix this make sure you added the library xaudio2_7
    Download DirectX 2010 Runtime
    Save to your desktop

    Install in your virtual drive
    Select your game in PlayOnLinux
    Click Configure
    Miscellaneous Tab
    Click "Run an exe in this virtual drive"

    Find Direct X 2010 Runtime on your desktop
    Enter the path where it will extract (create a folder because it extracts a LOT of files)
    Finish

    Back to Miscellaneous Tab
    Click "Run an exe in this virtual drive" again
    Navigate to the folder where you extracted the files
    Select "DXSETUP.exe"
    Follow the steps
    Click Finish

    DXVK Game Guides:
    Metro 2033 Redux
    Metro Last Light Redux
    Bioshock 2 Remastered
    Bioshock Remastered
    Watch Dogs
    Assassin's Creed III
    Darksiders Warmastered
    Darksiders II Deathinitive
    Last edited: Jun 15, 2020
    jury and batmanm0b1e like this.
  2. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    One way to avoid all of these steps for multiple games is setting up everything in a generic Virtual Drive
    /home/username/.PlayOnLinux/wineprefix/

    Name a Virtual Drive: masterdrive

    Then when you want to test a game with DXVK you just copy the folder and rename it.
    This new Virtual Drive will show up in PlayOnLinux Configure

    This way Wine 3.12 Staging, DXVK is already installed and setup.
    You can now install the game from the Miscellaneous Tab and create shortcuts with the General Tab.
  3. batmanm0b1e

    batmanm0b1e Active Member

    Joined:
    Feb 12, 2018
    Messages:
    184
    Likes Received:
    31
    Trophy Points:
    28
    I'm lost on this part? what folders do you mean

    (Then when you want to test a game with DXVK you just copy the folder and rename it.)
  4. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    Go your your .PlayOnLinux directory in your home.
    Open Wineprefix and you will see all of your Virtual Drives.

    What you can do is setup a "generic" Virtual Drive with no games installed, but have all the basic packages, DXVK and Wine setup. So all you do later on is copy the "generic" folder and rename it.
    Then install your game.
    This way you don't have to do it over and over and over again.
    batmanm0b1e likes this.
  5. batmanm0b1e

    batmanm0b1e Active Member

    Joined:
    Feb 12, 2018
    Messages:
    184
    Likes Received:
    31
    Trophy Points:
    28
    Aaah now i get it :)

    so i'm just making VD and installing the necessary DXVK stuff and then copying the folder somewhere. So then don't have to do these step millions of times. Great idea booman:)
  6. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    Yup, you can leave it in /home/batman/.PlayOnLinux/wineprefix directory if you want.
    I have one called: masterprefix
  7. Sputnik_tr_02

    Sputnik_tr_02 Member

    Joined:
    Apr 3, 2018
    Messages:
    33
    Likes Received:
    7
    Trophy Points:
    8
    @booman Hey booman DXVK now has dx10 support as well. We have 3 more .dll files to set up. They are included in the latest release (0.70)

    d3d10.dll
    d3d10_1.dll
    d3d10core.dll

    i updated my guide post for S.T.A.L.K.E.R
    Peace.
  8. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    Thank you for the tips.
    The question is, do I keep this guide because it refers to Nvidia 396.24.02 and DXVK 0.60 or do I update it with the newest versions?
    Or... do I create a new one for 0.70?
  9. Sputnik_tr_02

    Sputnik_tr_02 Member

    Joined:
    Apr 3, 2018
    Messages:
    33
    Likes Received:
    7
    Trophy Points:
    8
    @booman I think you should update this guide for 0.70 unlike wine there is little to no reason to use older version of DXVK. There is not much to change since we are installing it manually, just three more .dll files to setup and latest Nvidia driver. DXVK is advancing rapidly it's hard to keep up. Right now recommended driver version is 396.51 for Nvidia users. Older versions likely to cause problems in certain games.
    booman likes this.
  10. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    I agree
    When I checked my driver manager after some system updates, turns out now I'm using Nvidia 396.51
    I didn't even see this update in the list???
    Anyways, I downloaded 0.70 and will probably update this guide.
    Its Debian, Ubuntu, Mint specific anyways... so it doesn't apply to everyone
  11. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    Guide updated for Wine 3.14 staging 64-bit and DXVK 0.70
    gamesrule likes this.
  12. jury

    jury New Member

    Joined:
    Jun 2, 2016
    Messages:
    16
    Likes Received:
    2
    Trophy Points:
    3
    I'm lost at point:

    From where do I take those files?

    Edit:
    Damn, its late ...
    Please disregard above question. I found the source of those dll's :)
    Last edited: Jul 20, 2019
    booman likes this.
  13. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    Welcome to the forum!

    GREAT!
    What game are you trying to play?
  14. jury

    jury New Member

    Joined:
    Jun 2, 2016
    Messages:
    16
    Likes Received:
    2
    Trophy Points:
    3
    ( I answered 2-3 days ago but somehow my answer did not show )

    I'm trying Aven Colony. And I finally managed to run this game! :)
  15. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
  16. jury

    jury New Member

    Joined:
    Jun 2, 2016
    Messages:
    16
    Likes Received:
    2
    Trophy Points:
    3
    Ups, didn't notice that.
    And by the way, thank you for this nice dxvk guide!
    booman likes this.
  17. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    No problem!
    I try to keep it up-to-date as well.
    Hopfully its not much different on other Distros like Ubuntu, SuSE, Manjaro, etc.
  18. Lorena

    Lorena Member

    Joined:
    May 11, 2016
    Messages:
    166
    Likes Received:
    22
    Trophy Points:
    18
    Location:
    Buenos Aires - Argentina
    this will work for any game? Lets say my old wow 1.12.1?
    that is giving me problems with fps and performance?
    booman likes this.
  19. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    8,339
    Likes Received:
    624
    Trophy Points:
    113
    Location:
    Linux, Virginia
    Home page:
    It is possible. DXVK has support for DirectX 10/11 games but also DirectX 9 games. It really depends on the game.
    As long as you have Vulkan installed and your video card and drivers support Vulkan... you can give it a try. It doesn't hurt to try it out. No performance gained? Then go back to stable Wine or staging Wine.
  20. Lorena

    Lorena Member

    Joined:
    May 11, 2016
    Messages:
    166
    Likes Received:
    22
    Trophy Points:
    18
    Location:
    Buenos Aires - Argentina
    Ok here I go again...
    I do all the guide until point 6
    Cant create the 64 bits virtual drive. Playonlinux gives error.
    Tried from Configure>new drive and nothing
    doesnt create any drive_c or dosdevices folders
    btw wow 1.12.1 is directx9 the game is from 2006 if Im not wrong.
    should i use 64 bits driver for the game?
    booman likes this.

Share This Page