
This is a free online 3D cellular automata simulator for multi-state rules, also called Generations rules. Like in the 3D Game of Life, every cell of a cubic grid counts its live neighbors in all three dimensions to decide whether it is born or survives. But here a cell that doesn't survive does not disappear at once: it goes through dying states, one per generation, before it is dead. Those fading cells shape the growth into bands, spirals, crusts and crystals that two-state rules can't make. Type any rule like 4/4/5/M, start from a random soup or a single cell, rotate, zoom and fly inside the grid, and download what you see as a PNG image, an animated GIF or a WebM video.
The simulation and the drawing both run on your own graphics card, with WebGL, so even grids of 256 x 256 x 256 cells (16 million cells) run smoothly on a good computer. Nothing is uploaded to a server, and nothing needs to be installed.
Drag the image to rotate the grid, use the mouse wheel to zoom where the pointer is, right-drag or shift-drag to move sideways, and double-click a cell to center it. Click the image and use W, A, S, D to fly, R and F to go up and down, the arrows to turn, Q and E to roll, and hold Shift to go faster. Space pauses, and the period key calculates one generation. On a phone, use one finger to rotate and two fingers to zoom.
Below are the parameters you can configure to run the 3D cellular automata.
| Field | Description |
|---|---|
| Preset | A ready-made combination of a rule, a grid, the starting cells and the colors. The rules and their names come from the list of 3D rules collected by Jason Rampe for the Visions of Chaos software. |
| Rule | Written survival / birth / states / neighborhood. For example, 4/4/5/M means that a live cell with exactly 4 live neighbors survives, a dead cell with exactly 4 live neighbors comes to life, there are 5 states (dead, alive and 3 dying states), and every cell has 26 neighbors (M for Moore; N for von Neumann, 6 neighbors). Ranges like 13-26 are accepted, and an empty part means "never", like in /2/10/M. The tool also reads the S/B/C notation (4/4/5, without the neighborhood), the B/S/C notation (B4/S4/C5), and the two-state rules of the Game of Life (B5/S4,5). |
| Number of states | Dead, alive, and the dying states: with C states, a cell that doesn't survive spends C - 2 generations dying. With 2 states, there is no dying state, and the rule is a 3D Game of Life. Up to 100 states. |
| Neighborhood | Which cells count as neighbors. Moore: the 26 cells of the 3 x 3 x 3 cube around the cell, which touch it by a face, an edge or a corner. von Neumann: only the 6 cells that share a face with it, which gives growth with flat faces and sharp corners. |
| Edges of the grid | Dead: the cells outside the grid count as dead, so the structures that reach the edge are cut. Wrap around: each face of the grid touches the opposite face. |
| Size of the grid | The number of cells on each side of the cube, from 32 (32 thousand cells) to 512 (134 million cells). The larger grids need a graphics card with enough memory and speed. |
| Speed | How many generations are calculated per second. If the graphics card can't keep up, the simulation slows down instead of skipping images. |
| Start with | A random soup of live cells in the middle of the grid, or a pattern: a single cell, a 3D cross or a small cube. |
| Size, shape and density of the soup | The size of the region filled with random cells, in percent of the side of the grid, its shape (a cube or a sphere), and the percentage of its cells that start alive. Some rules only survive with dense soups, others only with sparse ones. |
| Symmetry | Mirrors the soup on the three middle planes of the grid. The rules keep the symmetry, so the structures stay symmetric forever. |
| Seed | The number that creates the random soup. The same seed always gives the same soup. The dice button picks a new one. |
| Dragging the image, field of view, flying speed | How the camera moves: rotating freely, around the vertical axis, or turning on the spot like in a video game, the angle seen by the camera, and the speed of the keyboard movements. |
| Rotate the camera around the grid | Turns the camera slowly around the vertical axis of the grid, also in the downloaded animations. |
| Visible part of the grid | Shows only the cells between two values on each axis, to cut the grid open and see the layers of dying cells inside the structures. The hidden cells are still simulated. |
| Show the dying cells | When it is off, only the live cells are drawn. The dying cells are still simulated. |
| Color by | What chooses the color of each cell: its state (alive, or how far it is in its dying), its position in the grid, its age (how many generations it has been alive), its height, its distance from the center of the grid, or one color for every cell. |
| Palette | The gradient used to color the cells: Aurora, Fire, Ice, Sunset, Forest, Rainbow or Grayscale. With "State", the first color is for the live cells and the last one for the cells that are about to die. |
| Shadows, ambient occlusion, outlines, fog | The lighting of the cells: the shadows they cast on each other, the darkening of the corners and holes, dark lines on the edges of each cell, and the fading of the farther cells into the background. |
| Samples per pixel | When nothing moves, each pixel is calculated again several times, at slightly different positions inside the pixel, which smooths the edges of the cubes. |
| Resolution / Width / Height | The size of the image in pixels, also used for the PNG download. |
| Animation | The format (animated GIF or WebM video), the number of frames, how many generations are calculated between two frames, the number of frames per second and the width of the animation. |
In the Game of Life and its 3D version, a cell has two states: alive or dead. At each generation, a dead cell is born when it has the right number of live neighbors, a live cell survives when it has the right number, and every other cell is dead at the next generation. Multi-state rules, also called Generations rules, add a third possibility: a live cell that doesn't survive starts dying. It goes through one dying state per generation, and only then is it dead. A dying cell doesn't count as a live neighbor, and it can't be born again until it is dead.
The best-known multi-state rule is Brian's Brain, a 2D rule invented by Brian Silverman, where every live cell dies immediately (it has 3 states: alive, dying, dead) and a dead cell is born with exactly 2 live neighbors. Because the cells just behind a moving front are dying and can't be born, the fronts can only move forward, and the grid fills with fast moving waves and spaceships. The name "Generations" comes from MCell, the cellular automata program of Mirek Wójtowicz, which gathered many of these rules.
In 3D, the same idea gives shapes that don't exist with two states. The dying cells form layers behind the live ones, which show the history of the growth: concentric bands on the faces of the "Diamond growth" crystal, a crust of live cells over cooling layers in "Pyroclastic", spirals on the surface of "Shells". The number of states sets how thick those layers are, so changing only that number turns the same rule into a completely different structure. The rules of the presets come from the list collected by Jason Rampe for Visions of Chaos, written survival / birth / states / neighborhood: 4/4/5/M is the rule "445", in which a cell survives and is born with 4 live neighbors, with 5 states and 26 neighbors.
To run in real time, this tool does all the work on the graphics card. The grid is stored in a 3D texture with one byte per cell, holding its age while it is alive and its dying state after that, and every generation is calculated in parallel for all the cells. To draw it, a ray leaves the camera through every pixel and steps through the grid cell by cell until it meets a cell that is not dead, jumping over the large empty regions in blocks of 64 or 512 cells.
Yes, this tool is 100% free and works directly in your browser, with no installation and no sign-up required.
Are my simulations uploaded to a server?No. The simulation and the images are calculated by the graphics card of your own computer or phone, and nothing leaves your device.
What is the difference with the 3D Game of Life?The 3D Game of Life only has two states, so a cell that doesn't survive is dead at once. This tool also simulates rules with dying states, which take several generations to die. A rule with 2 states, like 4-5/5/2/M, works in both tools and gives the same result.
How do I read a rule like 9-26/5-7,12-13,15/5/M?The first part is survival: a live cell with 9 to 26 live neighbors stays alive. The second part is birth: a dead cell with 5, 6, 7, 12, 13 or 15 live neighbors comes to life. The third part is the number of states: 5, so a cell that doesn't survive spends 3 generations dying. The last part is the neighborhood: M for the 26 neighbors of the Moore neighborhood, N for the 6 of the von Neumann neighborhood. This is the "Amoeba" rule.
Why do I only see the outside of the structure?Many rules grow into a solid ball whose most interesting part is hidden inside. Use "Visible part of the grid" to hide half of the grid, as in the "Pyroclastic" preset, or fly inside the structure with the keyboard.
Why did all the cells die?Some rules are hard to sustain from a random soup. For example, 445 usually dies from a small or dense soup, but keeps going from a large and sparse one. Try another density, a new seed or a larger soup. When the last live cell dies, the simulation stops after the dying cells have finished dying.
How large can the grid be?Up to 512 x 512 x 512 cells, which is 134 million cells, if your graphics card has enough memory. The dying states don't make the simulation slower: a grid of 256 x 256 x 256 cells takes about 2 milliseconds per generation on a recent graphics card. On phones and laptops with integrated graphics, 128 x 128 x 128 is a good size.
Can I save an animation of the simulation?Yes. In the "Animation" section, choose an animated GIF or a WebM video, the number of frames and the number of generations per frame, and click the download button. The animation starts from the current generation and the current camera, and can also turn around the grid.







