OPEN SPACE.EXE — moteur FPS à rendu logiciel
Auteur — écrit de zéro, en pilotant une IA
Moteur façon DOOM (BSP) sans WebGL : deux backends de rendu (CPU 8 threads via SharedArrayBuffer, WebGPU), sprites voxel, niveaux faits main.
parité pixel CPU ↔ WebGPU mesurée
Le problème
Un moteur façon DOOM dans le navigateur, sans WebGL, oblige à tout rasteriser soi-même : projeter la géométrie, plaquer les textures, trier par profondeur, le tout en temps réel sur un CPU JavaScript. Écrit naïvement, un tel pipeline ne tient pas la cadence.
L'approche
Un vrai pipeline BSP : partition binaire de l'espace, tri par profondeur sans z-buffer. Deux backends interchangeables rendent le même monde au pixel près, une parité mesurée : un rasteriseur CPU réparti sur 8 threads via SharedArrayBuffer, et un backend WebGPU/WGSL. Sprites voxel, niveaux faits main via une couche d'auteur RoomBuilder.
Aperçu

Points clés
- Moteur BSP logiciel écrit de zéro, sans WebGL
- Deux backends : CPU 8 threads (SharedArrayBuffer) et WebGPU/WGSL
- Parité pixel CPU ↔ WebGPU mesurée
- Sprites voxel, niveaux faits main
- Couche d'auteur RoomBuilder : rooms, connexions, winding automatique
Stack
- TypeScript
- WebGPU / WGSL
- Web Workers
- SharedArrayBuffer