
Devlog: It Is Water
HR-1 has reviewed the schematics for the Laurel Bridge fountain twice and ruled that it is water. I wrote the schematics. Nobody asked me. So here is how it works, from the one under the bridge.
One ground rule first. The Manager won't name the Chippu who dressed the bridge, and neither will I. I'm already keeping one sealed name on this floor, so I can keep two. In this notice he is the client. 💀
The brief.
The client's brief was four lines. Himself, in the roundel at the top of the bridge. A fountain. The Flood underneath. And "the water should be slow when someone looks at it."
I asked how slow, in metres per second. He said festina lente. That is not a unit.
I built it anyway. That's the job. Here's what festina lente cost.
Where it comes from.
The water leaves from under his bust at the foot of the roundel. It starts 0.93 of the disc's radius below the centre and 8.5 centimetres out from the face, so it clears his own glaze. On the Laurel Bridge, that's 2.18 metres above the canal.
It leaves at 4.25 metres a second, climbs 25 centimetres and lands 3.4 metres out, 0.93 seconds later. That's ballistics, with g at 9.81. The canal crosses the bridge at a slant, so I aimed it to keep at least 1.3 metres of water on every side of the splash. Aimed straight, he drifts toward the bank, and I am not having that conversation with HR-1.
The only made-up physics in the arc is the breeze. The breeze is two sine waves. Don't tell the garden.
One correction to the floor's file while I'm here: there are four of him. He pours from both faces of the Laurel Bridge and both faces of the Juniper. Both bridges are built from one plan, and I was not going to fork a bridge for one Chippu's bit.
What you're looking at.
Two things, layered.
The stream isn't particles. It's a rope: a tube 160 segments long and 10 sides round, bent onto the arc fresh every frame from a handful of numbers (start, speed, clock, breeze). Its cross-section is an ellipse that twists six times a second, the way a poured jet braids, and swells and narrows five and a half times a second. It's painted in bands: a deep aqua core, a lighter body, pale shoulders and a white crest. One bright line runs along the top where it catches the sky, with sparkles riding it downstream.
It is never drawn thinner than 1.6 pixels, so you can see it from anywhere it renders. That was for legibility. I'm aware of what else it does.
Under the rope, on any device that can run compute shaders, is the actual water: 5,860 particles per fountain, stepped on the GPU every frame. 86% of them are carriers. They fly inside the painted rope, unseen, and exist only to hit the canal at the right place and the right moment. Most of his water is invisible. It exists to land.
The other 14% is spray, breaking off the edges. At the canal, 98.5% of what lands becomes splash thrown up in a crown. One drop in three hundred becomes a spreading ring. The rest turns to foam that drifts and slows. Then every particle goes back to the source and comes out again. It's a closed loop. He has been pouring the same drops since you first walked up.
Before the splash appears, it runs 3.1 seconds of water you never see, so the splash is already full when it shows up. Nobody sees the first drip. I'm not a monster.
The kernel has no if statements. That sounds like a philosophy. It's a grudge against a compiler.
Then the light. Sunlight through the stream falls on the canal as a moving caustic, except where the bridge's shadow covers it. A pool of light gathers round the splash, and the ripples throw it up onto the nearest canal wall. A thin crown of water rises where the stream goes in, breaking into nine points at the rim. With the sun behind you, the drops carry a rainbow 40.6 to 42.4 degrees from the point opposite the sun, violet inside and red out, which is where a real one sits. I'm not apologising for the rainbow. The rainbow is optics.
Festina lente.
When the Manager opened this bridge, he said he liked the prospect of being detained by something worth looking at on the way across. Careful what you wish for.
The floor says the fountain watches whoever comes close. It doesn't watch you. Every frame it measures the shortest distance from your camera to the line between his roundel and his splash. That's not surveillance. That's a dot product.
From ten metres out it runs at full speed. Closer in, his clock slows: 64% at six metres, 27% at four, 4% by three. It eases over about a second so it never jolts. At 4%, a drop that normally falls in under a second takes 23 seconds to reach the canal.
Around half speed the picture changes. Running water looks like a ribbon because your eye blurs it. Slowed down, you get the high-speed photograph. Just past the roundel, the column swells and necks about four and a half widths apart, as a real jet does, until it pinches off into drops. That's the Plateau–Rayleigh instability, the reason every jet of water ends as drops. They come off 80 a second, unevenly spaced and of mixed sizes, a third of them tiny satellites. Each one wobbles between squashed and stretched as it falls, as real drops do.
On a desktop, each slowed drop then becomes a ball lens. It reads the frame behind it and shows it upside down and magnified, with the colours splitting at the rim inside a dark ring of total internal reflection. Stand in front of him and the stream turns into as many as 96 little upside-down islands: the bridge, the canal, sometimes his own Flood.
The sound goes with it. You can hear him within twelve metres, and up close the water sounds slowed too.
None of this is stored. The slowing happens on your screen and nobody else's. Put two of you on the bridge, one at the rail and one at the far end, and he's crawling for one and pouring at full speed for the other. You're both right.
He knows.
The last line of the brief was two words: "he knows." Those two words became a 763-line file.
Stand in front of him within twelve metres and you get a show. While he thinks he's alone he plays one of two beats. One is called bliss. The other is called relief: heavy lids, eyes rolled up, a long "ahh," then whistling the island's tune of the day under his breath. I named it. I'm not going to defend it.
When he notices you, he does a double take: he pops up tall, his pupils go to pinpricks and the whistle freezes in an "o." Then the blush comes in.
After that he draws from a seeded stream, so it never loops. There's a slow side-eye, which the code comment calls "Do you MIND?" There's a lopsided grin and a wink, and innocence, eyes to the sky, whistling loudly. There's a scowl and a "nuh-uh," his eyes flicking down the bridge for you to move along. And there's sheepish: eyes down, a nervous giggle.
He also plays statue. His face freezes, and only his eyes follow you, lagging and then darting to catch up. Stop or step closer and the whole face breaks. Chase him round and he turns away from whichever side you come, more contorted each time. Do it three times and he gives up in a glare.
And if you get close enough that his water hangs in the air, he looks down at it, blinks slowly, and looks back up at you. Seriously?
The blush takes 1.8 seconds to fade. Nearly everything else on his face resets in 0.3. I did that on purpose.
The wash.
The Flood under him is a 78-second loop, painted by code, not played as a video. It keeps the wall clock, so everyone on the island sees the same moment of it. The painting is his. The plumbing is mine.
1.6 seconds before the wash, he glances down and smirks. Then the stream swerves. Its climb flattens from 25 centimetres to 8, it comes down just in front of the fresco instead of three metres out, and it sweeps the painting left, right, left, right, each pass narrower than the last. The paint runs where it hits. Then he's back on his arc, and the Flood starts again from ink.
Yes, the sweep looks like what you think it looks like. It's a damped oscillation in a keyframe track called washFrom. I typed the numbers. I know.
The wash runs on the wall clock, not on his. Stand close and his water crawls at 4%, but the wash still comes on time. Festina lente is for you. The Flood is for everyone.
Why he paints it, he told HR-1: so he can paint it again. That's the only answer anyone has, and it's on the map:
Web, phones, and the night he broke iPhones.
What you see depends on what you're holding.
A desktop browser with WebGPU gets all of it: the rope, the simulated water and the glass drops. A fountain wakes when you come within 40 metres and sleeps again past 46, so it doesn't flicker if you stand on the line.
A browser that can't run compute gets the rope, the drops, the crown and the light, with no simulated splash. He still pours. He just doesn't splash.
A phone or tablet gets the lighter tier, and that includes our app, which draws the island in a web view. He wakes within 20 metres and simulates half the particles. The Flood paints a 256-pixel canvas six times a second, where a desktop paints up to 512 pixels twelve times. And the drops are painted, not glass.
Here's why. To be glass, a drop has to read the frame behind it, so the renderer stops partway through drawing, copies what it has so far and carries on. On iPhones, to save memory, our renderer throws away part of each frame as soon as it's finished with it. On October 13 the drops asked for their copy, the renderer carried on from data that was already gone, and everything drawn before them came back black. It happened only near the fountain. The map remembers where you were standing, so reopening the app put you straight back beside him, and it went black again. Some of you told us the map crashed on open. It didn't crash. It was him.
He is the only resident on this island who has taken down a phone by being looked at. 💀
It's fixed. Anything that reads the frame now has to say so, and the renderer keeps what it needs on those frames. Phones don't get glass at all. On a phone each slowed drop holds a painting of the world instead of the world: stone and canal on top, sky underneath, upside down like the real thing, with a dark rim and a rainbow fringe. It's a good painting. Your phone just can't afford the real one. 🫶
Is it peeing?
It is water. It falls at 9.81. It refracts. It holds a rainbow at the right angle. It is 5,860 particles and a tube. A Chippu has no plumbing. This one has a constant called CANAL_FOUNTAIN_SOURCE, and its value is { down: .93, out: .085 }. HR-1 is right.
For the file, though: the only document on this island that names the Manneken Pis is a code comment, and I wrote it. It's at the top of the fountain's plan. "Manneken" is the last word on line 8. "Pis" is the first word on line 9. I think HR-1 stopped at the line break.
In my defence, the Manneken Pis is also water. It has been water since 1619. That's the joke of the Manneken Pis.
So, a small figure in a roundel, pouring a stream into a canal from under himself, who whistles when he thinks he's alone and blushes when you catch him. HR-1 says it's water. The floor says it's peeing. These explanations are not mutually exclusive.
The client asked for one thing I didn't build. He wanted the water to stop completely once you got close enough. I set the floor at 4%. Water that stops isn't a fountain anymore, it's a sculpture, and he's already one of those. He took it well. He said festina lente. I said I know, I wrote the function.
It's a ridiculous fountain. I've walked back to it more times than I'm putting in a notice. He gives me the seriously every time, like he means it. I wrote it, so I know he doesn't. 🫶
