Wine was already mostly at that point a couple of years ago. It used to involve a lot of manual fiddling, but in the later days of DX9, the majority of games worked out of the box.
DX11 is where things went wrong again, and mainline Wine has been quite slow to implement DX10+ features. There have been some great projects like DXVK which have made DX11 games playable in Wine, as well as a lot of work going on in different branches and patches of Wine to improve certain functionality. Fortunately Proton brings all of these together, and has all of this configuration dealt with for you.
After a period of stagnation and not being able to play any games released in the last few years, we're back to the point where brand new AAA games can run with Wine/Proton with solid framerates - I was very surprised to see Monster Hunter World running well in Proton within a few days of release.
DRM and anti-cheat remains the biggest blocker though. Some Denuvo games run, but many don't. Anything using BattlEye or Easy Anti-Cheat won't work, or if you're lucky, the anti-cheat might let you in, but then ban you for a false positive. I hope these can be solved at some point, but the nature of Wine works and how anti-cheat identifies tampering means they'll probably never play nice together.
I heard reports of some Overwatch players getting banned for using wine/proton. Just a heads up if anyone tries to run Blizzard/Activision games with these tools.
> UPDATE - 14 Sep 08:03: Blizzard is investigating and they will be looking to overturn the bans if this is indeed the case. There appears to be at least five reports of bans so far and does indeed seem that the most likely explanation is a false-positive from Blizzard's anti-cheat technology having issue with DXVK.
It's interesting because an emulation layer like that being present definitely would make cheating easier. I'd imagine a few clever modifications to DXVK itself would be all that's necessary to implement a wallhack or similar.
I am guessing that they look for cheating based on actions in addition to scanning the memory looking for known cheats. Aimbots are pretty recognizable to experienced players, and no doubt some machine learning is going on to look for those patterns. This lets them stay ahead of the curve on exploits... if it looks like an aimbot, it doesn't matter that it's some new binary they haven't yet heard of.
True, it's essentially an emulation not of the hardware but of the API. I was using it loosely, but the point is, hijacking Wine's already re-implemented API would be trivial given that limited verification are possible on it and hooking all critical Windows API functions is essentially trivial.
Not really a huge issue - professional cheat developers invest huge amounts of effort in subverting and patching the Windows kernel itself just to get a step ahead of anti-cheat. Thinking about how much fun that kind of thing is really makes me rethink my career choices...
DX11 is where things went wrong again, and mainline Wine has been quite slow to implement DX10+ features. There have been some great projects like DXVK which have made DX11 games playable in Wine, as well as a lot of work going on in different branches and patches of Wine to improve certain functionality. Fortunately Proton brings all of these together, and has all of this configuration dealt with for you.
After a period of stagnation and not being able to play any games released in the last few years, we're back to the point where brand new AAA games can run with Wine/Proton with solid framerates - I was very surprised to see Monster Hunter World running well in Proton within a few days of release.
DRM and anti-cheat remains the biggest blocker though. Some Denuvo games run, but many don't. Anything using BattlEye or Easy Anti-Cheat won't work, or if you're lucky, the anti-cheat might let you in, but then ban you for a false positive. I hope these can be solved at some point, but the nature of Wine works and how anti-cheat identifies tampering means they'll probably never play nice together.