Confused on Steam Play and Proton? Be sure to check out our guide.
We do often include affiliate links to earn us some pennies. See more here.

Editorial - Linux Gaming's Ticking Clock

By - | Views: 46,502

Years ago, when we could still meet in the hundreds in small enclosed spaces, I was speaking to a Valve employee and brought up the topic of integrating Wine into Steam. I was met with something that I assume is taught to all of their employees during orientation - a sly, precise and knowing smile. When performed correctly it's a smile that offers up no information other than a confidence that there are good things to come. Back then Proton was very clearly something to be held close to the chest, not to be shouted about, at least not for a while.

Now, Proton is all anyone wants to talk about when Linux gaming is brought up. It comes with an argument just waiting to spring out at you - are you for or against? Are you perilously blind to the devastation caused by opening pandora's box, or are you a stifling traditionalist unwilling to let the platform evolve towards a bright future? I don't think either of those is a hill worth dying on, but I've heard these exchanges enough now that I can tell they're coming by the hairs on the back of my neck. It's not that these aren't important debates to have, it's just that the angles people take are so often unable to give the pragmatist room to breathe, let alone space to get down and dirty with the real issues at hand and how to solve them.

I think I now understand why the Proton cards were kept so hidden, sometimes it's not worth inciting an angry debate without letting something speak for itself first.

Today there's an undeniable truth that in a short window of time we've gained a wealth of games to play on Linux, but instead of the current dialogue focusing on finding common actions - how to capitalize on that potential, how to generate growth or even how to prevent too much damage being done, it too often ends up distracted in arguments that only focus on the past. These are fruitless. There's nothing to be gained but the ego boost of a hollow personal victory. "Is Proton good or bad for Linux gaming?" is a tired old question, that was thrown around in slightly different forms long before Proton even existed. There's a far more interesting topic: "Proton is here, so what next?". Finding answers to this, collectively, should be our urgent priority, because there's one thing seldom brought up in all these discussions: Proton's current success is the child of impeccable timing, and it may not last.

There are many factors to this, the first being the currently extended console generation. In 2019 almost all Windows games were still rendering with DirectX 11, a technology released 10 years prior. DirectX 12 was launched five years ago but we're only now seeing games start to truly use it. Part of Proton's success is founded on the fact that Vulkan is a generational leap above the tech current games are built on. It's not even simply DirectX 12, which is a mostly solved problem on Linux, the incoming generation is going to leapfrog that directly into entirely new technologies like Ray Tracing, DLSS and Nanite. You can see hints at the impact of the generational jump that's about to happen in NVIDIAs recent DLSS video, Epic's Unreal Engine 5 Reveal or the jaw-dropping Marbles RTX demo (shown below).

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

These new technologies may well have great compatibility with Vulkan and Proton, but not if Vulkan can't keep up - it may be that games start requiring them sooner as a baseline, and there could be significant unavoidable performance hits in a translation layer just like in the old days of DirectX to OpenGL. Because of this, Vulkan adoption and wide-spread use are vital to keeping Linux capable of cutting edge graphics tech. Supporting the use of Vulkan not only massively helps Proton, but it also helps Khronos stay at the cutting edge, making future native ports a much simpler prospect.

The potential success of Stadia could be a key factor in this - the more Google looks to push the boundaries of graphics hardware, the stronger Vulkan will need to be when put up against DirectX. Desktop usage of Vulkan is growing, with Vulkan renderers being added to games like Red Dead Redemption 2 and Rainbow Six Siege while Android use is on the rise as well, the success of both of these will be another factor in keeping Vulkan at the forefront. There was some doubt only a few years ago about whether Vulkan would end up as another OpenGL, an unwieldy, rarely-used-on-desktop API with dodgy driver support and lacking widespread expert knowledge, but I'm hearing those doubts less often these days. One situation that might play into all this is if Microsoft brought DirectX to Linux which, while farfetched, doesn't seem so insane anymore as it's coming to WSL, though the implications of a move like that are beyond anyone's fortune-telling abilities.

