• SuperIce@lemmy.world
    link
    fedilink
    English
    arrow-up
    29
    arrow-down
    2
    ·
    11 months ago

    But why this instead of DXVK or VKD3D? Those can just as easily be integrated.

    • angrymouse@lemmy.world
      link
      fedilink
      arrow-up
      17
      arrow-down
      3
      ·
      edit-2
      11 months ago

      Both use wine iirc, Op is talking about applications written directly for Linux.

      Edit: im wrong

      • SuperIce@lemmy.world
        link
        fedilink
        English
        arrow-up
        55
        ·
        11 months ago

        Wine uses VKD3D and DXVK, not the other way around. People have even used DXVK on Windows to improve performance in certain situations.

          • Atemu@lemmy.ml
            link
            fedilink
            arrow-up
            18
            arrow-down
            1
            ·
            11 months ago

            There is no such thing as “directly” DX. The drivers of the major GPU vendors on Windows must also implement DX ontop of their internal abstractions over the hardware.

            While Vulkan will theoretically always have more “overhead” compared to using the hardware directly in the best possible manner, the latter isn’t even close to being done anywhere as it’s not feasible.

            Therefore, situations where a driver implemented atop of VK being faster than a “native” driver are absolutely possible, though not yet common. Other real-world scenarios include Mesa’s Zink atop of AMD’s Windows VK driver being much better than AMD’s “native” OpenGL driver, leading to a dev studio of an aircraft sim shipping it in a real game.

          • 520@kbin.social
            link
            fedilink
            arrow-up
            3
            ·
            edit-2
            11 months ago

            IIRC the main DXVK dev does this for debugging purposes.

            As to why it might be faster, it depends on the DX implementation and what it’s being transformed into. If the original DX implementation, especially pre-DX12, is wasteful in terms of instructions, and DXVK knows of a better way to do the exact same thing in Vulkan, it can potentially offset the translation costs.

          • ⸻ Ban DHMO 🇦🇺 ⸻@aussie.zone
            link
            fedilink
            English
            arrow-up
            2
            ·
            11 months ago

            The APIs aren’t wildly different so it’s not so much translation but an implementation of the DirectX API. Some GPU vendors have better Vulkan drivers than DX (Intel) which may give performance improvements.

          • Kekin@lemy.lol
            link
            fedilink
            arrow-up
            2
            ·
            11 months ago

            I used DXVK for Dragon’s Dogma on Windows because it ran better overall, vs Directx 9 which the game uses natively.

            This was on an AMD Rx 6800 xt

          • SimplyTadpole@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            1
            ·
            11 months ago

            Besides speed, it’s also really useful for older games with unstable graphics renderers that don’t play nice with modern hardware. When I was still on Windows, I used DXVK on Fallout: New Vegas and Driver: Parallel Lines, and they decreased crashes by a LOT compared to when they ran on native DX9.

            In terms of speed, obviously I didn’t notice much of a difference with D:PL since it’s a 2006 game that’s not demanding at all, but I did notice F:NV seemed to also run better and less laggy in general (not only is FNV poorly-optimized, but I also use a lot of graphics mods for it).