TwinXeon by Renaudet
/Accueil/Tous les articles
Un jeu de la vie cellulaire en Javascript
Le jeu de la vie, vous connaissez ? Il a donné naissance à une branche spécifique du développement informatique : la programmation (et l'étude théorique) des automates cellulaires.

Les plus connus sont les automates basés sur une grille fixe :


(courtesy of Gthcommon - source Wikimedia)

Le principe est généralement le suivant : une cellule n'a que deux états : vivante (blanche) ou morte (noire) et cet état est évalué à chaque cycle d'affichage en prenant plus ou moins en compte l'état des cellules adjacentes au cycle précédent.

J'ai commencé récemment à travailler sur une librairie Javascript pour créer des petits jeux genre arcade etc. et j'ai alors imaginé remettre le jeu de la vie au goût du jour. Mais je ne voulais pas implémenter un système basique. J'ai donc développé un système cellulaire un peu plus complexe, avec notament les règles suivantes :

- les cellules sont mobiles et peuvent donc se déplacer plus ou moins vite
- les cellules ont un âge et des caractéristiques liées à cet âge
- les cellules sont différenciées : mâle / femelle / taille
- des mutations peuvent engendrer des cellules tueuses
- la reproduction des cellules est régie par des règles :
    - seul un couple de cellules mâle / femelle peut se reproduire
    - la reproduction n'est pas certaine
    - après reproduction, les cellules parentes se reposent un certain temps
    - les cellules enfants héritent de certaines caractéristiques de leurs parents

Voici un aperçu du monde où évoluent ces cellules quelques cycles seulement après la naissance des cellules souches (au nombre de 200 ici) :



Après quelques dizaines de cycles, les cellules se sont espacées, ont vieilli et sont devenues adultes. Des naissances sont apparues suite aux rencontres mâles / femelles, et des cellules mutantes tueuses ont commencé leur oeuvre :



Un système en expansion, avec presque 700 cellules encore en vie sur 900 cellules créées au total.



La légende :



Ce jeu de la vie cellulaire sera bientôt en ligne.


Ajoutez votre commentaire :
  Votre pseudo :
  Votre adresse mail (obligatoire):
  Votre commentaire :
 
Site optimisé pour un affichage en 800x600 sous Firefox 8.x - ©Copyright 2011-2012 by Nicolas Renaudet