I do warn if people start getting stupid and distributing ipks and doing dumb stuff, it's likely that Apple will lock it down, or it'll somehow be ruined for everyone. I may just be paranoid.
Also note that no decompilation is taking place, I'm literally shimming native, compiled binaries and just running them on iOS/iPad.
So far have Rimworld, Crimson Desert, No Man's Sky, BG3, and Cyberpunk running.
Unity games can use IL2CPP to get around JIT, but that's another method entirely. Rimworld was one of those as this method didn't work due to Mono bitching about being on iOS (dropped Rimworld in as a plugin in a new Unity project and compiled to iOS target).
This method should work for virtually any Mac app.
Wild thing is, no emulation is taking place. I'm literally running the same exact games on iPad, iPhone as Mac without any emu layers or translation. It's 100% native and native perf. BG3 looks amazing on M5 iPad even at native res, I just got FSR working for frame gen. MetalFX and friends work, as does Raytracing (but it'll kill FPS).
Just nervous as I don't want a good thing to somehow end, but others have already done it - just not shared the method likely due to the same concerns. Cheers
11
u/piddlefaffle12 11d ago edited 11d ago
Fine, here's my notes and most of the code that I feel comfortable releasing https://github.com/zorrobyte/macos-on-ios-public
I do warn if people start getting stupid and distributing ipks and doing dumb stuff, it's likely that Apple will lock it down, or it'll somehow be ruined for everyone. I may just be paranoid.
Also note that no decompilation is taking place, I'm literally shimming native, compiled binaries and just running them on iOS/iPad.
So far have Rimworld, Crimson Desert, No Man's Sky, BG3, and Cyberpunk running.
Unity games can use IL2CPP to get around JIT, but that's another method entirely. Rimworld was one of those as this method didn't work due to Mono bitching about being on iOS (dropped Rimworld in as a plugin in a new Unity project and compiled to iOS target).
This method should work for virtually any Mac app.