生命游戏其实是一个零玩家游戏。在一个二维世界中,每一个格子看作一个细胞,每个细胞都有生和死两种状态。
每个细胞周围有8个邻居,这个细胞时刻关注着这些邻居的状态。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。:
- 如果一个细胞有2个邻居为生,则该细胞保持当前的状态(生死不变);
- 如果一个细胞有3个邻居为生,则该细胞为生(生不变,死转生);
- 其他情况下,该细胞为死(死不变,生转死)。
作为上帝,你可以通过点击一个细胞使其为生(或者按着鼠标左键乱画一通)。
- 绿色,表示该细胞刚刚变为生;
- 红色,表示该细胞生的状态仍然存在;
- 消失,表示该细胞为死。
下面列几个有趣的布局:
演示地址:http://dishuostec.sinaapp.com/javascript/game_of_life/game_of_life_canvas.html