Another view on Proton's impeccable timing would be that Steam's strong market share on Windows for the last decade is only now hitting some serious competition. The Epic Games Store is the big challenger in the public eye, and while there's more to be done there (Epic integrating Proton would be special) the fact running it on Linux is a mostly solved problem, for now, has taken it out of focus a little. - we shouldn't get complacent. The second challenger that may be a far greater threat is the dirt-cheap and expansive Xbox Game Pass, which encourages a lack of game ownership that completely breaks the option of gamers taking their games with them when moving Linux (short of buying an Xbox). It also has the potential to finally transition more games to UWP, a format incompatible with Wine, and we recently heard that Microsoft is working on unifying their executable formats into something new, potentially causing even more problems.

For one flavour of pragmatist Stadia and other streaming services offer up a tangible step towards mitigating those issues by making your OS of choice irrelevant to the games you play. These services will give many Linux users direct access to the best AAA titles on their launch, and in Stadia's case, they're delivered using Linux virtually end-to-end. Xbox Game Streaming and Playstation Now may also unlock a huge library of console games without the need to invest in the set-top box. Streaming might not be your cup of tea or could be inaccessible due to your location, but it can't be ignored as part of the wider picture - a strong way to play games on PC without the need for a specific OS has clear benefits for Linux users.

Another simple counter is that it's becoming more and more obvious that Proton has far better historical compatibility with games than Windows does, and particularly better than Mac. This situation is likely to continue to improve, and it's a massive stealthy benefit for many gamers. Game preservation is a worthy shared goal to get behind, and we could look to establish Linux as the platform of choice for nostalgia seekers, tinkerers and modders for the digital age, in the same vein to that cabinet with a well preserved Nintendo 64 and a bunch of old games that some of us keep.

One last piece of the Proton timing puzzle is Anti-Cheat. We're nearing the end of a relatively long grace period where game developers shy away from going too invasive with protecting their IP. Most DRM and anti-tamper solutions are solvable in Wine, but Windows kernel-level anti-cheat has been around for years and is a much tougher challenge, bringing to a halt the hope of a quite a few games working on Linux. This level of invasive security isn't just a problem for Wine, it should be seen as a dangerous obstacle for all gamers, but it's a difficulty that's unlikely to go away in the short term as we see more AAA developers begin to rely on it, even though other methods have proven viable and are used in world-class esports. The problem is that invasive anti-cheat is now seeping outside of competitive multiplayer games - the latest victim is Doom Eternal, a game whose single-player campaign while writing this article became inaccessible on Proton due to the addition of Denuvo's new Anti Cheat.

However, it isn't all doom and gloom - broader campaigns against invasive anti-cheat are making small steps, Microsoft is granting users the ability to disable anti-cheat for single-player in the MCC, and most recently Denuvo Anti-Cheat is being removed again from Doom Eternal. In other good news, Valve is working with the developers of Easy Anti-Cheat, and Denuvo is working on out-of-the-box Proton support, but standing united with Windows gamers in setting a safer precedent for how companies handle these tools, regardless of Proton compatibility, is something we all should aim to do.

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

Proton's timing was its strength, but native ports are another story. It's probably fair to say that the number of ports has reduced over the last year, and you can't blame developers for taking the easy route when they find their game works flawlessly under Proton. However, the story in terms of native development is more positive. In the open-source world, Godot has a significant fresh round of funding with its 2020 showreel showing a notable upward trend in quality and quantity, while Blender made a huge leap with 2.80 last year. For the big-name engines, both Unity and Unreal's support for native game development is improving at a solid pace. Combining these with great progress in the Linux Distribution world for ease of use, installation and compatibility, as well as the multiple manufacturers now providing more high-quality OEM Linux laptops means that native development has never been easier, and keeping it strong helps to counter any damage Proton may do.

