Hexells is a Self-Organising System of cells, that was trained to build textures using neighbour communication only. This work exposes the relation between the life of an individual cell, and the cell collective as a whole. The original library belongs to Alexander Mordvintsev, and you can see the demonstration of his implementation here.
The "cell" system is based on Neural Cellular Automata.
Hexells was designed with widespread usage possibilities in mind. The software can be imported directly via npm, or can be used as a library by generating a single-file bundle with browserify via npm run build.
const canvas = document.createElement("canvas");
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
// `Hexells` is in the window scope
new Hexells(canvas);
document.body.appendChild(canvas);Available parameters (within the options argument):
powerPreferenceThe power preference to use when creating the WebGL context. Defaults to"default"brushRadiusThe size of the brush to use, in pixels. Defaults to16stepPerFrameThe number of steps to take when generating and displaying each frame. Defaults to1timePerModelThe number of milliseconds to wait before generating and displaying a different model. Defaults to20000responsiveWhether or not to respond to input from the client. Defaults tofalsefpsThe approximate number of frames per second to render. Defaults to25