DeltaDrift, projet pour la Brackeys Gamejam 2026.1 sur le thème « Strange Places »
DeltaDrift, un jeu de pilotage très très nerveux
Ce matin vers 6h j’ai terminé le projet sur lequel je travaillais pour la Brackeys Gamejam 2026.1
Le jeu est jouable ici !

Je suis fatigué mais content de la tournure que les choses ont prises dans la dernière ligne droite où j’ai réussi à implémenter la grande majorité des features que j’avais en tête !
Le truc a commencé dimanche soir dernier, je ne sais plus par quel moyen mais je vois que Brackeys organise une jam sur une semaine.
Allez, j’ai toujours procrastiné les jams en distanciel, c’est moment en plus j’ai une semaine légère.
J’en avais fait une seule et j’avais abandonné en cours de route car techniquement ça devenait trop compliqué pour moi.
En plus je ne voyais pas du tout où j’allais niveau gamedesign, mais bon ça m’a permis de bien tester la conception d’UI physiques en 3D.
Post-mortem et description du process de conception.
Le concept et le démarrage :
Cette fois-ci je suis parti d’une idée de pilotage qui me trottait en tête depuis un petit bout de temps.
Je voulais partir sur un jeu ou l’inertie est très importante et ou les déplacements se font par une série d’impulsions.
J’avais déjà un peu travaillé sur un proto de mouvement dans ce style avec l’affichage de l’orientation du vaisseau et du vecteur de vélocité.
Lier visuellement ces vecteurs par une ligne pour voir le gamefeel qu’il en découlait me semblait assez enthousiasmant.
Considération design :
Dans un coin de ma tête traine depuis assez longtemps le concept des solides platoniciens que je trouve très élégant par son coté ésotérique, géométrique et mystérieux.
Ça colle bien avec le thème « Strange Places » en plus !
J’avais essayé de le mettre en œuvre dans la direction artistique d’un jeu sur lequel j’ai bossé il y a longtemps mais sans succès car le reste de la charte graphique ne s’y prêtait pas. Dans le cadre très contraint de la jam, ça m’a paru être un bonne entrée en matière pour réfléchir.

