Vizz 1.0
Clouds, generators and simulations
Every cloud Vizz can take the shape of, from a scan or a word to 66 equations and 19 simulations, with their settings.
A cloud is a set of points the particles gather onto. With /shape/mode on cloud, the field takes the shape of whichever cloud is on. Changing cloud is what a scene change does: the particles fly from one shape to the next.
Cloud slots
Vizz holds nine clouds at once. The clouds section of the panel lists them. Over OSC, /cloud/a picks one by number.
| Slot | Holds |
|---|---|
| 0 | The Lorenz attractor, built in. |
| 1 | The Aizawa attractor, built in. |
| 2 to 7 | Clouds you load, generate or type. |
| 7 | Also the live slot, for a stream or a simulation. |
| 8 | Video in. |
Loading more than six
The six loadable slots fill in turn. The seventh cloud you load replaces the oldest, and so on round. Vizz remembers what's in each slot and loads it again at the next launch.
Where clouds come from
- A file: drop a
.ply,.xyz,.pts,.csv,.png,.jpgor.jpegon the window. See Drop a file. - A word: type it and press make cloud. See type a word, make cloud.
- An equation: generate… in the panel, or
--cloud gen:NAMEwhen starting Vizz. See Generators below. - A stream: another app sending point clouds over the network. See Live streams.
- A simulation: simulate… in the panel, or
--live-cloud sim:NAME. See Simulations. - Video: NDI, Syphon or a camera. See Video in.
Generators
A generator is an equation that Vizz turns into a cloud. It's made on your machine when you pick it, so every one is exact and there's nothing to download. The guide is Make a cloud from an equation.
Each generator has a spec, the name you'd type after --cloud. Where it has settings, add them after a ? as key=value, separated by ;, for example gen:torus-knot?p=2;q=5. The key is the setting's name, or the name in brackets where the table gives one. In the panel, picking one with settings opens a row of them with make. A seed setting has a roll button that picks a new one, and each seed gives a different result.
Flows

| Name | Spec | What it is | Settings |
|---|---|---|---|
| Thomas | gen:thomas | Thomas' cyclically symmetric attractor — three sines; a knot of ribbons round the diagonal | — |
| Halvorsen | gen:halvorsen | Halvorsen's attractor — three lobes, cyclically symmetric; sheets folding into each other | — |
| Dadras | gen:dadras | Dadras' tri-scroll — three rolled sheets joined by a spine | — |
| Rössler | gen:rossler | Rössler's funnel — a flat spiral that lifts and folds back on itself | — |
| Four-wing | gen:four-wing | The four-wing attractor — four lobes off a saddle | — |
| Chen | gen:chen | Chen's system — Lorenz's cousin, wider and more tangled | — |
| Sprott B | gen:sprott-b | Sprott's case B — two quadratic terms, and chaos | — |
| Nosé–Hoover | gen:nose-hoover | The Nosé–Hoover oscillator — a thermostatted particle wandering a sea of tori and chaos | — |
| Arneodo | gen:arneodo | Arneodo's attractor — a jerk system with one cubic term | — |
| Burke–Shaw | gen:burke-shaw | Burke–Shaw — two scrolls with the symmetry of a propeller | — |
| Chua | gen:chua | Chua's circuit — the double scroll, from a real circuit with a nonlinear diode | — |
| Hadley | gen:hadley | The Hadley circulation — Lorenz's 1984 atmosphere in three variables | — |
| Rucklidge | gen:rucklidge | Rucklidge's convection model — a tall, folded ribbon | — |
| three-scroll | gen:three-scroll | The three-scroll unified system — three scrolls in one fast flow | — |
| Rabinovich–Fabrikant | gen:rabinovich | Rabinovich–Fabrikant — leaves and ribbons, from plasma physics | — |
| Aizawa | gen:aizawa | Aizawa's attractor — a rotating sphere with a spindle driven through its poles | — |
| Newton–Leipnik | gen:newton-leipnik | Newton–Leipnik — a tumbling rigid body, and two attractors in one system | — |
| Sakarya | gen:sakarya | The Sakarya system — two lobes crossing at an angle, like a bow tie in wire | — |
| Rikitake | gen:rikitake | The Rikitake dynamo — why the Earth's magnetic field reverses, and never on schedule | — |
| Shimizu–Morioka | gen:shimizu-morioka | Shimizu–Morioka — the butterfly's simplest relative, two wings and one quadratic term | — |
| finance | gen:finance | The finance system — interest rate, investment demand and price index, refusing to settle | — |
| Coullet | gen:coullet | Coullet's jerk system — one variable's third derivative, with a cubic pull | — |
| Genesio–Tesi | gen:genesio-tesi | Genesio–Tesi — the other classic jerk system, square rather than cubic | — |
| Lorenz-96 | gen:lorenz96 | Lorenz's toy atmosphere: a ring of variables advecting each other; the test bed every weather forecasting scheme meets first | variables (size) 4 to 40, default 5; forcing 0 to 20, default 8 |
| Duffing | gen:duffing | A mass in a double well, shaken — drawn on the cylinder of the forcing phase, so once round the tube is one period | drive 0 to 2, default 0.5 |
Maps

