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

  • #41
    Originally posted by Linuxxx View Post
    A:
    They keep the Vulkan backend around & continue maintaining it.

    B:
    They rip out any & all Vulkan code as if it is poisonous and implement a Direct3D 12 renderer as the only option, since their Xbox consoles don't support anything else anyway.

    I'd really wish for the former, but regretably accept that it is going to be the latter.

    The truth is, the future for Vulkan in AAA games is looking rather bleak, unfortunately!
    Its not as straight forwards as it would seam. WSL2 to support graphical applications from Linux will be needing a vulkan to dx12 unless Microsoft follows google lead and moves to vulkan pass though instead of dx12. Just like we have a MoltenVK vulkan to metal for macos if Microsoft remains on the dx12 as the wsl2 pass though they will be needing a vulkan to dx12 as well.

    Microsoft work on opengl to dx12 has also stalled. Please note one mostly solo developer has got zink on vulkan to support most of opengl already. Microsoft also started first.


    Vulkan Portability Implementation. Contribute to gfx-rs/portability development by creating an account on GitHub.


    Its really simple to miss. I have a vulkan pure engine game its possible using the gfx-portability for the game to run on DX 9-12 and opengl as well unmodified.

    Direct3d 12 also when you look closer is problem. Over half the release commerical games with Direct3d 12 support are in fact a vulkan game engine using a vulkan to dx12 abstraction.

    Basically there is a C option you did not consider. Taking over ID-Tech 7 gives Microsoft Vulkan experienced developers. These vulkan experienced developers will be useful to get gfx-portability to work better for Microsoft. Yes Microsoft is needing this for WSL2.

    The C option. ID-Tech 7 keeps it vulkan backend and now ships with gfx-portability for everything else. Yes gfx-portability will in fact allow vulkan application basically on modified Xbox consoles.

    khronos took a very warped turn with Vulkan instead of making graphical driver API they made a graphical abstraction API/ABI. Yes this is also why valve says they don't need to work on dx12 backend in their engines because the vulkan abstraction will do that for them.

    Comment


    • #42
      Originally posted by arQon View Post

      Yeah.

      Although the landscape is very different now, this does remind me a little of what went on 20 years ago: back when DX was new, MS used its power as a publisher to do everything they could to kill OGL (in a separate effort from killing it on the OS side too) by telling game companies that they would only publish DX games. That put enough pressure on all the small and medium-sized studios to HAVE to either abandon OGL or lose any chance of MS potentially picking up their product later, at a time when there weren't that many publishers available to work with, and they were starting to become a necessity to bankroll games. (The asset count and complexity of games skyrocketed with the move to 3D).

      The Zeni buyout was unrelated to technology - id's licensing is much smaller these days than it used to be, and Bethesda's Gamebryo is for in-house use only (which is good, otherwise we'd have hundreds of games with their janky-ass tech in them :P) - but that doesn't mean the acquisition can't be used to help send a message. When the next release of a flagship title that showcased just how good Vulkan could be switches to DX12 instead, that's a lot of marketing ammunition to imply that anyone planning on using VK is "Doing It Wrong" and should be on the DX "team" instead.

      I don't think people really understand just how critical to MS's desktop dominance DX has been over the years, and still is now, especially over the last decade as more and more once-programs simply become browser-based interfaces. Office and AD can lock in the business side of things, but when Little Timmy wants a PC it's only games that matter, and he only has one option if he wants to be able to play Minecraft or Fortnite or whatever the tween flavor of the month is. That feeds into a virtuous cycle of "everyone 'knowing' Windows" by the time they reach high school, and keeping Windows the only PC platform worth developing games for.

      DX has been worth literally billions to MS, and they will do everything in their power to ensure that not a single grain of sand slips through their fingers on this front.

      Sony and Apple are hardly free of blame, as they were in a position to finally smash that wall but screwed the pooch instead - but that's a rant for another day.
      Since You obviously have proper insights into the gaming industry (any hints to the projects You've been involved with welcome ), I'd like to kindly ask You to tell us more about Sony's part in all of this.

      AFAIK, starting with the PS3, their programming model is resembling the DirectX way on purpose, since they switched over from developing their own convoluted, Japanese-style hardware units (Emotion Engine), to instead relying on Western manufacturers (nVidia for the PS3's GPU).

      So how could've Sony been able to threaten Microsoft's dominance with DirectX?

      FWIW, their recent (out-sourced) PC ports of newer PS4 titles are all Direct3D-utilizing, too.

      Any further explanations from You would be highly appreciated.

      Thanks!

      Comment


      • #43
        Originally posted by oiaohm View Post
        Direct3d 12 also when you look closer is problem. Over half the release commerical games with Direct3d 12 support are in fact a vulkan game engine using a vulkan to dx12 abstraction.
        Please stop writing absolute non-sense like this!
        And no, it doesn't make you look very smart!!

        Comment


        • #44
          Originally posted by Linuxxx View Post
          FWIW, their recent (out-sourced) PC ports of newer PS4 titles are all Direct3D-utilizing, too.
          This statement is lacks detail this is detail is important and its also false. Direct3D 11 utilising makes sense for games that use sony gnmx as this closer to direct x 11.

          Originally posted by Linuxxx View Post
          Please stop writing absolute non-sense like this!
          And no, it doesn't make you look very smart!!
          No what I wrote is not non-sense. It is true about half of the games for DX12 are in fact Vulkan engines. There are groups who do look at the way software works looking for stolen IP.

          Porting the PS4® game Detroit: Become Human to PC presented some interesting challenges. This first part of a joint collaboration from engineers at Quantic Dream and AMD discusses the decision to use Vulkan® and talks shader pipelines and descriptors.

          Interesting enough sony gcn is close to both vulkan and dx12. Sony gcn for the way it functions is closer to Vulkan than dx12. But play-station games using gcn being ported to windows will commonly use vulkan as their first port due to market access. Direct X 12 being restricted to Windows 10 yet Vulkan worked all the way back on Windows 7 does make a very big difference for the number of customers you can sell to.

          A playstation game port to windows goes 1 of 2 ways in most cases.
          1) Direct x 11 because that that simplest for games that just us sony gnmx using games.
          2) Vulkan for sony gcn using games due to the broader market share. With a custom vulkan abstraction layer back to direct X 12.

          Yes ported play-station games that have a vulkan/direct x 12 backend the best game play is normally force the vulkan.

          The detroit 1 game is a example that heavily uses sony gcn so is incompatible to be ported to Direct X 11.

          The reality is go back and look at the recent ported playstation games again. You will find that they are vulkan or dx 11 core engine ports yes this split is based on was the game using sony gcn features that made it dx11 incompatible or not. DX 12 is being a after thought that end up being done as a Vulkan to Dx12 abstraction.

          Comment


          • #45
            > AFAIK, starting with the PS3, their programming model is resembling the DirectX way on purpose

            No, you're a generation early on that. The PS3 was Cell-based, and a massive pain in the ass to do anything with. Theoretically more powerful than the 360, but in practice the amount of work needed to actually achieve that was so ridiculous that almost nobody bothered. (And if they tried, they generally ended up shipping at least 6 months late). Being familiar enough with the HW to wrangle it properly improved a great deal over time, but we're talking multiple years.

            Originally posted by Linuxxx View Post
            tell us more about Sony's part in all of this.
            I think you've got the wrong impression, sorry: what I meant was that they (both) simply chose to NOT do the one thing that would have improved the situation for both of them, while harming their main competitor: adopt an open, standardized graphics API with a future, i.e. VK. Instead, Apple went with Metal (which is very good, but as usual is focused on "Apple being special") and refused to move on from it; while Sony went with yet another custom API in the PS4 (even Mantle wasn't quite around yet then).

            I don't know what's in the PS5, but I assume it's "yet another custom API" yet again (or more likely, "as well", given how good the backwards compatibility is), except this time it'll be a Mantle derivative of some sort.

            The thing is, the *whole point* of Sony's switch to x86 APUs was to reduce porting overhead, because they'd seen how badly all the extra work affected the PS3's library, with games either not getting ported at all, or - even worse in some says - getting a port that sucked, making the XBox look like the better system.
            If Sony had adopted VK, even without pushing it at all, let alone as hard as MS pushes DX, they'd have been able to tell devs the same story that MS does: "Develop for console, get PC for free". Similarly, Apple could have moved on from Metal to VK with almost no effort, adding another market and thus a further incentive, improving one of OSX's most-mocked lacks.

            Literally everybody involved - Sony, Apple, developers, and users - would have won. Even that probably wouldn't have been enough to fully break MS's stranglehold on PC gaming, but it would certainly have put a bigger hole in the wall than we have currently. There'd still be a requirement to support DX12 so that you can sell on XBox, and the Windows version would also use that, but anyone developing for PC-only would have been able to target VK only and just stop there.

            For a small dev house that's a huge win over having to either double the number of backends you're working with, or having to just pick one: and when nearly all the money is in one platform, which platform do you think they *have to* pick?
            (inb4 the inevitable non-developer "But DX12 and VK are basically the same anyway so it's like super easy" comments - it *doesn't matter*: it's still *more work*, and the reason Linux doesn't have games is *because* of that "more work").

            APIs are becoming less relevant each year, as engines abstract more and more of the underlying systems away, but for the handful of devs actually writing their own engines still, it matters. Those companies are also the ones making most of the AAA games - the ones that determine what a gaming platform "is", really - and every obstacle you put in their way to any given platform needs a financial incentive to be worth overcoming. For the PSx, the rewards are worth it. For anything else though - even the deep pockets of Apple fanbois - they aren't.
            VK on PS5 and OSX would have moved the needle on that just enough for it to at least be worth trying for a few houses, and if it had paid off (which is very much open to debate, but I think it's almost certain that it would have) others would have followed, because money. This post is already WAY too long, but I'm sure you can figure out what happens next at that point.

            It's all just a thought experiment at this point though. Apple and Sony, control freaks both, made the decisions they made and history turned out the way it did. Can't win 'em all.

            Comment


            • #46
              Originally posted by arQon View Post
              [...] Sony [...]
              To be fair, Sony is Sony. Proprietary solutions are in their DNA even over and above the tendency to cook up their own solution if nothing of domestic origin is available that all Japanese companies seem to have.

              Comment


              • #47
                Originally posted by ssokolow View Post
                To be fair, Sony is Sony. Proprietary solutions are in their DNA even over and above the tendency to cook up their own solution if nothing of domestic origin is available that all Japanese companies seem to have.
                I would not say this in this case. sony gcn comes out of the playstation 3. Attempting to deal cell processor chip. Yes the cell processor chip was fast on paper but it total hell to work with. Of course sony is now locked in. Playstation 5 will have to support gcn and gnmx so that old PlayStation 4 exclusive can be ported to the new platform without major work.

                Please not the nightmare of the IBM Cell processor is one of the things that start different parties looking around to design a new graphics API. Yes mantle from AMD and DICE that comes Metal in OS X and Vulkan also has roots leading back the IBM Cell processor in the sony playstation 3.

                https://en.wikipedia.org/wiki/DICE_(company) Yes DICE a sub company of EA here is the link back to the sony playstation 3. There is a reason why vulkan is closer to sony gcn than dx12 because sony gcn and vulkan have the same origin problem of how to get most out the cell processor that worked better with multi threaded.

                Yes sony like proprietary solutions but sony gcn case is that there was nothing else suitable at the time. Options like vulkan and dx12 did not exist then.

                Comment


                • #48
                  Just dump directx12 and use vulkan.

                  Comment

                  Working...
                  X