It would be easy to have been pessimistic here, but I hope I've shown there's a fair amount optimism just waiting to be had once everything is weighed up. Proton may have come with a strong tailwind, but there are a plethora of other factors at play to help keep Linux gaming fresh. If there's one action to be taken here it's not to stick all of our eggs in one basket - we have to stop acting like Proton is the only choice on the table, that's a massive distraction pulling us away from coming together and solving this puzzle collectively and co-operatively. If we do that right, then next time someone brings up Proton and Linux gaming we can offer them up that same knowing smile, knowing that the future should speak for itself.

Article taken from GamingOnLinux.com.
Tags: Editorial
64 Likes
About the author -
author picture
I’m a programmer and avid gamer. I currently develop and game on Pop_OS, plus run Mint, Fedora and Raspbian at home. I work at Unity as a Linux specialist in the Sustained Engineering team, while also contracting for Valve. Formerly developer and Linux Group Lead at Feral. Any opinions and thoughts I write are mine personally and do not represent those of my employers.
See more from me
The comments on this article are closed.
68 comments
Page: «5/7»
  Go to:

CatKiller May 22, 2020
View PC info
  • Supporter Plus
Quoting: MohandevirIn fact the GeForce now subscription is not about Netflix like access...

True, but those are the two models: buy and stream from your own collection (Stadia, Geforce Now) or stream from someone else's collection (the Xbox thing and the PlayStation thing).

Quoting: SalvatosI could see the Proton whitelist become the streaming lineup.

Yes, that was my thought, too.

Quoting: Purple Library GuyAny streaming service is gonna need a revenue model of some sort.

Also true. It wouldn't necessarily need to all be new revenue, though; as something that Steam provides that other services don't, it might reduce the pressure for them to lower their cut of sales, and if customers with potatoes have a reason to buy more expensive AAA games then revenues generally would go up without a specific line item.

Or it might never happen. That kind of scheme follows Valve's pattern of using what they already have to make things more attractive for customers and suppliers so they can keep the flow of money going, and fits the kind of work they've collectively found interesting enough to do so far.
JJNova May 22, 2020
*DXVK
Linuxwarper May 22, 2020
Native ports aren't sustainable. Such releases are so volatile that you can't persuade someone to switch or stay on Linux. Even if we do get native releases, we have to wait much longer than Windows to play the games. With Proton, it's stable and we can play games from first few days they are launched. The reason Proton fails is because there are actors within the industry who's business is reliant on Proton's failure, and they will do things to stop it's momentum.

Linux gaming's opportunity to kick off depends on Proton's success and Vulkan adoption. Imagine Proton and Vulkan as two buddies stuck in a underground cave. Proton has made a straight, narrow and small line up to surface water which both Vulkan and Proton is sustained by. While Proton does that, Vulkan is digging a path up to the surface. If Proton dies, Vulkan will too. Their deaths will symbolize death of Linux gaming's growth.

I can't state it enough, native ports aren't sustainable in general. Despite many major games having Vulkan renderer (Doom, Red Dead, Cyberpunk, etc etc) publishers/developers won't release them on Linux. That is pure fact. And the only way to play these games are through Proton. And when games work on Linux, even if it's not native, people will switch and stay on Linux. Marketshare will grow and that will surely lead to developers and publishers deciding on a Linux port, especially if by that time Vulkan has become widely used in the industry.

That all is a ideal scenario though. Microsoft and other actors will surely do things that will hurt Proton or/and Vulkan.


Last edited by Linuxwarper on 22 May 2020 at 10:59 pm UTC
appetrosyan May 22, 2020
Quoting: Alm888
Quoting: appetrosyanEven Feral interactive are usually taking a windows code base and add a few minor changes through SDL and only recently began making use of Vulkan. The biggest problem with all of these ports is that neither of them is open source, and you end up with a hard-coded out-dated binary. This is not the case with Proton.
That is definitely the case with Proton™. Only now on top of the closed-source Windows™ binary (unpredictably changing patch over patch) you have the imperfect WINE wrapper.
Quoting: appetrosyanI’ll give you an example of Witcher 2. It’s a native port in name only, written by Virtual Programming. To try and run this on a modern machine will have me searching forums to try and figure out which dynamic libraries it used to link against, the performance was bad when it was Wine with OpenGL, it just got worse in comparison. This is because no one went back and patched the executable to work on modern Linux machines.
Ah, I see what you've done here!

