this post was submitted on 20 Nov 2023
49 points (100.0% liked)

libre

9653 readers
9 users here now

Welcome to libre

A comm dedicated to the fight for free software with an anti-capitalist perspective.

The struggle for libre computing cannot be disentangled from other forms of socialist reform. One must be willing to reject proprietary software as fiercely as they would reject capitalism. Luckily, we are not alone.

libretion

Resources

  1. Free Software, Free Society provides an excellent primer in the origins and theory around free software and the GNU Project, the pioneers of the Free Software Movement.
  2. Switch to GNU/Linux! If you're still using Windows in $CURRENT_YEAR, flock to Linux Mint!; Apple Silicon users will want to check out Asahi Linux.
  3. Social Media Recommendations:

Rules

  1. Be on topic: Posts should be about free software and other hacktivst struggles. Topics about general tech news should be in the technology comm or programming comm.
  2. Avoid using misleading terms/speading misinformation: Here's a great article about what those words are. In short, try to avoid parroting common Techbro lingo and topics.
  3. Avoid being confrontational: People are in different stages of liberating their computing, focus on informing rather than accusing. Debatebro nonsense is not tolerated.
  4. All site-wide rules still apply

Artwork

founded 3 years ago
MODERATORS
 

I'm curious as to what everyone's reasons are! The Linux desktop has came quite a far ways in the last few years and is improving every day. I'd say for most people, Linux could easily replace Windows as their daily driver nowadays.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 6 points 10 months ago (1 children)

steam has wine built in, for most games you don't even need to futz with the settings

[–] [email protected] 4 points 10 months ago (2 children)

Even in the best case scenario that's a straight downgrade though. Right now, I never have to worry about Wine compatibility or settings. All the games I play are tested and optimized on Windows.

[–] [email protected] 4 points 10 months ago (1 children)

It's not always true that steam proton is a downgrade. There are quite a few games, especially old ones, that actually run better with proton than natively on windows. Which is wild, but true.

[–] [email protected] 3 points 10 months ago (1 children)

That is surprising, I might give it a go next time I have an older game that doesn’t run so good under modern Windows.

[–] [email protected] 2 points 10 months ago (1 children)

Proton/Wine is a compatibility layer to translate Windows API calls to POSIX calls. In theory it should actually yield near native performance or better since Vulkan is far more optimized than DirectX.

But yeah, I use Proton and waiting for your vulkan shaders to compile is a little bit of a pain (especially for some games).

[–] [email protected] 2 points 10 months ago (1 children)

While I'll admit I don't have a lot of experience with Proton, I actually spent about 4 years working on a OpenGL based 3D graphics engine for augmented reality research. I've also written engine code in both DirectX and Vulcan but not as much. All this to say I've done some in depth research on Vulkan in the past, and I don't think it's really true to say that it's more optimized. DirectX is probably more optimized, but it is over-optimized for graphics techniques that have been superseded by more modern ones. Vulkan allows more optimized code to be written by giving the application programmer more direct control over graphics card resources. This only works when the program is written to take advantage of this though, if you access a Vulkan driver via a DirectX compatibility layer you are going to get very similar performance to native DirectX because you'll simply recreate all the bottlenecks that Vulkan was designed to avoid.

This gets to the underlying issue with Wine/Proton as a general solution to Linux gaming. So long as the application code was tested, debugged, profiled and optimized on Windows with DirectX it will almost always run better under Windows. The design will take advantage of efficiencies in the original API which will almost certainly not exist after calls are translated to a different API using different underlying OS primitives. The major caveat is older games which are no longer well supported because of changes to Windows system internals since release, these are likely to run as well or better because the assumptions they were optimized for are no longer valid on Windows, but Wine is already designed to compensate for programs written for a very different API.

Sorry for nerding out, but it's a topic I'm actually pretty interested in.

[–] [email protected] 2 points 10 months ago (1 children)

I see that's really interesting. A lot of my impression of Vulkan is that it's a much more modern API.

Though I'd admit that some of these are faulty benchmarks like when some users got better performance on Elden Ring with proton than on native windows (performance metrics varied wildly). It was just nuts to see Linux competing head-to-head with Windows for the first time.

[–] [email protected] 2 points 9 months ago

Vulkan is that it's a much more modern API

Absolutely, older APIs tried to smooth development by abstracting more from the hardware, Vulkan tries to give the developer as much control as possible. If you know what you're doing you can write more performant games with Vulkan, but on the flip side development is slower. The matters less and less though, as most game dev these days uses middleware like Unity or Unreal which does all the graphics pipeline management for you. This also ties into modern graphics hardware being more configurable than ever, meaning the more restrictive APIs can waste a lot of the hardware's potential.

I did a bit of research after reading your comment and from what I can see, Elden Ring has some bugs in it's rendering pipeline that can cause cached shaders to be recompiled for no reason, this is what causes all the stuttering on Windows. Proton devs managed to write custom implementations of the DirectX functions that it uses incorrectly, to force it to work the way it was presumably intended to. That's awesome to me and really shows off the potential of Proton. Obviously other games which aren't huge releases aren't going to get that kind of treatment, but I can definitely see dedicated communities fixing issues like this in games.

Super cool, I'm glad you mentioned Elden Ring because I hadn't considered Wine/Proton could be used like that.

[–] [email protected] 3 points 10 months ago (1 children)

except the games released during the 98/XP/Vista/7 period, those still have compatibility shenanigans with windows 10.

[–] [email protected] 1 points 10 months ago

That’s fair enough, but I’m mostly playing newer games. Maybe I’ll spin up a Linux install next time I have an old game that doesn’t work well on windows.