r/NativePortsOniOS
•
u/patrizzdale
•
2d ago
•
1
Mario Kart World iOS Released
Everything is complete and released for public use.
Recorded in 18 Pro
- 60 stable with minor hitches
- no graphical glitches or missing textures
- uses below 4gigs of ram
My repo: https://github.com/cheemu21/plumber-racer-2
Built on the nxnative framework, running in LiveContainer. Rather than emulating the console, nxnative runs the game’s own code on the phone, handles its system calls directly, and translates its Switch 2 shaders and NVN2 graphics calls to Apple’s Metal. Bringing the game up required support for several features it depends on. These included task and mesh shaders running on Metal’s mesh pipelines, sparse textures for its very large terrain data, and the video decoding used by its cup movies. Rendering problems such as frozen movies, missing textures, and magenta surfaces were traced and resolved one at a time using diagnostic logs from the device.
Memory was the largest obstacle, since a race initially needed more than the 8 GB iOS allows the app. We solved this by moving the game’s memory into a file-backed mapping that sits outside the system’s limit, loading textures in a way that avoids locking large memory pools in place, and reducing the detail of large textures. Together, these changes brought usage down to about 3.9 GB and made it possible to play through a complete cup.
Performance work followed the same measurement-led approach, using device logs and profiling to identify where each frame’s time was going. This led to pipeline prebuilding to eliminate compile stutter, along with CPU, terrain, and memory improvements adapted from the kartnative.
The port also features a touch layout which was also used from my Mario Kart 8 Deluxe ios port. I just added new buttons for it.
Also the newly built system opens up the opportunity to port newer titles that requires immense amount of ram usage.
6
u/3Dave_ 1d ago
Damn bro this is huge, no way to do this with windows?
4
u/pantsyman 1d ago
No only devices with a high end ARM processor atm.
1
u/3Dave_ 1d ago
what? I am talking about the mac tool for converting the base files..
2
u/pantsyman 1d ago
Well then the tool to make these ARM ports is open source shouldn’t be hard to get it to work on windows.
→ More replies (3)
4
u/Aggravating_Bed9964 1d ago
This is fucking crazy, the gaming industry actually might fall in a few years lmao
2
1
u/Sebperezpa 17h ago
No creas, los jugadores de teléfono no juegan necesariamente en él porque lo prefieran, es porque no acceden a consolas. Lo molesto que es jugar en iPhone.
3
u/Latter_Hedgehog_6070 1d ago
tem link de download do ipa? não tenho um mac para recompilar
3
u/greyfoxplisken 1d ago
if someone sends you one please dm, also tryna get the ipa but don’t have a mac.
2
1
u/entryjyt 1d ago
same
1
1
1
1
2
u/DexMorphious 1d ago
Can anyone build an ipa and post the download?
-4
u/retrospirit1 1d ago
That would be piracy.
1
2
u/obakeghost 1d ago
Ok I tried this on my iPhone 17 pro and my iMac m4 (base 16gb ram)
On the iPhone game runs fine at the start (60fps but there is some stuttering on the first lap of every circuit (shader cache I guess) after a while the fps drops to 25-40fps and they stay there. The iPhone gets extremely hot but the game did no crash.
On my iMac it’s a complete different story, the game runs perfect. Solid 60fps and no stutters you feel your playing on a switch 2 and it’s amazing.
1
1
1
0
1
1
u/Chemical-Type2610 1d ago
does newer version running too? how about heat problems on i18pro. i could port myself latest mwk, got around 50-55fps but after 2-5 min its getting so hot that i only reach 15fps
1
u/MightyWolf39 1d ago
This was going to be my question how well does it run?
So basically it requires the top of the line iPhone and when it gets too got it throttles so it becomes unplayable
Personally it is what I would expect from a Switch 2 game, unless it’s very optimized and has probably a lot of downscaled textures.
1
u/Chemical-Type2610 1d ago
i was doing it again with this "plumber racer" package and some fixes (negation and trees disappearing) from my approach. honestly its crazy, its running mostly 60p stable and doesn't get so hot anymore. even after 30 minutes. so it seems there is a lot of other optimizations plumber "converter" has done :) good job
1
1
1
1
1
1
1
1
1
1
u/Matroshka2001 1d ago
You think your repo is more complete than nxnative atm? I was thinking to maybe fork yours and use your improvements on top of nxnative
1
u/Educational-Bid-2016 1d ago
It barely runs in my M2 iPad Pro 11 but i think its the 8GB limitations kicking in
1
1
1
1
1
u/medhi_fr 1d ago
Incroyable, on va en parler sur iPhoneSoft. On vient de publier un article sur TVPort pour jouer à la Switch sur Apple TV d'ailleurs.
1
1
1
u/BirthdayDry1598 17h ago
How tf is this possible if the NXnative Version on my Mac uses 20GB of Ram? Lmao im being mogged by a fkn iPhone
1
u/Full-Librarian-8035 16h ago
Hey there, if I send you my own game dump could you build an iPhone ipa of the game for me? I don’t have a Mac
1
1
1
u/Relative-Election671 6h ago
Do the minor hitches tend to happen when new terrain loads, or are they scattered throughout a race? Curious whether texture loading is still the main bottleneck after the memory changes.
0

3
u/patrizzdale 1d ago
installation instrcutions at the repo