Comment by direwolf20

Comment by direwolf20 4 days ago

31 replies

This is why Valve invested so much in Linux. They saw the writing on the wall of Microsoft becoming Apple (but shittier). Now they have an alternative. If Microsoft charges a 30% tax on all Steam transactions and won't let Steam run unless they do that, Valve can heavily push Linux and Steam Machine sales.

sofixa 4 days ago

> Microsoft becoming Apple (but shittier)

At least Microsoft haven't fallen so low as to fail basic design principles like having transparent on top of transparent buttons, having disappearing controls depending on window size (scrollbars), or having corners so rounded that the click to drag mostly being outside the actual window.

The Windows 11 UI is annoying, but at least it doesn't look like a kid's toy.

  • flohofwoe 4 days ago

    > At least Microsoft haven't fallen so low as to fail basic design principles like having transparent on top of transparent buttons

    That's just because Microsoft has been there done that already 2 decades ago ;) (IIRC in Windows Vista).

    Same with the fine-grained in-your-face permission popups. Introduced by Microsoft in Vista, copied by Apple in Mojave ;)

    • pjmlp 4 days ago

      One more reason for Apple to actually have delivered it properly, given that they had Microsoft's failures to learn from.

      • sofixa 4 days ago

        Not really, Apple permission prompts aren't different enough. It's just a random prompt to put in your password, with limited information why.

        The Windows ones look very different, dim the rest of the screen, and have more info.

  • direwolf20 4 days ago

    Apple's bad ideas look ugly. Microsoft's bad ideas lock you out of your computer, delete your files and give the undeleted files to the FBI.

  • sunaookami 4 days ago

    Having a mandatory sign-in prompt when opening Notepad and two context menus is way worse than anything Apple did in Tahoe.

  • JCattheATM 4 days ago

    > At least Microsoft haven't fallen so low as to fail basic design principles like having transparent on top of transparent buttons,

    They did that but made it work well all the way back with Windows 7, maybe even Vista.

pjmlp 4 days ago

And yet they failed to get game devs to natively target SteamOS.

