beyond-all-reason / Beyond-All-Reason

Main game repository for Beyond All Reason.
https://www.beyondallreason.info/
Other
1.67k stars 274 forks source link

Port to Mac using the new tools introduced by apple #2008

Open Woodentables opened 1 year ago

Woodentables commented 1 year ago

Just wondering if BAR could possibly be ported to macOS using apple's guide and the tools they've provided. This guide can be found here: https://developer.apple.com/videos/play/wwdc2023/10123/.

sprunk commented 1 year ago

https://github.com/beyond-all-reason/spring/issues/936 possibly relevant

Karolson commented 1 year ago

As far as I know Apple's toolkit is just a fancy Wine wrapper like Proton/Crossover, with additional proprietary DirectX->Metal translator based on DXVK, and it won't help with OpenGL

alanpaone commented 1 year ago

yeah, Apple's tools only help with directX games. currently, wine (which is what crossover and Game Porting Toolkit are both based on) only supports opengl 2.1 . you'd be waiting for crossover to integrate MGL, Zink, or roll their own openGL 4.6 support somehow. Asahi linux has opengl 3.3 support, and at the breakneck pace they're going, it might eventually be the easiest way to run BAR on a mac, but it isn't yet. In theory, vmware Fusion 13 with an Arm Linux guest has opengl 4.6 support, but it can't get past the launcher.

If you can put up with some UI elements and explosions not rendering correctly, BAR runs decently in Parallels.

alanpaone commented 1 year ago

Parallels 19 just came out and adds opengl 4.1, it still doesn't show a lot of the UI, so I didn't do a lot of testing, but I wouldn't be surprised if it performs or looks slightly better than parallels 18. Also, vmware Fusion tech preview 2023 doesn't work with opengl on windows, but does have UI elements that mention 4.3 (along with other notes elsewhere that specifically say they're wrong), so it looks like a future release will include 4.3 on windows. so close yet so far.

mustafa-hanif commented 11 months ago

if its an open source game why cant we compile it to mac

p2004a commented 11 months ago

if its an open source game why cant we compile it to mac

Because Apple doesn't support OpenGL 4.3 and new macs are using ARM not AMD64 architecture. We can't just compile it, it requires porting work both on the CPU architecture side and the Graphics API side.

mustafa-hanif commented 11 months ago

I am willing to contribute to the effort of porting it

p2004a commented 11 months ago

@mustafa-hanif Great! Engine repository is https://github.com/beyond-all-reason/spring it contains compilation instructions and so on. Best if you joined our Discord for asking questions, but in the readme there is also linked bridged Matrix channel if you don't want to use Discord. Nobody is working in this area at the moment, so you can start however you want.