Nice try, but no. You are trying to sell the "Let's Abandon Native in Favor of Windows-as-a-Target-With-a-Wrapper" by presenting one (and only one!) extreme example ("Witcher 2") as some sort of common practice.

Not quite. I’m more of a “let’s not trust the developers not to abandon their software, when that’s everything that always happened to their games”. I believe that the games’ code should be FOSS’d like Id (the real one, before Carmack left) used to do. The sheer problem is, most games that run using DXVK enjoy much better performance than OpenGL, simply because, as Liam said, Vulkan is a generation or two ahead.

In lieu of arguing from principle, I’d say just try any native game, and the same game using Wine + DXVK. Odds are there will be a not insignificant amount of performance uplift. Not to mention that you wouldn’t need to hunt down age old libraries. A non exhaustive list of games includes Doom 3 (non BFG), Quake 4, Dungeons (1, 2, and to some extent 3), Quake 3 arena, Deus Ex: mankind divided, Overlord etc. Sometimes the difference is marginal, but it’s only temporary. For performance and the user experience to improve, either the translation layer or the game needs to be modified, and often developers abandoned their releases post launch, especially on such a small share of the market.

QuoteBy doing this slap-in-the-face job of "porting" the game "Virtual Programming" has effectively trashed its reputation and now has no hope of returning to Linux business. As it should be, because instead of using "Witcher 2" as an excuse for not making Linux versions we must (and we do!) punish so-called "porters" for bad job. Granted, in case of "Witcher 2" CDPR also had its share of hate, and maybe just a little too much, but honestly, where was their Quality Control back then?

While I generally agree that the Virtual programming port is a bad one, I don’t think that we are in any position to punish. We are not faced with a choice of a good or a bad port, we are faced with a bad port and no port at all. I’d argue that if you want more native ports, you should be encouraging the last minute half-arsed ports that Virtual programming had been actually releasing.

QuoteWhat we need are actual "Day-1" native releases made with Linux in mind from the get-go (or by using Linux-friendly game engines), not some three-years-later "ports" (of games everyone else managed to forget already) with 30% less performance and most of effects disabled.

Couldn’t agree more. Preference for OpenSource engines and FOSS games like 0ad, Xonotic, OpenMW, Freespace 2 SCP, Godot, etc.

Quote
Quoting: appetrosyanI don’t see how it will improve with time, but I do see that using Wine + DXVK will get better and better.
And I see it gets so good that it stops working after a publisher adds "Denuvo AntiCheat" (or basically any anticheat for that matter) or uploads a patch breaking "Proton Compatibility". And all that with impunity because you on Proton™ was given no guarantees at all.

I’d be surprised if a native port would continue working if Denuvo Anti cheat was on the table. I don’t see a huge difference between this and Rocket League being pulled for completely arbitrary reasons. You don’t get guarantees either way, except with a native port, you’re expecting that the publisher in their benevolence spends time and effort to remove the anti-cheat. With proton, you can run DooM Eternal, because the codebase is continually updated.

I’m not sure if you planned to give me ammunition to support my point, but you should be really picky about your examples.

Quoting: appetrosyanThe trick here is that because you’re taking the control from the full binary and giving it to the Wine runtime, you are effectively making an openSource interpreter for a proprietary language. The developers only have to worry about making it work on Windows, and proton takes care of the rest. And I think that’s what Carmack meant in his age-old 2012 post about GOL. By making native ports with bad user experience we are only going to turn people off of running Linux.
And they will do just that!
Are you using Proton™? Not our problem! So long and thanks for your money![/quote]
Funny. They could say the same thing about native ports. Fun fact, although every single ID game up to and including DooM 3 BFG, has a functional binary port (which is actually native), however, Bethesda in its wisdom has seen fit not to add the badge and officially support the binary releases. For them to murder the Proton they have to patch some sort of selective DRM that refuses to play in emulation, that was also hack-proof. I honestly think it would be cheaper to just pull all mention of all those games.

