Le Coursier relativiste
Livre des colis dans une ville où la lumière ne va qu'à 30 m/s
Un jeu de livraison en vue subjective dans une ville où la vitesse de la lumière est réglable, de 10 à 100 m/s. En trottinette électrique, on atteint vite une fraction notable de c : le décor se resserre vers l'avant, bleuit devant et rougit derrière, certaines couleurs passent dans l'infrarouge ou l'ultraviolet, et deux horloges divergent, ta montre (ta batterie) et celle de la ville (les délais des clients). Tout est calculé, pas truqué : aberration et retard de la lumière par sommet, Doppler spectral par pixel, effet projecteur. Trois tournées font comprendre l'effet Doppler et le paradoxe des jumeaux en jouant ; une page Théorie l'explique en trois niveaux.
Ce qui brille
- Rendu relativiste exact dans le navigateur : aberration et retard de la lumière calculés par sommet, Doppler par pixel à partir d'un vrai modèle spectral (soleil à 5 800 K, réflectances avec infrarouge et ultraviolet), effet projecteur en D⁴ et vision « classique » à maintenir pour comparer
- Physique exacte et testée : vitesse propre et segments hyperboliques, juste au millionième quel que soit le nombre d'images par seconde ; vitesse de la lumière réglable par le joueur, le jeu s'adapte
- Deux horloges au cœur du jeu : ta montre est ta batterie, l'horloge de la ville fixe les délais ; attendre coûte plus cher que tourner vite, le paradoxe des jumeaux devient une stratégie
- Pensé pour le téléphone : direction par inclinaison avec permission iOS et repli au doigt, multi-touch, 60 images/s sur iPhone, installation sur l'écran d'accueil
- Inspiré d'OpenRelativity (MIT Game Lab, « A Slower Speed of Light »), réécrit en GLSL et corrigé ; page Théorie débutant, intermédiaire et expert
Mode d'emploi
Sur téléphone, en paysage : maintenir la moitié droite pour accélérer, pencher le téléphone (ou glisser à gauche) pour tourner, Frein pour ralentir, 👁 pour voir la ville sans relativité. Au clavier : flèches, Espace pour freiner, C pour la vision classique. La vitesse de la lumière se règle dans Réglages.
Fabriqué avec
- JavaScript sans framework
- Three.js (WebGL2, shaders GLSL maison)
- Vite
- Vitest (775 tests)
- DeviceOrientation (inclinaison, permission iOS)
- Pointer Events multi-touch
- Wake Lock, plein écran, manifeste PWA
- MathML (page Théorie)
- Playwright (vérifications et captures)
- GitHub Actions + GitHub Pages