Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

bousozoku

Moderator emeritus
Jun 25, 2002
16,120
2,399
Lard
I've not had a closer look at Proton. For SteamDeck, I guess it makes sense as an easy way got get everything running. I've heard good things and bad things. We'll see how successful SteamDeck will be in the end. I think they're more trying to buy into the Switch market with it.

For me personally, I have a dual boot Linux/Windows box, which is solving the problem.
I haven't bought a new Mac for a long time and I'm waiting to see if I would want one. Everything Apple seems to do pushes me away from Macs right now. My Windows 10 machine is an early 2018 Omen by HP that is sufficient for the games I play at this point.
 
  • Like
Reactions: GrumpyCoder

leman

macrumors Core
Oct 14, 2008
19,521
19,678
Yes and no, I think it's a bad example. It's not really that difficult to have a random number generator do its job on different platforms. The problem with Civilization is that it drags around years and years of obsolete design/code. The problem isn't really the number generator, but the way they implemented sync and async code, which came from old dialup days to save bandwidth. They could not do it on one machine, so they had to do it in parallel on each machine, but with the same results. The issues they had from desync (why do I feel like in an Assassins Creed game?) was largely not from the RNG, but systems becoming out of sync for various reasons. They have also moved async code to sync by utilizing network messages.

It was initially a bad design to port to a different system. From what I remember all that was baked into a DLL.

Thanks for clarifying this! It's even worse than what I thought :) No wonder that Civ 6 runs so poorly...
 
  • Like
Reactions: JMacHack

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
Out the top of my head neither Civ5 or 6 are using Unreal engine, they’re on a in-house custom engine. To be 100% sure, I’d have to check.
So what are your thoughts on Rockstars Advanced Game Engine, and why it doesn't have macOS compatibility?
 

GrumpyCoder

macrumors 68020
Nov 15, 2016
2,126
2,706
So what are your thoughts on Rockstars Advanced Game Engine, and why it doesn't have macOS compatibility?
Well, the engine does its job. That's all I can say. ;)
Since this is not licensed or sold, most things are a better kept secret than Area 51. For Rockstar it was the right choice and if I had to make an open world game today, it probably would be my choice as well. No other engine back in the day provided such a good open world experience. That's what it was created for, that's where it shines. Unreal became an option for open world only in the past few years.

It's actually something I'm exploring right now, how well does Unreal work in real open world scenarios. For a research project we're scanning (lidar + photos) a part of a small city and create a 3D model with <10mm accuracy. Should have the processed model in about 4 weeks or so, ready to be plugged into a Unreal project.

macOS compatibility in RAGE is probably due to modularity, they're using modules in the engine with 3rd party libraries as plug-ins. Vulkan is a part of it and I guess macOS compatibility is created with MoltenVK. I don't think I've seen a Rockstar game running on macOS, so no idea how it performs.
I think civ game engine was based on a laptop fan speed test app ;)
LOL! That's how all things started back then. :p
I have fond memories about the first Civ game, which I played a lot with a friend back in the early 90s. I can't remember exactly what we used back then, it was either a 286 or 386SX with one of these turbo buttons, must have been 12 or 16 MHz IIRC. If a game was too fast, we switched to lower clock speed and if it was to slow, we switched up. That solved all our problems until Strike Commander came out.

While I've played other Civ games, I spent the most time with the first one. Good old times.
 

theorist9

macrumors 68040
May 28, 2015
3,881
3,060
Can someone give me a summary of the coding situation with gaming? Or, more specifically, correct/fill in the gaps with the following:

Open GL: Cross-platform, but obsolete for today's GPU's
DirectX: Windows only
Metal: MacOS/iOS only
Vulkan: Cross-platform, but requires MolkenVK to use with Mac

Let's suppose someone wants to develop a AAA game for Windows and Mac, and decides this at the start of the development process. It seems they have two potential choices:
1) Code a DirectX-based version for Windows, and a Metal-based version for Mac
2) Use Vulkan for both

Practically, which approach would they use today, and which would they be likely to use, say, in a couple of years?

Also, does AS's use of Tile-Based Deferred Rendering make the coding approach very different for the Mac, or is this something that is handled at a low level and thus transparent to the game developer?
 
Last edited:

sunny5

macrumors 68000
Jun 11, 2021
1,838
1,706
Can someone give me a summary of the coding situation with gaming? Or, more specifically, correct/fill in the gaps with the following:

Open GL: Cross-platform, but obsolete for today's GPU's
DirectX: Windows only
Metal: MacOS/iOS only
Vulkan: Cross-platform, but requires MolkenVK to use with Mac

Let's suppose someone wants to develop a AAA game for Windows and Mac, and decides this at the start of the development process. It seems they have two potential choices:
1) Code a DirectX-based version for Windows, and a Metal-based version for Mac
2) Use Vulkan for both

Practically, which approach would they use today, and which would they be likely to use, say, in a couple of years?

Also, does AS's use of Tile-Based Deferred Rendering make the coding approach very different for the Mac, or is this something that is handled at a low level and thus transparent to the game developer?
Being cross-platform has nothing to do with the gaming market share. macOS is just a minor platform for gaming industry and therefore, less profits to make.

Most PC/Console games are for Windows and Console, not macOS. Steam stats already proves that macOS users are only less than 3% and it won't be a different story for other platforms such as Epic games, GOG, Microsoft Store, Origin, and more. Do we even know any platforms where Mac users are the major players? As long as Mac's market share is too small, it won't gonna change.
 

theorist9

macrumors 68040
May 28, 2015
3,881
3,060
Being cross-platform has nothing to do with the gaming market share. macOS is just a minor platform for gaming industry and therefore, less profits to make.

Most PC/Console games are for Windows and Console, not macOS. Steam stats already proves that macOS users are only less than 3% and it won't be a different story for other platforms such as Epic games, GOG, Microsoft Store, Origin, and more. Do we even know any platforms where Mac users are the major players? As long as Mac's market share is too small, it won't gonna change.
This reply is a complete non-sequitur to my question.
 
Last edited:

leman

macrumors Core
Oct 14, 2008
19,521
19,678
Open GL: Cross-platform, but obsolete for today's GPU's
DirectX: Windows only
Metal: MacOS/iOS only
Vulkan: Cross-platform, but requires MolkenVK to use with Mac

Sounds about right. I would remove OpenGL from the list to be honest because it makes absolutely no sense to use it for a new project.

Let's suppose someone wants to develop a AAA game for Windows and Mac, and decides this at the start of the development process. It seems they have two potential choices:
1) Code a DirectX-based version for Windows, and a Metal-based version for Mac
2) Use Vulkan for both

Practically, which approach would they use today, and which would they be likely to use, say, in a couple of years?

Well, there is a bunch of options. I'll try to summarize the basic ones:

ApproachAdvantagesDisadvantages
Vulkan for all platformsOnly one API to deal withNeed to optimize for various hardware + MoltenVK, most likely will end up having platform-dependent paths or partial rewrites to make sure it runs well everywhere
DX12/Vulkan on Windows, Metal on MacCan take full advantage of each platformNeed to be proficient with both APIs, dealing with shader cross-compilation
Use a middleware engine (Unity, Unreal etc.)Low level stuff and platform abstractions are taken care of for youMight need to work around engine limitations, performance potentially lower than doing it yourself


For new projects where you want to achieve highest quality, I'd go DX12 on Windows and Metal on Mac. The funny thing is that with some advance planning, using two different API backends is not that much more difficult than using one API but making sure it works well on all hardware. Also, using two APIs allows you to chose the optimal rendering path on every platform.

Also, does AS's use of Tile-Based Deferred Rendering make the coding approach very different for the Mac, or is this something that is handled at a low level and thus transparent to the game developer?

You don't have to deal with TBDR if you don't want to. There is one caveat though — TBDR can benefit a lot from having some information about how your framebuffer resources are used (e.g. do you need the color/depth buffer after the rendering is done etc.). Having this knowledge can help the driver to optimize memory allocation and transfers. Now, all modern APIs (including Vulkan and DX12) have ways of specifying this information, and it's in general a trivial thing to do, but since devs have little experience with these things, mistakes in describing render passes are common. Testing and profiling is important. Fortunately, it's a low hanging fruit and can be basically fixed up in a single afternoon if your codebase is sane.

If you are using Metal and want to achieve maximal performance on Apple Silicon, you have access to advanced tools that let you take low-level control over on-chip caches and per-tile processing, potentially allowing you to get much better performance.

Can't agree, gaming is not about hardware capability

For some projects, it is. If you are developing a graphically demanding game for example, there will be a minimal hardware configuration target.
 

senttoschool

macrumors 68030
Original poster
Nov 2, 2017
2,626
5,482
and yet....
2021: Apple's industry is not gaming. It's music, phones with pretty UI, and laptops for photoshop people.