You see, you keep forgetting that you’re not actually buying anything. You’re given a temporary non-transferable license that can be revoked at any time, for any reason, despite you having paid. There’s no fundamental difference between them pulling Proton support because it’s not guaranteed and saying “well, we’re tired of supporting the Linux binary, so we’re killing it off”. You’re SOL either way, but unlike the latter case, there’s a huge chance that a game not working through proton can start working eventually.
appetrosyan May 22, 2020
Quoting: musojon74EDIT. I know we don’t all do this. Sorry to sound ranting but this is a big issue. We are a small market share. Plus we make ourselves smaller by only buying drm free and avoiding steam. ( not that I disagree with the principle of that ). But it does affect sales. Then we vocally shout about this. Then we shout at people for bad poets. Like Virtual Programming. It’s less they trashed their reputation, more like f it why should we bother supporting people who just shout at us.

I don’t think this is baseless. In words of RMS, we’re sacrificing convenience for freedom.

Also, If Virtual Programming are turned off of writing Linux ports, it’s not necessarily a bad thing. I can imagine a whole slew of games that they could have ported just as badly. Now those games probably went to feral, or conceivably didn’t get ported at all, and now enjoy a nearly hassle-free experience through Proton. The policy off shutting down things that you don’t like has the effect of things that you don’t like not showing up.
appetrosyan May 22, 2020
Quoting: LinuxwarperNative ports aren't sustainable. Such releases are so volatile that you can't persuade someone to switch or stay on Linux. Even if we do get native releases, we have to wait much longer than Windows to play the games. With Proton, it's stable and we can play games from first few days they are launched. The reason Proton fails is because there are actors within the industry who's business is reliant on Proton's failure, and they will do things to stop it's momentum.

Linux gaming's opportunity to kick off depends on Proton's success and Vulkan adoption. Imagine Proton and Vulkan as two buddies stuck in a underground cave. Proton has made a straight, narrow and small line up to surface water which both Vulkan and Proton is sustained by. While Proton does that, Vulkan is digging a path up to the surface. If Proton dies, Vulkan will too. Their deaths will symbolize death of Linux gaming's growth.

I can't state it enough, native ports aren't sustainable in general. Despite many major games having Vulkan renderer (Doom, Red Dead, Cyberpunk, etc etc) publishers/developers won't release them on Linux. That is pure fact. And the only way to play these games are through Proton. And when games work on Linux, even if it's not native, people will switch and stay on Linux. Marketshare will grow and that will surely lead to developers and publishers deciding on a Linux port, especially if by that time Vulkan has become widely used in the industry.

That all is a ideal scenario though. Microsoft and other actors will surely do things that will hurt Proton or/and Vulkan.

Hopefully, we can reach critical adoption and every other proprietary application just becomes outmatched.
Linuxwarper May 23, 2020
Quoting: appetrosyanHopefully, we can reach critical adoption and every other proprietary application just becomes outmatched.
Vulkan needs to be dethrone DirectX. Vulkan isn't owned by Microsoft so it will be difficult for them to steer it into a dead end for Linux. Even if developers develop for Windows only, the games will run as good as native with Vulkan. It will make people switch over and eventually the marketshare will be significant enough (3% or more) that publishers can no longer ignore or neglect Linux. There will certainly be (and are already) developers who will rely on Proton as a easy way to earn cash from Linux users, but significant marketshare will surely make others choose more crossplatform software for development. And that will be a major victory in itself, developers choosing other crossplatform software (besides Vulkan) when they up to that point had not done that at all.


Last edited by Linuxwarper on 23 May 2020 at 12:59 am UTC
appetrosyan May 23, 2020
Quoting: Guest
Quoting: appetrosyan
Quoting: musojon74EDIT. I know we don’t all do this. Sorry to sound ranting but this is a big issue. We are a small market share. Plus we make ourselves smaller by only buying drm free and avoiding steam. ( not that I disagree with the principle of that ). But it does affect sales. Then we vocally shout about this. Then we shout at people for bad poets. Like Virtual Programming. It’s less they trashed their reputation, more like f it why should we bother supporting people who just shout at us.