Une bonne contrainte pour construire cet univers avec des assets simples, limités et cohérents.
Au final j’ai fait une dizaine d’assets primitifs qui sont utilisés tant comme décor, qu’items ou autres éléments constitutifs du jeu, pas besoin de textures et le jeu fait 11mb.
Depuis peu j’ai bricolé un petit shader de damier en worldspace qui me motive énormement lors de la construction de protos.
C’est beaucoup plus parlant que le shader gris Godot de base et ça donne toute suite des infos sur l’échelle du jeu.
ça me rappelle tendrement les jours anciens du level design sur Half-Life avec Hammer.
Il m’a semblé crucial de trouver rapidement un rapport d’échelle satisfaisant pour les différents éléments d’un jeu et d’assurer leur cohérence globale.
Une bonne réflexion autour de la taille unitaire des élément de décor par rapport aux personnages et aux items me semble être un des piliers d’un gamefeel qui fonctionne et qui contribue à faire que le joueur se sente présent et investi dans cet espace.
Find the fun :
J’apprécie de plus en plus l’approche exploratoire du gamedesign où le jeu t’amène de lui même vers quelque chose en expérimentant petit à petit, le « find the fun » en gros.
Au début je pensais partir vers un jeu d’exploration spatiale un peu zen en mode Outer Wilds.
J’avais mis en place une gravité locale à chaque module géométrique et j’imaginais un genre de minigolf orbital où la trajectoire est cruciale et on doit arriver à un point précis par grande impulsion et petites corrections.
J’ai bossé sur un manager de décor avec quelques modules dans un pool qui sont instanciés en apparaissant et disparaissant suivant leur distance avec le joueur.
Le placement est encadré par des valeurs d’espacement entre les obstacles pour ne pas qu’ils ne s’agglutinent et leur assurer une bonne distribution dans l’espace, suivant 3 tailles pour 5 formes de modules différents.
Je bricolais sans trop savoir où j’allais et j’écoutais un peu de musique de fête foraine.
Hop j’ai eu envie de mettre les variables d’accélération très haut et là je me suis bien amusé.
Ce système de déplacement m’a offert une expérience de pilotage assez frénétique et mis très vite dans le flow.
Beaucoup d’efforts ont été investis pour faire fonctionner le systeme de viseurs de vélocité et de direction, en plus de la ligne qui y est liée.
Je me suis rendu compte qu’à haute vitesse, c’est toute une galère de concevoir correctement le bazar pour que ça ne fasse pas trop rigide ni trop souple.
Il fallait juste faire le constat que le boost étaint maintenant tellement puissant que ces infos n’apportaient plus grand chose.
Je les ai virés en même temps que la gravité, un peu à contre-coeur au début mais pour le meilleur je pense car ça rend le jeu plus comprehensible
Décor et skybox :
Comment apporter de la variété visuelle dans un jeu aride et avec si peu d’assets différents ?
La couleur du shader de damier à vite été branchée sur le passage de niveaux pour changer sur les éléments de décor, de skybox et les structures dans le skybox.
Car il y a un petit truc dont je suis très fier sur le skybox. Il est constitué d’une simple custom color en arrière-plan avec deux models liés aux déplacements du joueur.
Leurs rotations sont animées en code et avec un unlit material, ça apporte un peu de vie à l’arrière-plan.
Dessus, j’ai calé un petit pop de lumière sur le boost pour amener une autre connexion bizarre entre le joueur et le monde du jeu.
J’avais dejà mis en place une légère rotation sur tous mes éléments de décor et j’ai testé de les faire spin rapidement à chaque passage de checkpoint.
Ce dynamisme agit comme un cap mental lors du passage à un niveau supérieur, d’autant qu’encore une fois ça ajoute aux liens mystérieux entre le vaisseau et l’univers qui l’entoure.
Le travail autour des feedbacks m’a pris pas mal de temps, j’adore les petites sautes aléatoires qu’a le vaisseau quand on clique rapidement, ça évoque plein de petites explosions anarchiques.
J’ai ajouté des sons très tardivement par flemme et c’est dommage parce que pour le coup, une grosse partie du plaisir du pilotage vient de leur réglage.
Design sonore :
Tous les sons sont faits avec https://sfxr.me/ que j’adore et auquel je vais donner un peu de sous bientôt.
J’ai beaucoup joué avec les windup de pitch, l’aléatoire dans les pitch/volumes pour ne pas que les sons soient trop monotones.
Le joueur vit la sensation d’une expérience créative, comme si le maniement du vaisseau s’apparentait à jouer avec un petit instrument de musique avec un coté analogique et matériel.
Par exemple, la charge et le spin démarrent avec un pitch à 0.75 avant d’arriver à 1.0 en un quart de seconde, un vrai plus ludique, surtout que c’est la mécanique principale du jeu.
Il y a un petit effet doppler sur les checkpoint qui fait qu’on entend le son plus aigu quand on se dirige vers le checkpoint et plus grave quand on s’en éloigne.
J’aime beaucoup cet effet qui encore une fois donne un indice sur le déplacement dans l’espace.
Particules :
Travail sur les particules. Je les ai mises assez tard pour soutenir le sentiment de controle et amener du bruit visuel dans cet univers très polygonal.
Il y a un petit taf sur les particules de vitesse qui se déforment suivant la vélocité de la camera dans l’axe de la camera (Il faut que je le retravaille car je n’en suis pas satisfait sur les vues de coté).
On y gagne en sentiment de vitesse et on a une meilleure compréhension de l’espace pendant le pilotage. L’implémentation d’items a aussi beaucoup aidé, ainsi que les damiers pour donner un référentiel de distance.
Je suis content d’avoir pris le temps de réparer le script qui génère des ribbons 3D que j’avais bricolé et qui marchait bof bof.
Maintenant l’angle à son origine suit bien la camera en billboard et je trouve que les trainées fonctionnent super pour rendre lisible les mouvements (bigup aux vaisseaux de Homeworld)
J’ai passé pas mal de temps sur les tweens pour faire pop in et pop out les objets de toutes sortes (items, obstacles, menus) de façon satisfaisante.
Menus, expérience utilisateur :
J’aime bien que les options (réglage sensibilité souris et volume des sons) soient dispo en permanence à l’écran.
Ça évite de perdre du temps sur un écran d’options et je déteste faire des menus.
D’ailleurs le logo 3D du jeu est directement intégré à la boucle de jeu, je trouve toujours ça assez classe quand ce genre d’éléments est intégré à l’univers et limitent la friction pour commencer une partie.
J’ai mis une aire de despawn si on s’éloigne pour ne pas que ça paraisse bizarre de se balader autour du logo.
Il m’a semblé marrant d’amener de l’exotisme en assumant le jeu en français, avec des expression dont la compréhension n’est pas nécessaire.
Ça ajoute un petit truc cool pour les francophones et j’ai essayé de bien choisir des mots compréhensibles pour les anglophones lorsqu’il étaient importants pour le gameplay.
Je me suis marré à donner des noms décalés aux niveaux et aux événements du jeu en mode Tony Hawk, je trouve ça mignon, rigolo et décalé.
A un moment je me suis chauffé sur l’implémentation de shards à collecter en mode cristaux de Vampire Survivors pour remplacer le score par timing.
Une vraie galère à collecter à si haute vitesse. J’ai vite abandonné et je suis parti sur les items par la suite parce que le jeu manquait de quelque chose…
Spécifiquement il me manquait des trucs autour des objectifs de court, moyen et long terme.
L’ajout d’items de scoring à ramasser en vol pour donner au joueur un objectif de très court terme et d’opportunité était une piste.
Ça permet de créer des situations rapides de choix (prendre des bonus ou aller au level suivant ?)
Derniers réglages et métagame :
Je me suis tapé un délire autour des animaux totem de l’espace et ai ajouté en dernière minute des missions pour se donner un objectif de long terme et encourager à la rejouabilité.
Je n’avais pas trop envie de rester sur un système avec juste des highscores abstaits qui reset à chaque partie et n’amènent rien de très challengeant (c’est ce que je fais d’habitude)
J’ai l’impression que le fait d’avoir des objectifs définis permet de se fixer clairement un challenge.
Et pour finir j’avais pas trop expérimenté avec le post process et les shaders plein écran, d’autres jeux de la jam m’ont inspiré à implémenter un effet écran CRT de l’aberration chromatique pour assumer complètement le coté pixel crado et low-res du 440×240.
Bref je suis claqué mais c’était super instructif et motivant !
Et c’est bon signe je lance régulièrement le jeu pour me faire des petites parties de temps à autres !
Vous pouvez jouer au jeu direct dans le browser sur ma page itch.io