Comment by canpan

Comment by canpan 2 days ago

19 replies

Steam developing proton was what made it possible for me to change fully. No dual boot or anything needed. It's great.

Funnily I also run GoG games through steam proton.. But looking forward to the GoG client working!

the_af 2 days ago

Steam with Proton is simply incredible.

And now it doesn't even split games in "Linux" vs "Windows"; it simply assumes all games run on Linux. And they mostly do! Though to be fair I had to tweak a couple to make them run, and Space Marine II absolutely refuses to play past the cutscene, but most other games "just work".

  • hbn 2 days ago

    God I hope Valve gets serious with Steam OS and it becomes a competitive target for PC games. They're making amazing progress with the Steam Deck, and I'm so ready to be free from Windows.

    • tracker1 2 days ago

      Is there something wrong with the many distros that make Steam a really easy install, or in the box? I mean Bazzite literally has a FS Steam option in the box for installers that's pretty close to the Steam OS experience with broader hardware support.

      • hbn 2 days ago

        I'm trying to word this without sounding dismissive of Bazzite for simply not being from a big company with money to throw around. I'm sure the people making it are doing great work. But I just don't get the feeling it's anywhere near the position it needs to be a "real platform" that could disrupt Windows. It has to be looked at from the perspective of publishers, and whether it's worth their money to target a new platform.

        Valve has good, stable funds to pay a team full time to build and support Steam OS which, over a long period of time and with enough user uptake, I think will have better chances of getting publishers on board with ensuring their games work on something that isn't Windows. Hell, they could probably make deals with publishers to say "hey, here's a pile of money to make sure your game works on Steam OS day 1, and put it in all the ads" and get the ball rolling that way.

        Gaming is a tough space to crack. I think Valve's money and their history of supporting the most popular gaming platform on PC inspires more trust needed to make their platform a standard target.

      • babypuncher 2 days ago

        SteamOS is actively shipping on consumer hardware today, that's the real major difference here. People who don't even know how to install their own operating system are using it.

        There isn't a downside to these other distros like Bazzite.

    • mfro 2 days ago

      Considering the Steam Machine will come with SteamOS, it looks like they are going all in.

  • tombert 2 days ago

    I was amazed that the PC port of Spider-man Myles Morales worked perfectly with no tweaking at all. That’s the newest AAA game I own (I think), and it runs silky smooth and hasn’t had any issues.

    It wasn’t that long ago that Wine was only really useful for games that were at least 5-10 years old. Proton is amazing.

red-iron-pine 2 days ago

WINE crawled so that Proton could run.

Like even in 2014 WINE worked well enough for most games for me. Proton just made it utterly effortless, and lets me run AAA games like RDR2 and CP2077.

  • dimas_codes 2 days ago

    I would say that WINE did 90% of what had to be done, then Proton came and did another 90% so now we are 99% there.

    • ACS_Solver 2 days ago

      Proton is amazing and it's really three different subprojects that deserve a lot of credit each.

      First is Wine itself, with its implementation of Win32 APIs. I ran some games through Wine even twenty years ago but it was certainly not always possible, and usually not even easy.

      Second is DXVK, which fills the main gap of Wine, namely Direct3D compatibility. Wine has long had its own implementation of D3D libraries, but it was not as performant, and more importantly it was never quite complete. You'd run into all sorts of problems because the Wine implementation differed from the Windows native D3D, and that was enough to break many gams. DXVK is a translation layer that translates D3D calls to Vulkan with excellent performance, and basically solves the problem of D3D on Linux.

      Then there's the parts original to Proton itself. It applies targeted, high quality patches to Wine and DXVK to improve game compatibility, brings in a few other modules, and most importantly Proton glues it all together so it works seamlessly and with excellent UX. From the first release of Proton until recently, running Windows games through Steam took just a couple extra clicks to enable Proton for that game. And now even that isn't necessary, Proton is enabled by default so you run a game just by downloading it and launching, same exact process as on Windows.

ActorNightly 2 days ago

Im not super familiar with the space.

Is the only reason for needing Proton is to do direct x api translations?

  • johnny22 2 days ago

    Games use plenty of other win32 APIs. Creating windows, running processes, opening files are all APIs.

    Something like wine is needed to do that translation too.

    • ActorNightly a day ago

      right but some games like CS have native linux clients. Is it that hard to recompile the game to run under linux?

      • notpushkin a day ago

        It often is hard. If you’re using win32 APIs extensively, you’ll have to port your code to Linux counterparts.

        There’s also the issue of forward compatibility. Sometimes you just can’t run an old Linux game on a newer distro, while it works fine in Wine. Or it might partially work: for example, I’ve managed to run a Linux build of Heroes of Might and Magic III, but didn’t get any sound, because it relied on some ancient sound API (pre-ALSA; perhaps OSS?). Windows version works great in Wine to this day.

        For some game engines though, porting is really easy. There are some piracy groups releasing Linux ports of Unity games (that don’t have an official Linux version) by just replacing the game executable with a compatible one from another game.

      • xeonmc 18 hours ago

        Run under which display server protocol?