I don’t think this is baseless. In words of RMS, we’re sacrificing convenience for freedom.

Also, If Virtual Programming are turned off of writing Linux ports, it’s not necessarily a bad thing. I can imagine a whole slew of games that they could have ported just as badly. Now those games probably went to feral, or conceivably didn’t get ported at all, and now enjoy a nearly hassle-free experience through Proton. The policy off shutting down things that you don’t like has the effect of things that you don’t like not showing up.

VP improved the quality of their ports massively after the initial Witcher 2 debacle. There are quite a few games they did that ran really well - including Witcher 2 once it was patched up. And they did help with some driver issues in Mesa. If they'd managed to get through enough and invest in a Vulkan backend, they'd be pretty much where DXVK is now, except tailored to individual games and giving support for them.

Losing fglrx drivers was a good thing. Losing VP is not.

I agree to an extent. There’s always a way to politely remind people that their work is not quite up to scratch, and death threats for a job however botched is never warranted. That does not mean that trust cannot be lost and that there are no objective markers of quality. My issue with this debacle is both the immaturity with which we have made a fool of ourselves, and the extent to which the entire community was gaslighted. VP, have learned a valuable lesson about quality of work. We have learned that telling people to kill themselves is a bad thing.
Linuxwarper May 23, 2020
Quoting: appetrosyanI agree to an extent. There’s always a way to politely remind people that their work is not quite up to scratch, and death threats for a job however botched is never warranted. That does not mean that trust cannot be lost and that there are no objective markers of quality. My issue with this debacle is both the immaturity with which we have made a fool of ourselves, and the extent to which the entire community was gaslighted. VP, have learned a valuable lesson about quality of work. We have learned that telling people to kill themselves is a bad thing.
To add to that, I don't believe it's wrong for a developer to rely on Proton at this point in time. My reasoning for that is that for some games or genres Linux isn't that profitable, and thus it's not feasible to do extra work to provide native. The extra work could be used to make more content for windows game.

Streets of Rage developers provided keys to Valve so they could make it work with Proton. Ideally I would like native, but I understand that's not feasible and therefor I don't have any ill will against developers who decide to forego native release for Proton one. Provided their reason for doing so is warranted.

But it's important than when developers decide to go for Proton that they do it the right way i.e working with Valve and Valve's recommendations for Proton. Furthermore developers could be kind and give back X amount of money back in form of Steam wallet if players have played their game through Proton on Linux after X hours of played or something like that.
appetrosyan May 23, 2020
Quoting: Linuxwarper
Quoting: appetrosyanI agree to an extent. There’s always a way to politely remind people that their work is not quite up to scratch, and death threats for a job however botched is never warranted. That does not mean that trust cannot be lost and that there are no objective markers of quality. My issue with this debacle is both the immaturity with which we have made a fool of ourselves, and the extent to which the entire community was gaslighted. VP, have learned a valuable lesson about quality of work. We have learned that telling people to kill themselves is a bad thing.
To add to that, I don't believe it's wrong for a developer to rely on Proton at this point in time. My reasoning for that is that for some games or genres Linux isn't that profitable, and thus it's not feasible to do extra work to provide native. The extra work could be used to make more content for windows game.

Streets of Rage developers provided keys to Valve so they could make it work with Proton. Ideally I would like native, but I understand that's not feasible and therefor I don't have any ill will against developers who decide to forego native release for Proton one. Provided their reason for doing so is warranted.

But it's important than when developers decide to go for Proton that they do it the right way i.e working with Valve and Valve's recommendations for Proton. Furthermore developers could be kind and give back X amount of money back in form of Steam wallet if players have played their game through Proton on Linux after X hours of played or something like that.

A bit intractable, but I’m sure it’s with good intentions.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.