bonjour,
je donne mes formules de collision 2d pour jeux flash en espérant que ça serve à d'autres, pas forcément aux codeurs de jeux flash d'ailleurs, c'est pas très difficile à porter en c++ .
pas besoin d'être un génie des maths pour y comprendre quelque chose, un niveau bac S suffit, c'est soit des bêtes comparaisons, des divisions entières, des courbes de fonction, et de l'algèbre vectoriel avec normale de plan et produit scalaire
chaque algo de collision est présenté dans un petit projet-test pour flashdevelop+flex_sdk avec une petite page de script
bref résumé du dossier:
- collisions sur une grille, pour les jeux codés à l'ancienne en "tile-base". c'est pas une formule universelle, elle est suffisante pour les jeux de plateforme 2d, mais insuffisante pour l'iso3d (c'est une formule toute simple qui décompose le mouvement sur x et y, y'a pas d'ordering des box le long du vecteur mouvement)
j'ai utilisé bêtement des multiplications et divisions au lieu d'optimiser avec les opérations sur les bits afin que ça soit compréhensible par les débutants
- collisions sur différents type d'objets, pour les jeux 2d plus modernes "object-based":
*aabb
*nuages plats, pente affine, courbe sinusoïdale
*collision approximative discrétisée d'une sphère contre polygones convexes (=brush) et polygone concave (=liste de segments)
Partager