| Name | Spec | What it is | Settings |
|---|---|---|---|
| Clifford | gen:clifford | Pickover's Clifford map, lifted into depth by its own previous step | — |
| de Jong | gen:dejong | The Peter de Jong map of 1987, lifted the same way | — |
| Hénon | gen:henon | The Hénon map — the first attractor anyone drew that was plainly a fractal | — |
| Ikeda | gen:ikeda | The Ikeda map — light in a ring cavity, with a hook in the attractor nothing else here has | — |
| standard map | gen:standard | Chirikov's standard map on its torus — islands that close, and one orbit that never does | kick (k) 0 to 4, default 0.971635 |
| Gumowski–Mira | gen:gumowski | From a study of particle beams at CERN — moths and mandalas that change completely in the third decimal place | μ (mu) −1 to 1, default -0.801 |
Searched

| Name | Spec | What it is | Settings |
|---|---|---|---|
| quadratic | gen:quadratic | Sprott's search: random quadratic maps until one is chaotic — a new attractor every roll | seed (seed, roll), default 1 |
| quadratic flow | gen:quadratic-flow | The same search with an integrator inside: random quadratic flows until one is chaotic — smooth ribbons where the map gives dust | seed (seed, roll), default 1 |
Surfaces

| Name | Spec | What it is | Settings |
|---|---|---|---|
| supershape | gen:supershape | Gielis' superformula as a solid — a seven-fold flower | m 1 to 16, default 7; n1 0.1 to 10, default 2; n2 0.1 to 20, default 8; n3 0.1 to 20, default 4 |
| harmonic | gen:harmonic | A sphere rippled by a spherical harmonic | round 1 to 8, default 3; up 1 to 8, default 2 |
| Hopf | gen:hopf | The Hopf fibration — nested tori of linked circles, projected from the 3-sphere | — |
| orbital | gen:orbital | A real spherical harmonic as a balloon — the shape a textbook draws for an atomic orbital | l 0 to 8, default 3; m −8 to 8, default 2 |
| Klein bottle | gen:klein | The figure-eight immersion — a surface with no inside, and the crossing that three dimensions force on it | girth 0.5 to 5, default 2 |
| Boy's surface | gen:boy | The projective plane immersed without a boundary — three-fold symmetric, and thought impossible until 1901 | — |
| gyroid | gen:gyroid | A triply periodic minimal surface — two labyrinths that fill space and never touch; also Schwarz's P and D | kind (text), default gyroid; cells 1 to 6, default 1.5; level −1.5 to 1.5, default 0; wall (thickness) 0.01 to 0.4, default 0.07 |
| Dini | gen:dini | A pseudosphere dragged along a helix — constant negative curvature, everywhere the same | twist 0 to 1, default 0.2 |
| Enneper | gen:enneper | A minimal surface from 1864 that runs through itself twice, which is exactly the interesting part | — |
Curves

