In this chapter
In this chapter
One course, one click
The construction animation already knew when each piece would appear. The sound work used that schedule, so clicks could follow the building as it grew. Playing a separate sound for every brick would have buried the gesture in noise.
Pieces starting within the same thirty-millisecond bucket become one event. Clicks stay at least thirty milliseconds apart, only three click voices can play at once, and an event more than 150 milliseconds late is dropped. A delayed rattle after the house has finished would be worse than a missing click.
Size changes the pitch through a clamped square-root relationship: smaller pieces sound higher. Undo and redo use a simpler replay with a 110-millisecond gap and a level eight decibels lower. It gives repeated editing a quieter rhythm.
A house being placed
Sound under the pointer
A freehand wall carries a looping stacking sound. Its level and pitch follow the hand’s speed, the wall’s height and the curve of the stroke. Wood and glass layers join where the building context calls for them. Hold the pointer still for a tenth of a second and the sound begins to fade.
Terrain painting follows the amount of ground changed by each dab. The old path could trigger a material sound on every dab; now the first changed dab starts it and a loop carries the stroke. Handles tick when they cross a size or angle step, with a higher tick for up and a lower one for down.
These sounds are runtime feedback. They add no objects to the scene and no entries to undo. Muting clears the queued events as well as stopping the voices, so turning the sound back on should not release an old pile of clicks.
Changing the ground
Listen to the view
The ambient mix samples the view four times a second using a nine-by-nine grid of rays. More visible water brings more water sound; greenery contributes to the mix too. Zooming out raises the wind. Birds follow the daytime, rain follows its slider, and neon gets a hum at night.
A generated score adds pad and bass with plucked notes and chimes. Time of day changes its musical settings. While the player builds, the score thins out, then recovers over two to three seconds. The town leaves some room for the sounds under the mouse.
This was still an early audio pass. Ambience was mono, with no positional panning. The low sample rate also needed a listening check, especially when a pluck was pitched up. That check had not been completed when these clips were recorded.
Waiting for dusk
The atmosphere work continued with a more gradual evening. The time slider previews the light as it moves and commits one edit when released. Fixtures have their own seeded thresholds, so the town comes on in an order and unwinds that order at dawn.
A window’s pane, halo and light emitter have to agree on the frame when it switches. Otherwise the player sees a glowing window that has not yet lit the ground, or a pool of light under a dark lamp. The sequence keeps those pieces together. Neon can sputter as it comes on.
Optional chimney smoke drifts downwind, and a height-fog layer can catch light from the lamps. Both have controls. Existing Day and Night defaults were preserved, which let the recorded comparisons check the new atmosphere without quietly changing every old scene.
From the project notebook
This chapter draws on the project’s records as they stood on 24 September 2026.
- docs/visual-handoff.md · C2a construction audio and C2b ambience
- docs/visual-handoff.md · C3a time, dusk, smoke and height fog
- artifacts/feel-journey/10-C2/pkg/a-after-sound/

