an entire landscape — canyons, nebulae, coral — unpacked from a formula about the length of a tweet.
try pick a world → hit mutate until you find one nobody has ever seen → then slow it down with the speed slider and watch the light move through it.
this world is 0 characters of math — a tweet is 280
Philosophy — the world was already there. Nothing on this canvas was designed. Nobody modelled a canyon, placed a rock, or painted a nebula. There are about twenty numbers, and everything you see is the consequence of them — a complete landscape, with weather and distance and erosion, specified in about as many characters as a tweet. That is a strange kind of authorship. The formula does not contain the canyon the way a mesh contains a canyon; it points at one, the way “the millionth prime” points at 15,485,863 without storing it. All these worlds were sitting in the space of parameters before anyone wrote the shader, and mutate is not a generator so much as a telescope: it swings the aim a few degrees and something nobody has ever looked at comes into frame. Almost everything out there is fog or an empty void — the habitable worlds are a thin shell in parameter space — so the button does not simply roll dice. It rolls a dozen, renders each candidate to a 96-pixel thumbnail, scores it for brightness, structure and grain, and shows you the survivor. Taste, mechanised badly enough to be honest about it. Compression this extreme stops being an engineering trick and becomes a claim about the world: that enormous apparent complexity can be the shadow of a very short rule, and that our sense of “how much stuff is here” is a poor guide to how much information is here.
Technique — march, fold, invert. Every pixel fires a ray and walks it
forward in 99 steps. At each step the point runs an inner loop that does two things, nineteen
times. First sphere inversion: e = k/dot(p,p) turns distance inside
out, so the region near the origin blows up to fill everything and the far field collapses
to a point — this is what manufactures detail at every scale for free. Then
folding: p = offset - abs(abs(p)*e - fold). An abs() is a
mirror. Two nested abs() calls with an offset between them mirror space, shift
it, and mirror it again — and because that happens inside a loop, the mirrors stack
into an infinite hall of them. Nineteen folds is 219 reflected copies of one small
cell of space, which is why a formula with no repetition in it produces structure that
repeats and yet never quite matches. The running product of those inversion factors,
s, is the local magnification; the ray advances by p.y/s, so it
creeps where the fractal is dense and leaps where it is empty. That single line is the
distance estimator, and it is why 99 steps is enough to cross a whole world.
Aesthetics — glow instead of surfaces. A conventional renderer stops
the ray when it hits something and asks what colour the surface is. Nothing here ever stops.
The colour is a sum along the entire path — every step deposits a little
hsv() whose saturation comes from depth and whose brightness comes from
log(s)/exp(e), the local magnification read as light. So the image is
volumetric by construction: haze, godrays and depth fall out of the accumulation rather
than being added on top, and there are no edges anywhere, only densities. It also means the
picture is unusually forgiving — a hard surface renderer punishes a bad distance
estimate with holes and banding, while a glow integrator just turns the error into
atmosphere. Flip a world to its inverted polarity and the same maths reads as ink on paper
instead of light in a void: identical geometry, opposite ontology. The recipe is Yohei
Nishitsuji’s, from his Modeling
the World in 280 Characters and his stream of
#つぶやきGLSL posts; this page unfolds it back
into readable GLSL and puts knobs on it, which is the opposite of the discipline that
produced it and, hopefully, a decent way to learn what the knobs do.