Je vois ce que tu veux dire Pim89. Mais si tu débutes, je ne te conseille vraiment pas de faire cela... Tu peux faire un moteur en pixel par pixel que tu exécutes max(delta_x,delta_y) fois. C'est beaucoup plus simple.
Mais si tu tiens tout de même à faire un moteur du style... -> en réfléchissant, si le personnage se trouve sur une plate-forme plate, alors ses pieds seront toujours à une position y multiple de 8 (la largeur de tes blocs), tu es d'accord?
Pour simplifier, prenons que ton personnage fait 16 pixels de hauteur (c'est un peu plus compliqué s'il n'en fait pas un multiple de 8). Si le personnage est à la position y 26, tu vas vérifier dans ta matrice aux positions (y+hauteur_perso)/8 s'il y a un "mur"... ici cela donne 5 (entier). Prenons qu'il y a un mur ici. Il faut maintenant "monter" ton personnage de manière à le faire passer dessus la plate-forme en question, ok?
Et là, c'est très simple: tu verras tout de suite que si tu arrondis sa position y à un multiple de 8, alors le perso passera bien au-dessus, c'est à dire à la position 24. Si le personnage fait 39 pixels de haut par exemple (Sonic

), il faudra calculer de manière à ce que juste le plat de ses pieds (mais pas sa tête donc) soit à une position multiple de huit.
Ce type de moteur est plus difficile à gérer et ne convient pas à certaines applications. Par exemple, pour Sonic, il est quasiment impensable de faire un moteur qui fonctionne correctement de cette manière car la moindre imprécision est inadmissible (il faut penser que son point d'appui n'est pas forcément le bas, qu'il y a les plate-formes très inclinées, etc.); il faut impérativement passer en pixel par pixel si tu n'es pas sûr de ce que tu fais...

Mais pour Mario, alors il n'y a pas de problème.
Pour conclure, je dirais que ce moteur consomme infiniment moins de processeur par contre est généralement moins stable. A toi de voir
