Current Pattern

Pattern File

How It Works

Conway's Game of Life is a a cellular automaton invented by John Horton Conway in 1970. It is not a game in the conventional sense, but rather a simulation that runs on a grid of square cells, each of which can either be dead or alive.

When the simulation updates, living cells interact with their neighbors according to four rules. Any living cell with fewer than two live neighbors dies due to underpopulation. Living cells with four or more neighbors die through overpopulation. Living cells with two or three live neighbors continue to survive. Dead cells with three living neighbors come to life, as if via reproduction.

Despite the simple rules, Life patterns exhibit chaotic changes. Conway designed the rules of the game to avoid explosive growth and produce interesting patterns. This formulation provides endless possibilities - the Game of Life is as powerful as a universal Turing machine, so even self-replicating patterns can be created.

This implementation uses WebGL shaders to run the Game of Life simulation on the graphics card. It uses a ping-pong technique with two render targets - one contains the current simulation step, and the other receives the results of applying the rules, producing the next simulation step.

The original Game of Life was not interactive, but this version allows live editing of the world. Simulation parameters and thousands of patterns are in the "Settings" section on this page. Select one of the preset patterns and try tapping on the world.

This demo was inspired by Golly, a cross-platform simulator for the Game of Life and other cellular automata. If you have any questions or suggestions then please get in touch or open an issue. For more information about Conway's Game of Life, read the Game of Life Wiki.