Angry birds was more popular in 2009 than in 2021
The point was that if Apple listened to critics in 2009, they wouldn't have their gaming division which happens to be their most profitable by margins. They would have stuck to only what they thought they were good at.

And if Apple listened to most people here, they wouldn't bother trying to extend gaming to Macs and other platforms besides iOS since only "casual" gamers exist on Apple's platforms.

I think Apple will one day have a unified gaming platform and you can play on iOS, iPadOS, MacOS, tvOS, AppleCloudOS, AppleGamingConsoleOS, vrOS, and so on. All powered by Apple Silicon with one API. Everything from casual games to AAA games will be on it.

Most people here can't comprehend this since they can't let go of the past and can't see past the present.
 
Last edited:

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
The point was that if Apple listened to critics in 2009, they wouldn't have their gaming division which happens to be their most profitable by margins. They would have stuck to only what they thought they were good at.

And if Apple listened to most people here, they wouldn't bother trying to extend gaming to Macs and other platforms besides iOS since only "casual" gamers exist on Apple's platforms.

I think Apple will one day have a unified gaming platform and you can play on iOS, iPadOS, MacOS, tvOS, AppleCloudOS, AppleGamingConsoleOS, vrOS, and so on. All powered by Apple Silicon with one API. Everything from casual games to AAA games will be on it.

Most people here can't comprehend this since they can't let go of the past and can't see past the present.
At some point I'd like to see this on Apple's platform.
989452-7cd31fdc61cb21be9850dd8fc0d3b94b.jpg

Yet I keep being told that Apple doesn't make hardware that can do this and likely wont (which isn't 100% true, the new MacPro can run this). Or that developers don't think it is worth their time making things look this pretty (or at all) on macOS/iOS.
I want to get on the hype train, but it doesn't seem to be going anywhere.
 
  • Like
Reactions: MysticCow

leman

macrumors Core
Oct 14, 2008
19,521
19,678
Yet I keep being told that Apple doesn't make hardware that can do this and likely wont (which isn't 100% true, the new MacPro can run this).

Bah, already M1 is fast enough to run Cyberpunk. I am fairly sure that 40+ fps @1080p is achievable with Apple-specific optimizations.

Or that developers don't think it is worth their time making things look this pretty (or at all) on macOS/iOS.

That's the main problem.
 

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
Bah, already M1 is fast enough to run Cyberpunk. I am fairly sure that 40+ fps @1080p is achievable with Apple-specific optimizations.



That's the main problem.
I just want to point out, super off topic, that I think it is awesome we have a member named 1080p. You may now resume the hype train....
 
  • Haha
Reactions: 09872738

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
There’s a hint in the thumbnail, it’s big and green and in the bottom left.
That is just showing off that the game supports DLSS, there was a longer walkthrough back when the game was using UE4 earlier this year that had 0 nvidia branding on it (and it still looked just as pretty). Plus the Journey to the West/Monkey King mythos could be quite fun no?


EDIT: This game is not due for release until 2023, by then Macs are supposed to be nearly 50% of all computers capable of playing AAA games, seems silly for the dev to leave out such a large audience.
Also, I am not saying this is a AAA game, just a game that I think would be fun to play on a Mac.
 

JMacHack

Suspended
Mar 16, 2017
1,965
2,424
Plus the Journey to the West/Monkey King mythos could be quite fun no?
Maybe, I’ve pretty much swore off games so I don’t know.
EDIT: This game is not due for release until 2023, by then Macs are supposed to be nearly 50% of all computers capable of playing AAA games, seems silly for the dev to leave out such a large audience.
Also, I am not saying this is a AAA game, just a game that I think would be fun to play on a Mac.
I think OP is delusional too. Capability of playing games hasn’t brought games to the Mac at any point. Even when the Mac was “closest” to PC with OpenGL and Intel. Actually a case could be made that more games were ported during the days of MacOS 9 and PPC than lately.
 

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
Maybe, I’ve pretty much swore off games so I don’t know.

I think OP is delusional too. Capability of playing games hasn’t brought games to the Mac at any point. Even when the Mac was “closest” to PC with OpenGL and Intel. Actually a case could be made that more games were ported during the days of MacOS 9 and PPC than lately.
I am not as good at multiplayer (read: twitch) gaming these days, lol. I am trying to power through the single player campaign of Doom Eternal. Dying all the time is stressful, well less stressful than Demon Souls but you get the idea.
 

GrumpyCoder

