Announcement

Collapse
No announcement yet.

DXVK-Native Sees First Release For Easing Direct3D-To-Vulkan Game Porting On Linux

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by orzel View Post
    I didn't understant anything in the article. I think the point is that DXVK-Native is somehow related to DXVK though different. But I didn't understand the difference. And i know what vulkan, direct3D and such are.
    You use DXVK in Windows or in Wine, whereas you use DXVK-Native in straight Linux.

    Comment


    • #12
      Originally posted by orzel View Post
      I didn't understant anything in the article. I think the point is that DXVK-Native is somehow related to DXVK though different. But I didn't understand the difference. And i know what vulkan, direct3D and such are.
      DXVK_native is a Linux native .so file where DXVK is normally a PE DLL with windows based memory management and other things.

      There are platform differences here. DXVK-native may be important with wine hangover project in future.

      Vulkan and opengl do have platform unique things. Like there are places where NT Objects are used under windows yet the same functionality on Linux is done by file handle. Lot ways the differences between DXVK-Native and DXVK are the same kind of things as the difference between opengl on Linux and opengl on windows as in they are at core basically the same thing just with the difference for platform. Wine it self is not 100% overhead free. So for some games for valve going DXVK-native might be the difference between the game working great on the steam deck and being questionable on the steam deck.

      Comment


      • #13
        Originally posted by orzel View Post
        I didn't understant anything in the article. I think the point is that DXVK-Native is somehow related to DXVK though different. But I didn't understand the difference. And i know what vulkan, direct3D and such are.
        First sentence in the git project explains succinctly:

        "DXVK Native is a port of DXVK to Linux which allows it to be used natively without Wine."

        Comment


        • #14
          Originally posted by rabcor View Post

          Android, drop in the bucket he says...
          In terms of revenue of serious gaming titles? Yes. If the cross-platform aspect of Vulkan and therefore all the various platforms were responsible for significant revenue, we wouldn't be seeing so many DirectX games (or even Metal on mobile). The fact that these are basically the dominant form of game development indicate one thing: That is where the money is earned.

          I think, for many studios the logic is simple: PS5 and Xbox are necessary by default. That means whatever API Sony uses and DirectX. Once DirectX is up and running, there is no need for Vulkan on the PC since it is dominated by Windows. All other platforms are afterthoughts. Vulkans main problem IMHO is that it does not cover the consoles.
          Last edited by GruenSein; 11 August 2021, 01:44 PM.

          Comment


          • #15
            Originally posted by skeevy420 View Post
            With new stuff, sure, totally with you, but there are more use-cases like porting older stuff where Vulkan didn't exist when it was created so we need DirectXYZ to Vulkan layers. I imagine this is for games in that grey zone that still have their sources laying around somewhere. For games where they could support Linux if they didn't have to to recode it for Vulkan
            Sort of like how SDL2's Render API was intended as a GPU-scaled, Steam Overlay-compatible, cross-platform target for porting of old DirectDraw code.

            Originally posted by geearf View Post
            You use DXVK in Windows or in Wine, whereas you use DXVK-Native in straight Linux.
            Think of it like winelib. It lets you make minimal modifications to your code which calls a Microsoft API and then compile the result to a native ELF binary rather than an EXE loaded through Wine's PE loader.

            Comment


            • #16
              Originally posted by orzel View Post
              I didn't understant anything in the article. I think the point is that DXVK-Native is somehow related to DXVK though different. But I didn't understand the difference. And i know what vulkan, direct3D and such are.
              dev's can use directx with native linux library (if exist) , instead of windows library on wine , for easier port and better performance , but the problem will remain with library problem in linux

              Comment


              • #17
                Originally posted by ssokolow View Post
                Think of it like winelib. It lets you make minimal modifications to your code which calls a Microsoft API and then compile the result to a native ELF binary rather than an EXE loaded through Wine's PE loader.
                Not exactly you end up from the winelib process what is sometimes called pe/elf. Its not exactly pure native ELF binary. The reason why you have to use wine PE loader is you still have PE structures that must be processed. Worse you still need windows memory layouts, registry. Horrible a pe/elf can be slower than using a PE with the wine PE loader itself. Making more dll pure PE(made with mingw) and pure ELF(made with normal platform gcc) that going on with wine has many reasons. The fact the winelib middle ground is not ideal is one of them

                Comment


                • #18
                  too bad that this will only result in devs avoiding vulkan with all their might
                  i wonder if game devs in general are incapable of migrating their engine to vulkan.

                  for one of the game that i play, devs announce, after probably 10 years from launch, that they will upgrade their engine from dx9 to.....dx11. at this point i really wonder if these devs are unable to think out of dx "standards"

                  Comment


                  • #19
                    Originally posted by rmfx View Post
                    Modern games engines all support Vulkan.
                    First question is why using DX in the first place then wrappers after, when you can just use the best API that’s crossplatform ?
                    Not all game engines do. and unlike what many people say, porting to vulkan is RARELY as easy as flipping a switch. Vulkan can be hard to debug for beginners DirectX is honestly much easier to work with as a beginner. for more advanced studios, it's a matter of being used to programming in dx11 and not seeing a need to migrate.

                    Comment


                    • #20
                      From what has been seen, a poor Vulkan or DX12 implementation may perform below DirectX11 levels, but a decent implementation, for a game which did not target Vulkan during development, is much work. Is the idea, from a devs standpoint, that DXVK-Native will hit parity with even less effort than a poor port? 'I might be willing to build my game for Linux but I don't want to redo the rendering'?

                      Originally posted by andrei_me View Post

                      First sentence in the git project explains succinctly:

                      "DXVK Native is a port of DXVK to Linux which allows it to be used natively without Wine."
                      I read a while back that Gallium Nine was split from Wine. Can it also be used without Wine?

                      Comment

                      Working...
                      X