Sans émulation CPU : comment nxnative et Utsuro lancent les jeux Switch et Xbox One en natif sur iPhone et Mac

Pendant que certains développeurs indépendants s’amusent à détourner la charnière physique du nouvel iPhone Duo équipé de la puce A20 Pro, à l’image de Toastie : Grilled Cheese Game conçu par Tomasz Szykulski et Cyprian Brytan qui oblige à refermer l’écran pliable comme un gaufrier pour dorer son croque-monsieur en 15 secondes, l’écosystème Apple Silicon franchit un cap technique autrement plus massif. Dans la foulée du portage natif de Super Mario Galaxy sur Android sous Vulkan 1.0, deux projets open source baptisés nxnative et Utsuro s’attaquent aux catalogues de la Nintendo Switch et de la Xbox One sur Mac, iPad et iPhone en contournant l’émulation matérielle traditionnelle.
nxnative : réécrire les exécutables Switch ARM64 vers Metal sans émulateur CPU
Sur iOS et macOS, l’émulation de consoles récentes s’est longtemps heurtée à deux murs : la surcharge liée à la traduction processeur en temps réel et le blocage par Apple de la compilation à la volée (JIT) sans outils de débogage externes. Publié sous licence MIT sur GitHub par le développeur seedds, sur la base des fondations posées par le projet d2r-mobile de jhaizhou-ops, nxnative élimine ce goulot d’étranglement à la racine.
La Nintendo Switch et les puces Apple Silicon (M1 à M4 sur Mac et iPad, A17 Pro et modèles ultérieurs à partir de l’iPhone 15 Pro) partagent en effet la même architecture ARM64. Plutôt que de simuler virtuellement une console entière, nxnative fonctionne comme une chaîne de recompilation statique qui transforme vos propres fichiers de jeu extraits légalement (formats NSP ou XCI, mises à jour et DLC inclus) accompagnés de vos clés prod.keys en une application native autonome : un fichier .ipa non signé à installer sur iPhone ou iPad, ou une application .app directe sur macOS.
- Réécriture NSO (NSO Rewriter) : le code binaire ARM64 d’origine du jeu est patché et réécrit pour s’exécuter directement sur les cœurs CPU de la puce Apple, sans interpréteur ni besoin de JIT.
- Hôte HLE Horizon OS : une couche de compatibilité légère remplace les services système du noyau mesosphère de la Switch par les appels natifs d’iOS et de macOS.
- Traduction graphique NVN vers Metal : les shaders Maxwell de l’API propriétaire NVN de Nintendo sont convertis en SPIR-V grâce au traducteur issu de Ryujinx, puis compilés en Metal Shading Language via SPIRV-Cross et la chaîne d’outils Metal de Xcode 27.1.
- Interface graphique NX2Apple : pour ceux qui préfèrent éviter le terminal et le script Python
build_ipa_from_nsp.py, le développeur LNPANDY propose en parallèle l’application macOS communautaire NX2Apple qui automatise la création du paquet et gère la bibliothèque de jeux sur Mac.
62 jeux Switch déjà testés et un framerate débloqué à 60 FPS
Parce que le processeur exécute le code nativement et que le GPU Apple dialogue directement en Metal, les gains de fluidité dépassent régulièrement le comportement de la console d’origine. La documentation officielle de nxnative recense déjà 62 jeux testés sur Mac et iPhone (sous iOS/iPadOS 26 ou macOS 26.6 minimum, les puces A17 Pro et M1 étant requises pour décoder matériellement les textures compressées au format BC).
Plusieurs titres majeurs initialement bridés à 30 images par seconde sur Nintendo Switch franchissent ainsi le cap des 60 FPS dès lors que la mise à jour correspondante est intégrée lors de la compilation :
- The Legend of Zelda : Breath of the Wild (60 FPS avec le patch 1.9.0, environ 16 Go) et The Legend of Zelda : Tears of the Kingdom (60 FPS avec le patch 1.4.3, environ 17 Go).
- Paper Mario : La Porte Millénaire (60 FPS en version 1.0.1), Luigi’s Mansion 3 (60 FPS en 1.4.0) et Hyrule Warriors : L’Ère du Fléau (60 FPS en 1.3.0).
- Fire Emblem : Three Houses (60 FPS en 1.2.0), Fire Emblem Engage (60 FPS en 2.0.0), ASTRAL CHAIN (60 FPS en 1.0.1) et Monster Hunter Rise (60 FPS en 16.0.2).
- Dark Souls : Remastered (60 FPS en 1.0.3), NieR:Automata The End of YoRHa Edition (60 FPS en 1.0.3), Dragon Quest XI S (60 FPS en 1.0.4) et Shin Megami Tensei V : Vengeance (60 FPS en 1.0.3).
Aux côtés de ces poids lourds, des incontournables déjà calibrés à 60 FPS comme Super Mario Odyssey, Mario Kart 8 Deluxe, Super Mario Bros. Wonder, Super Mario Galaxy 1 et 2, Metroid Dread, Hollow Knight : Silksong, Hades II ou encore Pokémon Légendes : Z-A figurent également dans la liste de compatibilité. Sur iPhone, l’activation de la permission Increased Memory Limit lors de la signature via AltStore, Sideloadly ou LiveContainer permet d’allouer jusqu’à 6 Go de RAM à l’application (contre 3,4 Go par défaut sous iOS). L’interface intègre même des commandes tactiles 2D/3D adaptatives, les vibrations haptiques et la détection de secousses au gyroscope pour lancer Cappy dans Super Mario Odyssey.
Utsuro : la couche de traduction x86-64 qui ouvre la voie aux jeux Xbox One
Si la proximité ARM64 facilite le pont entre la Switch et les puces Apple, un second chantier open source s’attaque à un défi architectural encore plus ardu : faire tourner les jeux Xbox One sur Mac et iPhone sans émulation matérielle complète. Développé par levi (@leviidev01) et fraîchement publié en version v0.1.0 Alpha sur GitHub, le projet Utsuro adopte une approche de couche de traduction comparable à ce que Proton accomplit sous Linux.
La Xbox One reposant sur un processeur x86-64 et un environnement système dérivé de Windows, Utsuro combine trois briques logicielles pour éviter la virtualisation brute du matériel de Microsoft : il s’appuie sur FEXCore pour traduire les instructions x86-64 vers l’architecture ARM64 d’Apple, convertit à la volée le bytecode des shaders Direct3D 11.X en Metal Shading Language, et achemine le flux sonore vers CoreAudio.
Malgré son statut de prototype précoce (qui nécessite encore une compilation depuis les sources sur macOS ou un utilitaire d’activation JIT comme StikDebug sur iOS), les premiers résultats valident la viabilité du pipeline : Minecraft : Xbox One Edition tourne déjà entre 36 et 60 FPS sur Mac avec gestion du son, des sauvegardes et des contrôles tactiles sur iOS, tandis que Sonic Mania atteint environ 57 FPS avec l’audio complet. De son côté, Rocket League parvient déjà à afficher ses arènes 3D et à répondre aux commandes entre 15 et 20 FPS, bien que l’éclairage et l’audio restent encore en chantier.
Voir les disponibilités sur Amazon→
Mon banc d’essai
Faire tourner Tears of the Kingdom à 60 FPS constants sur un MacBook Air M1 totalement dépourvu de ventilateur, c’est un sacré pied de nez aux blocages logiciels d’Apple. Tant qu’iOS refusera d’accorder le JIT aux applications classiques, les émulateurs traditionnels continueront d’étouffer la puce et de vider la batterie en quarante minutes.
En recompilant directement le code ARM64 du jeu et ses shaders vers l’API Metal avant même le lancement, nxnative et Utsuro suppriment l’intermédiaire : le processeur ne traduit plus à la volée, il exécute à pleine vitesse sans chauffer.
Retrouvez Pro-Gamer en priorité sur Google
Ajoutez pro-gamer.fr à vos sources préférées pour retrouver nos guides et actus directement dans votre flux Google Discover et vos résultats de recherche.




