| Name | Spec | What it is | Settings |
|---|---|---|---|
| Lissajous | gen:lissajous | A 3:4:7 Lissajous knot, as a tube | a 1 to 9, default 3; b 1 to 9, default 4; c 1 to 12, default 7 |
| torus knot | gen:torus-knot | A (3,7) torus knot — three times round, seven times through | p 1 to 9, default 3; q 1 to 12, default 7 |
| Hilbert curve | gen:hilbert | One unbroken line through every cell of a cube — the cloud crawls along a curve that fills space | order 1 to 5, default 3 |
| spirograph | gen:spirograph | The curve a pen traces through a hole in a wheel rolling inside another, given a slow rise so it coils | wheel (R) 1 to 20, default 5; roller (r) 0.2 to 19, default 3; pen 0.1 to 20, default 5; rise (wave) 0 to 8, default 1 |
| figure-eight knot | gen:figure-eight | The only knot with four crossings, and the simplest one that is its own mirror image | — |
Fractals

| Name | Spec | What it is | Settings |
|---|---|---|---|
| Sierpinski | gen:sierpinski | The Sierpinski tetrahedron, by the chaos game | — |
| Menger | gen:menger | The Menger sponge, by the chaos game | — |
| Mandelbulb | gen:mandelbulb | The power-eight Mandelbulb's surface, found by marching rays inward | — |
| twisted gasket | gen:kifs | The Sierpinski tetrahedron with a turn folded into every step — shells, spirals and lattices, one number wide | twist (angle) −180 to 180, default 24; tilt −180 to 180, default 0 |
| Mandelbox | gen:mandelbox | Fold, invert, scale, add — where the Mandelbulb is organic, this is architecture | scale −4 to 4, default 2 |
| quaternion Julia | gen:quaternion | z ← z² + c in four dimensions, sliced back into three | c real (cr) −2 to 2, default -0.2; c i (ci) −2 to 2, default 0.6; c j (cj) −2 to 2, default 0.2 |
| Newton | gen:newton | Newton's method for zⁿ = 1 as a relief — basins whose boundary touches every basin at once | roots (power) 2 to 8, default 3 |
| Lyapunov | gen:lyapunov | The Markus–Hess fractal — where the logistic map settles into a cycle, drawn as towers over the chaotic sea | pattern (sequence) (text), default AB |
| Mandelbrot | gen:mandelbrot | The Mandelbrot set as a relief — the set a plateau, the escape time the country round it | — |
| Julia | gen:julia | A Julia set as a relief, c = −0.8 + 0.156i | c real (cr) −2 to 2, default -0.8; c imaginary (ci) −2 to 2, default 0.156 |
Grown

| Name | Spec | What it is | Settings |
|---|---|---|---|
| plant | gen:plant | A plant grown by an L-system — five generations of branching, thick wood to thin twigs | rule (text), default F[+&X][-^X]/F[\X]X; angle 5 to 60, default 25 |
| fern | gen:fern | A fern by Lindenmayer's rewriting — fronds off a curling spine, rolling as they go | angle 5 to 60, default 22 |
| coral | gen:coral | A three-way branching coral — every tip splits into three, a third of a turn apart | angle 5 to 60, default 30 |
| tree | gen:tree | A tree with a trunk — long wood below, short twigs above, branches off three sides | angle 5 to 60, default 20 |
| aggregate | gen:dla | Diffusion-limited aggregation — particles that wander in and stick where they touch; soot, lightning and copper all do this | seed (seed, roll), default 1 |
Patterns

| Name | Spec | What it is | Settings |
|---|---|---|---|
| Chladni | gen:chladni | Sand on a vibrating plate — points settle where the plate stands still | n 1 to 9, default 5; m 1 to 9, default 2 |
| foam | gen:voronoi | Voronoi foam — the walls between cells scattered in a box, meeting three at an edge as soap films do | cells 4 to 64, default 24; seed (seed, roll), default 1 |
| quasicrystal | gen:quasicrystal | Six plane waves on the five-fold axes of an icosahedron — a pattern that never repeats and is nowhere random | cells 1 to 8, default 3 |
| phyllotaxis | gen:phyllotaxis | The sunflower's own packing — one floret every 137.5°, the only angle that never lines up | angle 1 to 359, default 137.50776; rise 0 to 3, default 0.6 |
Simulations
A simulation is a cloud that moves by itself. It runs in the live slot and reacts to the music: most of them are stirred by the loudness and kicked by the kick drum, as each description says. Start one from simulate… in the panel, or with --live-cloud sim:NAME. The simulation you ran last starts again at the next launch.