macrumors 68020
Nov 15, 2016
2,126
2,706
Can someone give me a summary of the coding situation with gaming? Or, more specifically, correct/fill in the gaps with the following:

Open GL: Cross-platform, but obsolete for today's GPU's
DirectX: Windows only
Metal: MacOS/iOS only
Vulkan: Cross-platform, but requires MolkenVK to use with Mac

Let's suppose someone wants to develop a AAA game for Windows and Mac, and decides this at the start of the development process. It seems they have two potential choices:
1) Code a DirectX-based version for Windows, and a Metal-based version for Mac
2) Use Vulkan for both

Practically, which approach would they use today, and which would they be likely to use, say, in a couple of years?

Also, does AS's use of Tile-Based Deferred Rendering make the coding approach very different for the Mac, or is this something that is handled at a low level and thus transparent to the game developer?
You already got a good reply from @leman, but I think you're looking at it from the wrong perspective. There's more to game development than choosing a graphics API. Think about the game you want to do first, check what tools/engines are available to you, if they meet your requirements and then decide.

I'd also be careful with Vulkan. You depend on MoltenVK. I've also heard stories about Apple rejecting apps using Molten. I don't know for what reason or it's not true at all. But it is clear that Apple wants to push Metal and I can see them rejecting anything that isn't native Metal in the future.
Bah, already M1 is fast enough to run Cyberpunk. I am fairly sure that 40+ fps @1080p is achievable with Apple-specific optimizations.
Depends on the optimizations I guess. Based on hardware alone, it's more in the ~30fps range at 1080p, with low settings. Medium settings should drop to ~20fps. Apple needs more than this for AAA games and I'm sure they'll get it in time.

The biggest problem is them moving more and more into their own ecosystem. Nintendo can get away with it, because they have the IP. People are buying hardware for specific games. That used to work for Sega in the distant past, but stopped working with/after the Dreamcast. Same for SNK, Hudson, Fujitsu, 3DO and Atari. It doesn't work for Apple, because they don't have the IP. But Apple is fine, because they're making a ton of money with "little" Indie games made for phones and that's where the profit for them is coming from, quantity of cheap games.
 

GrumpyCoder

macrumors 68020
Nov 15, 2016
2,126
2,706
I think Apple will one day have a unified gaming platform and you can play on iOS, iPadOS, MacOS, tvOS, AppleCloudOS, AppleGamingConsoleOS, vrOS, and so on. All powered by Apple Silicon with one API. Everything from casual games to AAA games will be on it.

Most people here can't comprehend this since they can't let go of the past and can't see past the present.
And one day maybe cats and dogs will live in harmony and pigs will learn to fly. Apple needs market share in the gaming industry and with currently under 3%, that's not going to happen soon. They also need to put more effort into it, which they're not doing.

The people here who don't understand this, are basing their assumptions on wishful thinking and have no knowledge about what they're talking, because they've never worked in the gaming industry or a related field. They can't let go of their childhood dreams and see financial reality. ;)
 

diamond.g

macrumors G4
Mar 20, 2007
11,438
2,665
OBX
You already got a good reply from @leman, but I think you're looking at it from the wrong perspective. There's more to game development than choosing a graphics API. Think about the game you want to do first, check what tools/engines are available to you, if they meet your requirements and then decide.

I'd also be careful with Vulkan. You depend on MoltenVK. I've also heard stories about Apple rejecting apps using Molten. I don't know for what reason or it's not true at all. But it is clear that Apple wants to push Metal and I can see them rejecting anything that isn't native Metal in the future.

Depends on the optimizations I guess. Based on hardware alone, it's more in the ~30fps range at 1080p, with low settings. Medium settings should drop to ~20fps. Apple needs more than this for AAA games and I'm sure they'll get it in time.

The biggest problem is them moving more and more into their own ecosystem. Nintendo can get away with it, because they have the IP. People are buying hardware for specific games. That used to work for Sega in the distant past, but stopped working with/after the Dreamcast. Same for SNK, Hudson, Fujitsu, 3DO and Atari. It doesn't work for Apple, because they don't have the IP. But Apple is fine, because they're making a ton of money with "little" Indie games made for phones and that's where the profit for them is coming from, quantity of cheap games.
I blame the 32X for Sega's demise. The Saturn was actually fine as was Dreamcast but by then EA (read all the sports games) decided they didn't want to support Sega's console (the Dreamcast) cause Sega was too wishy washy on hardware. Well that and the PS2 was more powerful and could play DVD's (once you bought the remote, lol).
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.