18 trillions de planètes sur un disque dur : le tour de magie de No Man's Sky

En 2016, un tout petit studio de Guildford a promis un jeu vidéo avec 18 trillions de planètes. Pas 18 000. Pas 18 millions. Dix-huit trillions — 18 446 744 073 709 551 616 exactement, chacune un monde complet sur lequel on peut se poser, marcher, et qu'on peut baptiser. La question évidente, c'est celle dont personne n'arrivait à croire la réponse : où est-ce qu'on range tout ça ? Aucun disque dur ne peut stocker dix-huit trillions de planètes. Aucun centre de données sur Terre n'est assez gros. La solution trouvée par No Man's Sky est l'un des plus beaux tours de magie du game design : on ne stocke pas l'univers du tout. On stocke la recette, et on cuisine chaque planète à la minute où un joueur débarque.

Un seul nombre pour les gouverner tous
Voilà le tour de passe-passe. Ce chiffre vedette, 18 trillions, n'est pas une fioriture marketing — c'est exactement 2 puissance 64, le plus grand nombre que peut contenir un entier sur 64 bits. Chaque étoile, chaque planète, chaque grotte et chaque créature est désignée par une unique graine de 64 bits. Imaginez cette graine comme l'ADN de l'univers. Donnez la même graine au même algorithme et il vous rend exactement le même monde, jusqu'au dernier caillou, à chaque fois.
Le génie, c'est que la graine est les coordonnées. La position d'une planète dans la galaxie n'est pas cherchée dans une base de données — la position est l'entrée qui génère la planète. C'est pour ça que deux joueurs qui volent vers le même point de la carte galactique voient le même ciel violet, le même lac toxique, les mêmes animaux à six pattes qui broutent. Personne n'a rien synchronisé. Le calcul est simplement déterministe : même entrée, même sortie, pour toujours. L'univers n'est pas un lieu qui existe. C'est une question dont la réponse est stable, qui attend qu'on la pose.
Construire une planète à partir de bruit
Donc un joueur arrive en orbite et la graine s'allume. Qu'est-ce qui peint réellement les montagnes et creuse les vallées ? Le cheval de bataille, c'est ce qu'on appelle le bruit de Perlin — un algorithme inventé en 1983 par Ken Perlin pour rendre les textures de synthèse moins artificielles (ça lui a valu un Oscar). Le hasard brut donne de la neige télé, statique et moche. Le bruit de Perlin donne un hasard lisse : les points voisins prennent des valeurs proches, ce qui ressemble à un relief vallonné plutôt qu'au chaos.

Mais une seule couche de bruit de Perlin, c'est ennuyeux — des collines douces, toutes de la même taille, à l'infini. La parade est fractale : on empile plein de couches de bruit à différentes échelles et on les additionne. Les grandes vagues lentes font les continents ; les vagues moyennes font les collines ; les minuscules vagues rapides font la texture rocheuse sous les pieds. Empilez tout ça — une technique appelée mouvement brownien fractal — et un paysage crédible émerge d'une simple arithmétique. Hello Games est allé plus loin avec un système maison surnommé « Uber noise », y glissant des passes façon érosion et des astuces analytiques pour que le terrain gagne des crêtes et des pentes burinées au lieu de bosses génériques.
L'astuce qui fabrique les grottes
Les collines et les vallées, c'est une chose, mais les détails qui rendent une planète vraie, ce sont les bizarres : falaises en surplomb, grottes sinueuses, arches sous lesquelles on peut faire passer son vaisseau. Le bruit pur ne peut pas faire ça, parce que pour un point donné de la carte il ne donne qu'une seule hauteur — donc le sol ne peut jamais se replier sur lui-même.
La parade astucieuse s'appelle le domain warping : avant de demander une hauteur à la fonction de bruit, on utilise une autre fonction de bruit pour déformer les coordonnées qu'on interroge. On ment au calcul sur l'endroit où l'on se trouve. Cette distorsion volontaire tord le paysage lisse en surplombs, tunnels et cavernes — des structures que la fonction d'origine n'aurait jamais pu produire seule. C'est une idée toute petite, presque espiègle, et c'est la différence entre une planète de dunes fades et une planète aux grottes où l'on a envie de se perdre.
Pourquoi c'est la même magie que dessiner un jeu en code

Ce que j'adore là-dedans, c'est que c'est exactement l'instinct derrière CodeQuest, le petit jeu façon Vampire Survivors que j'ai construit où chaque sprite, chaque son et chaque niveau est généré par du code au lieu d'être chargé depuis un fichier. Pas de dossier d'assets, pas de pipeline graphique — juste des fonctions qui produisent le monde à la demande. No Man's Sky, c'est cette même idée poussée à un extrême galactique, presque absurde : un univers qui ne pèse presque rien parce qu'il n'existe pas tant qu'on ne le regarde pas.
Il y a quelque chose de discrètement profond là-dedans. La plupart de ces dix-huit trillions de planètes ne seront jamais visitées par un seul être humain. Elles ne croupissent pas, invisibles, sur un serveur quelque part, à amasser de la poussière numérique. Elles sont du pur potentiel — des mondes qui ne s'allumeront que si un voyageur curieux pointe son vaisseau dans la bonne direction et pose à l'univers la bonne question. D'ici là, chacune d'elles n'est qu'un nombre, qui attend.
