Portal 2 recomp
Portal 2 traduit en code natif ARM64, jouable sur Mac et sur iPhone.
- Statut
- en cours
- Année
- 2026
- Fait avec
- Python · C · SDL2 · gl4es · OpenGL ES
Pourquoi
Beaucoup de jeux ont été portés sur Apple Silicon grâce à des LLMs. Un travail qui aurait pris des mois voire des années, fait en quelques jours. J’ai voulu essayer moi-même. Le but : Portal 2, un jeu que j’apprécie tout particulièrement, sur Mac, et pourquoi pas iPhone. Au final, il a suffi de 48h à Claude sous ma supervision, avec mon aide pour tester. Le résultat est fluide et complètement jouable.
Comment
Portal 2 existe en version Linux, en x86 32 bits. Le projet traduit son code machine en C, fonction par fonction, puis compile le résultat en ARM64 pour macOS et iOS. Pas d’émulateur, pas de Wine, pas de Rosetta. Le jeu complet, ce sont environ 125 000 fonctions et 15 millions d’instructions.
Un petit runtime fournit ce que les binaires Linux attendent : libc, threads, SDL2, OpenGL, Steam. Sur iPhone, gl4es convertit OpenGL 2.1 en OpenGL ES, et une couche UIKit ajoute les commandes tactiles.
Sur un iPhone 15 Pro Max, le jeu tourne à 60 images par seconde avec MSAA 4×, et les portails se tirent en tapant le dos du téléphone (accéléromètre et gyroscope). Une vidéo montre le résultat.
Il faut posséder le jeu. Le dépôt ne contient aucun fichier de Valve ni code décompilé : tout est généré sur sa machine, à partir de sa propre copie. Projet de fan, sans lien avec Valve.
Écrit en quelques jours d’octobre 2026, avec Claude Code et Codex sous ma direction.