You are viewing a single thread.
View all comments
-5 points

That makes sense but I assumed that since it’s also on Linux, it would be a 0 effort port

permalink
report
reply
6 points

There’s no such thing as a zero-effort port

permalink
report
parent
reply
39 points

In the earlier days of OS X this was true. A port from one to the other was somewhat trivial. However, Apple has done Apple things and tried to invent their own gaming library API after killing off OpenGL support on Macs and they’ve probably been up to some other buggery since then as well. Porting to Mac is probably equally as difficult from Windows now as Linux, and Linux has overtaken them on number of people who are playing on Steam.

permalink
report
parent
reply
12 points

Games have never been “trivial” to port to Mac, why do you think there are so few games that have been ported? Unless you write it for macOS, it’s just not easy or even worth it to port, has been since the Apple II days.

permalink
report
parent
reply
3 points

I meant the trivial portion would be porting back and forth between linux and early Mac OSX, making it a two-for-one proposition (though back then a lot of companies still chose not to do the linux port).

permalink
report
parent
reply
12 points
*

They still have some pretty old version of OpenGL and Metal was a bit before Vulkan, so it’s sort of a lightning vs USB C situation.

I don’t believe that it was easy. Since it started macOS was based on BSD, not Linux, which is quite different. They also use different types of binaries and the similarities between kernels should end beyond the BSD compatibility layer. See https://wiki.freebsd.org/Myths#FreeBSD_is_Just_macOS_Without_the_Good_Bits

permalink
report
parent
reply
1 point

It would be, if you use macOS on an intel CPU with an AMD GPU.

But porting it to an entirely different CPU and GPU architecture with entirely different graphics API (Metal) makes no sense whatsoever.

permalink
report
parent
reply
0 points

It could be a 0 effort port but there will be a ton of working fixing issues and making sure it works on new OS versions etc

permalink
report
parent
reply
14 points

macOS is BSD based, not Linux based. Different graphics underpinnings as well. Apple has released some helper layers to assist in porting, but it’s still no cakewalk.

permalink
report
parent
reply
7 points

Isn’t the Linux version just the windows version running with the usual compatibility layers (proton or whatever)? In other words, not an actual port?

permalink
report
parent
reply
2 points
*

This is far from a black and white answer. A lot of the first gen steam machine ‘ports’, including those from Valve, Aspyr, Feral and Virtual Programming used source code level wrapper libraries to convert D3D calls to OpenGL. This added a little bit of extra overhead to the port so a lot of these early ports suffered a little slower performance (in my opinion an average of about 15% slower). These ports were compiled from source code so they were still native ports, if a little half-assed for time and manpower’s sake. As time went on Valve and VP’s wrappers improved to the point that you could get 1:1 performance or sometimes much better performance running the port under linux (for example VP’s wrapper would multi-thread the renderer even if the original D3D renderer was singled-threaded). Feral went on to re-code a handful of their later ports from D3D to Vulkan, again, achieving better performance under linux. A few game engines were written with linux in mind from the start, such as The Talos Principle/Serious Sam 3, and those titles, in my opinion, would be best to use to compare the relative performance of the two OS’s at that time.

Nowadays you still have a fair amount of indie titles coming out with native linux support. Not many larger titles in recent years, but you do still get some such as Psychonauts 2 and stuff from Paradox. Proton has gotten so good now that many games will run better on linux from day 1 than on Windows-steal-yo-data-11.

permalink
report
parent
reply
14 points

The Linux version of cs:go had native logic and wrapped rendering via valve’s ToGL from before proton. CS2 is fully native though.

permalink
report
parent
reply
17 points

No, it’s native Linux with native Vulkan as well.

permalink
report
parent
reply
-19 points
Deleted by creator
permalink
report
parent
reply

Gaming

!gaming@lemmy.ml

Create post

Sub for any gaming related content!

Rules:

  • 1: No spam or advertising. This basically means no linking to your own content on blogs, YouTube, Twitch, etc.
  • 2: No bigotry or gatekeeping. This should be obvious, but neither of those things will be tolerated. This goes for linked content too; if the site has some heavy “anti-woke” energy, you probably shouldn’t be posting it here.
  • 3: No untagged game spoilers. If the game was recently released or not released at all yet, use the Spoiler tag (the little ⚠️ button) in the body text, and avoid typing spoilers in the title. It should also be avoided to openly talk about major story spoilers, even in old games.

Community stats

  • 2.1K

    Monthly active users

  • 1.1K

    Posts

  • 14K

    Comments