One dot = one command. It leaves the basal ganglia in the head, runs down the body tree through the girdle, and ends at the joint it drives. A joint that is not being commanded is silent. Colour is which channel the selector released; the yellow ray is where the eye says the cricket is.
What this is
Not an animation of a gecko. A body whose mass, proportions and joint travel come from measurements of living Eublepharis macularius, carried by a physics engine at 500 steps a second, driven by a brain whose parts are models of real ones — and every number in it is labelled with where it came from.
The top panel is the animal in a patch of desert. Everything in it is being solved, not played back: the feet load and slip, the tail swings because it is a fifth of the body's mass, the skin is deformed by the bones underneath it.
The bottom panel is the same animal at the same instant, with the skin taken off. The pale shapes are the 48 collision solids the physics actually integrates — not a drawing of a skeleton, the real thing the engine uses. The thin blue lines are 27 nerve fibres, one per driven joint, each routed along the animal's own body tree: out of the head, down through the girdle, into the limb, ending at that joint's true anchor. A dot travelling one of them is a single motor command.
Six behaviours compete: hunt, flee, explore, bask,
rest, groom. They do not take turns and they are not scripted. Each one
puts forward how much it wants to run, and a model of the basal ganglia —
nine nuclei, run to a fixed point every control step — holds all six down and
releases exactly one. A channel that cannot get its salience above the measured release
floor of 0.1999 never runs, however far ahead of its rivals it is.
What drives them is the animal's own state. A day/night clock winds arousal down and rest takes over. Lying on cool ground drops its body temperature and bask wins, which walks it to a warm patch and then makes it lie down — because this species takes heat from the ground, not from light. Being warm and hungry with nothing in sight releases explore, which is not walking in a straight line: it stops, sweeps its head in 22° jumps, turns its body, walks a little, and scans again.
A camera rides the animal's snout at the position the morphology specifies. Every control step it renders a frame, and a model of the retina and optic tectum looks for a cricket in those pixels. The red channel is thrown away first, because this animal's longest-wavelength pigment sits near 521 nm. What survives is temporal contrast — what moved — measured against what the animal's own walking should have made move.
That matters, because the easy version of this page would hand the brain a coordinate and let it walk at it, and then the hunt would prove nothing. There is a switch on the live page that does exactly that, clearly labelled, because the honest detector is not good: over 3000 steps the cricket was in view on 215 frames, the eye fired on 487, and 18 of those overlapped. It hunts by persistence rather than by acuity.
This is a browser port of a model that runs in Python. The two are not similar — the same inputs go into both and the outputs are subtracted:
| walker, one gait cycle × 30 actuators | 7.3e−15 |
| basal ganglia gates | exactly 0 |
| day/night clock over a day | exactly 0 |
| search pattern, 4000 steps, state included | exactly 0 |
| eye: salience, bearing, elevation, 140 frames | 8.9e−16 |
| stripped web body vs full body, 400 steps | exactly 0 |
Exactly 0 means bit-identical. The rest is floating-point dust. The body separately passes 14 anatomical gates measured against the literature.
The rule this project runs on is that a value is published, derived or invented, and it says which, next to itself, in the source. A plausible number wearing a published number's clothes is the worst defect available. These are the ones the live page is standing on:
| Quantity | Value | Provenance |
|---|
Invented does not mean guessed and hidden — it means nobody has measured it and the model says so out loud. The leg rhythm is a case in point: no stride frequency has ever been published for this species, so the number carries the label rather than a citation it does not have.
flee has nowhere to go: this world has no predator and no refuge, so the channel sits at zero rather than being given something to run from. groom is a flat zero too — grooming in this species has a published trigger, licking the lips after a meal, and that is a reflex elsewhere rather than something this selector competes for. Both are honestly unreachable rather than quietly propped up.
The detector is weak, and the page says so on its own face. The strike is not wired to the capture. The energetics are not ported. This is the current state of a thing that is still being built, and the ledger behind it — every hypothesis, with the refutations kept — is in the repository.
People keep asking whether they can have their own. It is not ready for that yet. If you want one when it is, press the button — it tells me you want one, and it counts.
Send a message. It comes straight to me.
A real gecko. The only difference is that it is virtual.
Same body, same brain, same 38 grams — living on your machine, on its own time, whether or not you are watching.
It does not exist yet. What is real today is the animal you just watched — the body, the brain and the eye. The rest is what I am building toward. Tell me you want one and I will tell you when it is real.