Cellular automata


filed under cellular automata zig experiments

Added some more features to my Zig/WebAssembly experiment. I wrote a little font-drawing routine and added some interactivity. The font is called Chit from damieng, who has made loads of great bitmap fonts. I like that I can make little things like this now and share them on the web. One problem with doing everything using WebAssembly, though, is scaling on desktop vs. mobile. The numbers might be a bit hard to tap on if you're on mobile. Maybe the wasm program needs some awareness of the environment so it can do its own scaling?

What we are looking at is a bunch of cells that obey two rules. Every cell has 8 neighbours - up, down, left, right and diagonals. A dead cell becomes alive if the number of its living neighbours is one of the numbers in the birth rule, and a living cell stays alive if the number of its living neighbours is one of the numbers in the survival rule (otherwise it dies).

You can click on the numbers to change the rules. If you find something interesting, you can use this kind of notation and search for it: B5678/S45678. By searching that I learned that this particular one is called the Vote rule. Conway's Game of Life has the rule B3/S23.

Photosensitivity warning - some rules are very flashy


comments