As long as they depend on Proton, they haven't fully solved their problem.

  • anonymous908213 4 days ago

    I'm not sure how they could have failed that if that was never their goal in the first place. The entire point of Proton is that the Win32 API is infinitely more stable and worthwhile to target than anything Linux distros offer, and that the financial incentives aren't there for developers to 5x their platform distribution effort to reach 1% more users. An approach that relies on developers doing that would never work, and fortunately for Valve that isn't their approach.

    • TheCraiggers 4 days ago

      You're thinking of now. Proton didn't exist yet the first time they tried Steam OS.

      To be fair to Valve though, back then, there was a lot of movement in direct ports for Linux games. Humble Bundle (before they were bought) was spending real money on it and companies like Feral sprang up to help with titles like Mordor. It looked like there was going to be some real change.

      But for various reasons the momentum waned. One of those reasons might be the existence of Proton itself. Some people were very against it because they thought it might lead to less native ports.

      • pjmlp 4 days ago

        Which is exactly my point, keeping game studios on Windows + Visual Studio acomplishes nothing in regards to cut the dependency on Windows gaming.

  • beAbU 4 days ago

    What's the purpose of a native build if the windows build runs just as good, or even better?

    They ensured that the devs need not worry about another build target that requires extensive QA. Maybe in the distant future we will get ubiquitous native builds, but honestly and again, who cares?

    Proton and Wine means there is a single target now, instead of the fragmented mess that is Desktop Linux today.

    • direwolf20 4 days ago

      Valve also uses a Linux runtime for Linux native games. I think it's based on Ubuntu 2012.

      • literallywho 4 days ago

        I think only the folder is still named Ubuntu12 or something (like Dota 2's folder is still called Dota 2 Beta), libraries in it surely are more recent than that. And even then, native Linux ports of games don't run that well anyway. Especially older ones, like Tomb Raider 2013, Deus Ex Mankind Divided, Alien: Isolaton, those all will run much better over Wine. I kind of expect newer ports to fall apart as well in the future. I was playing Hollow Knight the other day (native port) and it drops FPS quite often on my laptop (hybrid amd+nvidia), while through Wine those drops don't exist almost at all.

  • flohofwoe 4 days ago

    Tbh, why bother?

    kernel32+user32+gdi32+d3d[11|12]+dxgi is a pretty great API abstraction for game development. And unlike Linux desktop APIs the Win32 APIs are actually stable, so those games will also work in 5 years, and most importantly, performance is the same or better than on Windows. It's unlikely that game devs directly targeting Vulkan would do any better, and when using a high level engine, any layering overhead in Proton is negligible anyway. And don't even get me started about the state of audio APIs on Linux ;)

    Also don't underestimate the amount of workarounds and tweaks that (most likely) go into Proton for games that make poor system API use. Without Proton those game-specific hacks would need to go into MESA, Wayland, X11 or various system audio libraries. At least Proton is one central place to accumulate all the game-specific warts in some dusty corner of their code base.

    TL;DR: just think of Proton as an extremely low level and slim cross-platform API for games (not all that different than SDL), and suddenly it makes a lot of sense. And I bet that in 5..10 years Windows will have regressed so much that it might actually be better to run games through a Proton-like shim even on Windows (assuming Windows hasn't become 'yet another Linux distro' by then anyway) ;)

    • Const-me 4 days ago

      > run games through a Proton-like shim even on Windows

      Already happening, to an extent. Specifically, modern Intel GPUs do not support DirectX 9 in hardware, yet legacy apps run fine. The readme.txt they ship with the drivers contains a paragraph which starts with the following text: “SOFTWARE: dxvk The zlib/libpng License” DXVK is a library which implements Direct3D on top of Vulkan, and an important component of SteamOS.

    • pjmlp 4 days ago

      With game studios using Windows + Visual Studio, what a win!

      • flohofwoe 4 days ago

        VS2026 is actually quite decent again (surprising tbh), but the good thing today is that a lot more UI apps support Linux than 20 years ago. E.g. I would just give my artists a Linux desktop running Blender, and generally test on a connected min-spec PC (also for the devs even if they are working on a high-end Windows PC in VStudio). E.g. similar to console-development, the low-end PC is essentially the devkit. Also has the advantage that there will be no performance surprises on release when most gamers try to run the game on their laptop or RTX2060 ;)

        One thing I would definitely do is to replace MSVC with Clang, MSVC is just too far behind and it almost looks like MS abandondend it.

      • direwolf20 4 days ago

        Are we boycotting shit software, or the entire company that produced it?

    • LtWorf 4 days ago

      Try running a directx 5 game and let me know how it goes.

      • flohofwoe 4 days ago

        29 years is a lot more than the 5.. years time window I'm talking about. 3 decades is basically "I will need an emulator for that" ;)

        But I think even a lot of D3D9 games should still work, and that's 2002 stuff. Also try running a 1997 Linux game binary on a modern Linux distro without recompiling, I doubt that's works all that well...

  • palata 4 days ago

    > As long as they depend on Proton, they haven't fully solved their problem.

    Maybe not, but they fully solved my problem with games, which was that I could not play on Linux. I started playing again just because of the SteamDeck, I think it's a pretty big achievement :-).

    • pjmlp 4 days ago

      Hardly any different than running MAME.

      • badsectoracula 4 days ago

        MAME is an emulator running games in fully emulated machines, Proton/Wine is a compatibility layer that runs games natively by the interfaces they expect.

        The closest situation would be with comparing Wine running via CPU translation under ARM or RISC-V with how RPCS3 recompiles PowerPC games to native x86 code, but even then the comparison wouldn't be accurate as RPCS3 still does full system emulation whereas Proton/Wine integrates with the underlying OS.

        Proton/Wine is closer to Java/JVM than MAME (or any other emulator) and that is when running on a different CPU than x86/x86_64 as on the latter it is just a PE loader with a bunch of DLLs reimplementing various APIs.

      • TheRoque 4 days ago

        It's actually really different. WINE literally stands for: Wine Is Not an Emulator (yes, the acronym is contained within the acronym itself)