Disclaimer: as you may or may Not Tell I’m Not the Most knowledgable about proton.

So i noticed there are few games where you can switch out graphics APIs when launching or in the ingame settings. One of the examples that come to my mind Off the top of my head is peak Where you can choose via Launch between dx11/12 and vulkan

I know That Proton is Software that translates directx api calls to vulkan for Max Performance. So I’m wondering whether it even would make Sense to switch the graphics api to vulkan if proton already seems to fully Support dx11/12? Or whether proton is still going to think the games are directx and do some weird translation stuff?

  • UntimedDiffusion@piefed.zip
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    1
    ·
    21 hours ago

    Just to clear up some terminology, Proton is a fork of Wine which is used to translate a Windows exe into a Linux readable program. DXVK is what translates D3D into Vulkan (fun fact: it’s not Linux specific, it can be done on Windows)

    I’ve never actually played a Windows version of a game using Vulkan, but I believe Proton would be able to tell and use your system’s native version of Vulkan. I say try it out and tell us how it goes

    • INeedMana@piefed.zip
      link
      fedilink
      English
      arrow-up
      14
      ·
      21 hours ago

      I don’t intend to overly nit-pick, but since OP said themselves they are new to this: Wine doesn’t translate the exe. It translates system calls from Windows ones to Linux ones. So to have an example: opening a file would be some system call in both systems. But, of course, different because the OSes are different. An exe would be calling Windows one. What WINE/Proton do is get that call and translate it into Linux system call, so that .exe can still open a file, as if it was running in Windows

      As for OPs question: AFAIK when using dx11 you will still in the end be using Vulkan, just through DXVK (as this comment said, translates dx calls into Vulkan calls). Theoretically setting to use Vulkan in the game itself might have less overhead (no DXVK in the middle) but it’s a mixed bag in my experience. I think that Windows Vulkan support is just not yet there, so the in-game code for Vulkan is so-so.
      I second this: you have to check on which setting each game works better

      • dgdft@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        8 hours ago

        Linux cannot natively run the .exe binary format (Portable Executable).

        WINE handles mapping the bytecode into a structure Linux can use, and it’s fair to call that translation. Translating syscalls is WINE’s biggest functionality but not its only one.