IdotSand

Projet d’une simulation d’une coulée de sables dans un canvas 2D.

Langages utilisés : HTML / CSS / JS

Difficultés

La notion de framerate a été un peu étrange à assimiler au début.
Dans le déroulement du projet, j’ai tout d’abord programmé un système de gravité, de collision avec le sol et de collision avec un grain de sable déjà en dessous.
Cette partie m’a pris environ 1h à faire.


Mais un problème un peu plus complexe est venu juste après. En effet, il fallait maintenant faire en sorte de gérer un “écoulement”.
Par exemple: si un grain de sable n’est pas sur le sol mais sur un bloc, il faut vérifier si les cases juste à côté et les cases en bas à gauche et en bas à droite du bloc sont libres; si c’est le cas, on peut faire aléatoirement un écoulement soit à gauche, soit à droite.
Cette partie n’en a pas l’air, mais la difficulté ici était de bien vérifier toutes les possibilités pour bien gérer les éventuels bugs.
Cette partie m’a pris environ 4h.


(Les éventuels bugs : index trop grand ou trop petit, les blocs de sables qui ne s’empilent pas, l’écoulement qui ne se fait que d’un sens, l’écoulement qui ne fonctionne plus, les crashs et j’en passe…)

LIEN VERS IDOTSAND