Only life takes a setting: its rule, written as survive/born/states.
Simulated: grown
| Name | Spec | What it is | Settings |
|---|---|---|---|
| crystal | sim:crystal | Reiter's snow crystal on a hexagonal lattice — plates, sectored plates and stellar dendrites, sorted by the vapour the mids and highs set; each flake grows out and the next one starts | — |
Simulated: fields
| Name | Spec | What it is | Settings |
|---|---|---|---|
| fluid | sim:fluid | Stam's stable fluids — the Navier–Stokes equations on an endless sheet; the loudness stirs it, the kick bursts it, the snare spins it, the highs roughen it | — |
| reaction | sim:reaction | Gray–Scott reaction–diffusion — spots that grow, split and heal; the kick plants new ones | — |
| wind | sim:wind | Curl noise — tracers in a divergence-free noise field, a fluid with no solve; the kick is a gust, the highs roughen it | — |
| sandpile | sim:sand | Grains dropped and toppled — the model that named self-organised criticality, and a fractal nobody designed; the kick drops a load somewhere else | — |
| spirals | sim:spiral | The Belousov–Zhabotinsky reaction — rotating waves that annihilate where they meet, the same dynamics as a heartbeat; the kick seeds fresh defects | — |
| smoke | sim:smoke | The same solver in three dimensions, with heat — a plume that rises, shears and rolls up; the kick is a blast, the snare a shove, the highs the roughness | — |
| cyclic | sim:cyclic | States in a ring, each waiting to be eaten by the next: noise organises itself into scroll waves that turn for ever, because a spiral's own wave comes back round to feed it | — |
| life | sim:life | A three-dimensional cellular automaton in the Pyroclastic rule — a lattice that boils, endlessly; the kick drops a seed | rule (text), default 4-7/6-8/10 |
Simulated: many bodies
| Name | Spec | What it is | Settings |
|---|---|---|---|
| flock | sim:flock | Reynolds' boids — four thousand of them drawing streaks; the loudness is their pace, the kick a predator, the snare a scatter | — |
| slime | sim:slime | Physarum: sixty-five thousand agents that leave a trail and follow the strongest one they can see — a transport network out of three rules and no plan; the kick starts a new front | — |
| swarmalators | sim:swarm | Particles that swarm and synchronise at once, each depending on the other — five states from two numbers; the loudness and the mids move between them | — |
| cloth | sim:cloth | A sheet of sixty-five thousand particles hung from its top edge in an Arnold–Beltrami–Childress wind; the kick is a gust | — |
| kuramoto | sim:kuramoto | Kuramoto's coupled oscillators on a torus — a loud passage locks them into a ribbon, quiet frees them; the kick scatters half | — |
| liquid | sim:liquid | Four thousand particles of water in a tilting box — gravity swings round once a bar, so it pours corner to corner; the kick throws it at the ceiling | — |
| orbits | sim:orbits | Five hundred bodies pulling on each other round a heavy centre — the loudness is the clock, the kick a shockwave, the snare knocks the disc out of its plane | — |
| pendulum | sim:pendulum | Four thousand double pendulums hung in a sheet from neighbouring angles — it swings as one surface, creases, then tears; the loudness is gravity and the kick hangs it again | — |
| tangle | sim:tangle | One long elastic rod loose in a wind, tying itself in knots — it cannot stretch and it cannot pass through itself, which is the difference between a tangle and a scribble | — |
| vortex | sim:vortex | The thin cores smoke rings are made of, moving each other by Biot–Savart — rings that catch the one in front and thread through it; the loudness is their circulation and the kick throws a new one in | — |
Live streams
Any app that sends point clouds over the network can feed the live slot. Vizz reads PLY frames, one after another, on a TCP connection.
Listen for a sender
The default, listen://0.0.0.0:9848, waits for a sender to connect to this machine on port 9848. Press receive, then give the sender the address the panel shows under send to.
Connect to a sender
Type tcp://host:port and press receive when the other app waits to be connected to.
From the command line
--live-cloud takes the same addresses, a bare host:port, or the path of a .ply file that another app keeps rewriting. The stream is shown when its first frame arrives.