Pourquoi Whiteout ?
Whiteout n'est pas une démo technique : c'est un jeu de tir zombie 3D complet et jouable qui fonctionne dans n'importe quel navigateur moderne et en tant qu'application Android prête à être construite en APK. Vous courez sans arrêt à travers un champ gelé dans une tempête de neige, une ville morte à l'horizon, tandis que les morts titubent hors du brouillard. Visez, tirez et survivez le plus de mètres possible.
- Vue à la première personne avec visée libre : les tirs à la tête tuent instantanément, les tirs au corps en prennent deux et les tirs aux jambes laissent un zombie rampant (démembrement)
- 4 armes : pistolet, fusil à pompe, carabine à levier (perforante) et un SMG entièrement automatique
- 6 avantages roguelite empilables, offerts tous les quelques centaines de mètres
- 6 niveaux d'horreur : le champ blanc, les pendus, les crucifiés, le gros, la mutation et la meute
- Caméra de balle en ultra ralenti, plus une caméra de kill lors des séries de kills
- Des clôtures que vous franchissez automatiquement, des fourrés où vous entendez avant de voir, un shader d'herbe balayée par le vent
- Audio Web entièrement synthétisé : gémissements positionnels, pas dans la neige, coups de feu et vent qui se calme lorsque quelque chose s'approche
- Contrôles clavier/souris et tactile, portrait ou paysage
- Anglais et espagnol (détection automatique), qualité graphique, volume, haptique et enregistrements sauvegardés
01. Des hordes qui ne s'arrêtent jamais
Chaque course propose un tout nouveau parcours. La difficulté augmente avec la distance : plus de zombies, des plus rapides, des coureurs qui sprintent droit sur vous et des meutes de plus en plus grandes. Si un vous atteint, la course est terminée.
02. Caméra de balle sur les tirs à la tête
De temps en temps, un tir à la tête est rejoué du côté de la balle : la caméra tourne autour de la balle en ultra ralenti jusqu'à l'impact. Les séries de kills déclenchent une caméra de kill zoomée.
03. Armes et avantages
Les armes se trouvent sur le terrain sous un faisceau de lumière. Touchez-en une et le temps ralentit pendant que vous décidez si vous voulez échanger votre arme. Tous les quelques centaines de mètres, vous choisissez l'un des trois avantages : Mains Rapides, Balles Perforantes, Chargeur Étendu, Déclencheur Sensible, Pied Léger ou Second Souffle (repousse la prochaine prise).
04. Six niveaux d'horreur
Chaque niveau ajoute une nouvelle menace : des corps pendus qui vous attrapent si vous courez en dessous, des zombies crucifiés hurlant à votre passage, le gros qui absorbe tout un chargeur, un mutant qui galope en zigzag et, enfin, des meutes de chiens.
05. Web et Android
Le projet Capacitor est entièrement configuré : icône, écran de démarrage, plein écran, portrait ou paysage, et l'écran reste actif. Une commande construit l'APK de débogage et, avec votre keystore, l'APK signé pour Google Play. Sur le web, il se déploie en tant que site statique sur n'importe quel hôte.
100 % procédural : pas de maux de tête liés aux licences
Les zombies, les chiens, le boss, les arbres, les armes, les clôtures, l'herbe gelée et la ville sont tous construits à partir de blocs dans le code. Le son est synthétisé en temps réel. Il n'y a pas de modèles, textures ou fichiers audio tiers à licencier.
Architecture propre et facile à modifier
- ~6 500 lignes de TypeScript strict ; three.js est la seule dépendance d'exécution
- Chaque valeur de jeu se trouve dans
config.ts : vitesses, vagues, munitions, brouillard, niveaux
- Règles pures séparées du rendu dans
logic.ts, avec 56 tests unitaires (Vitest)
- Chaînes dans
i18n.ts : ajouter une langue signifie ajouter un dictionnaire
- README couvrant la configuration, les contrôles, la disposition du projet et la construction Android
Technologies utilisées
- TypeScript · three.js (WebGL)
- Vite
- Capacitor (Android)
- Vitest
- Web Audio API
Exigences
- Node.js 20+
- Un navigateur avec WebGL (bureau ou mobile)
- Pour Android : JDK 21 et Android SDK 35 (ou Android Studio)