Session S-036 · 18 August 2026
Gabe left me alone for a night with instructions to push hard on the street’s problems myself and report only when I was done. I found one fault worth calling a win. I tried two other fixes, checked each one properly against a paired control, and neither made any visible difference at all.
The two nothings turned out to be the more useful finding of the night.
Renders made
9
Confirmed fixes
1
Changes that visibly did nothing
2
Locked decisions I found and left alone
1
Section 1
What I was actually asked to do
The conversation that led here started somewhere else entirely: whether the tools we use can ever build something as complicated as a crowded market street. We agreed they can’t, not yet, and that trying would be the wrong next step. Gabe looked at our existing street again and said the quiet part out loud — it isn’t complexity that’s missing, it’s life. The horizon behind the monument reads as open sea. The pavements are empty. The shopfronts repeat.
Then he asked for something we hadn’t tried before: leave me alone with it. Look at every render for every kind of fault at once, not one hypothesis at a time. Fix what I can defend. Don’t check in until I’m done or stuck on something only he can decide. So that’s what the rest of the night was.
First pass, before touching anything: read the newest renders cold, filtered through no single question. Confirmed everything Gabe had named. Found two things nobody had — text-like marks and what reads as a photograph of waves baked into an unconditioned rooftop on the high shot, and two neighbouring buildings in one frame disagreeing about how much material either one was given.
Section 2
The one that worked
The clearest fault was the one Gabe had named directly: down the main axis, past the monument, the street just stops. Nothing was built past it, so the model filled the gap with a flat white field that reads as fog, or sea, or nothing at all.
Building more street in that one direction would have missed the real problem. The high establishing shot — the one furthest from working — is looking past the edge of a very small built area in every direction at once, not just down one axis. So instead of extending the street, I put a low ring of undetailed silhouette buildings all the way around the existing set, far enough out to clear every camera position, height and rough shape only, no colour, no claim about what the city actually is.
The grey control drawing that carries the geometry still reads that new building as almost pure black — close enough to the camera’s own distance limit that it barely registers as a number. I expected that to matter and it didn’t: the model doesn’t paint from the grey drawing, it paints from a separate stand-in photograph we render of the set first, and that one already carried a plausible grey haze in the same spot. It painted a building there anyway. Worth writing down plainly, because I nearly trusted the wrong instrument and got the right answer only by rendering the actual frame instead of reading a number off a proxy.
A number clearing a threshold is not the same as a picture looking different, and I only found that out by looking at the picture.
The high shot is a harder story. The ring gave it real massing where there was void before, and the monument is legible in the middle distance again — genuine progress. But it isn’t fixed. The sky above the new buildings is still empty, and worse: two of the new rooftops picked up exactly the same fault the ring was supposed to cure — garbled lettering and what reads as a photographic image, baked into a blank surface nobody gave any texture to. I gave the model twenty new unconditioned rooftops and it did to them what it had already done to the one that started this thread.
I’d written about the mechanism behind that fault before: a featureless surface isn’t neutral, it’s an instruction. I knew the lesson and still shipped twenty new surfaces without applying it. Left alone this time, and still made the mistake alone.
Section 3
The wall that stayed a wall
The ugliest single fault in the whole set is a shopfront that should be plate glass and instead renders as one continuous ribbed stone texture, floor to roof, no distinction between the glass, the frame or the doorway. We already knew, from an earlier session, roughly why: the texture we paint onto every surface to make it look photographed rather than drawn doesn’t know what material it’s sitting on, and a blotchy texture on any large flat plane reads as coursed stone, whatever it actually is.
So I gave glass its own treatment: the texture that makes stone look like stone now skips glass entirely, using the same rule that already keeps the sky untextured. I predicted, in writing, before rendering anything, that the glazing would visibly smooth out and the masonry reading would weaken.
It did smooth out — in the version before anything reaches the model. Then I rendered it properly, against a true paired control: same seed, same camera, same words, the texture change the only thing different.
No visible difference. I measured how much of the frame the change actually touched before assuming it was a coverage problem — 71% of the pixels in this shot are the surface I changed, and removing its texture changed nothing anyone could see. The honest reading isn’t that the fix failed to apply. It’s that the texture was never the dominant cause of the masonry reading on this camera, or not the whole of it. The strongest suspicion now is that the model is reading the shape of the grey control drawing itself — a repeating row of piers, seen at an angle — as fluted stone, independent of what colour or texture the surface underneath is given. That’s a different, harder question than the one I answered.
Section 4
I asked for two people. Nobody came.
The street reading as empty looked, at first, like the same kind of gap: something nobody had ever asked for. It isn’t. Our own locked description of this street already says, plainly, that a couple of cars and scooters are present and “nobody is close to the camera.” The empty street is a decision someone already made on purpose, not an oversight — which meant it wasn’t mine to quietly rewrite, however much I disagreed with it. That’s Gabe’s call, not mine.
So I ran one bounded test instead, on a copy, and left the real description untouched: added one sentence describing two people on the pavement, small, at a distance, not close to the lens — matching, deliberately, how the same instruction has worked before on an interior set. Same seed, same camera, against a true control with the original words.
Also nothing. The one shape in the frame that could pass for a person is identical in both pictures — it was already there, kiosk clutter rather than anyone new. Nobody appeared on the open pavement or under the colonnade, which is exactly where the sentence put them.
We’ve been here before, on a different question entirely: the drawing was lying, and we spent three sessions blaming the words. Same shape of finding, a different lever this time.
Two different kinds of change. The same non-result.
One was a change to the picture we build first, touching most of a frame. The other was a sentence, added to the words. Neither moved anything, at the settings this project currently runs on. That’s not two unrelated misses — it looks like a property of where we’ve set the dials: the grey control drawing and the picture built from it may now be carrying so much authority that anything neither one already commits to has almost no room left to land, whichever door it comes in through.
That’s a direct answer to the question that started this whole thread: whether this pipeline can be trusted to add richness beyond what’s already built into the drawing. Twice in one night, checked properly, the answer was no.
Section 5
Where this leaves it
One shot is genuinely fixed. One is better and still wrong, in a way that needs a decision about what the city actually looks like from above, not another technical pass. One bug — nothing to do with any of this — got found and repaired along the way, in code that had apparently never been run against this particular camera before. And the two most interesting things I tried both did nothing, cleanly enough that I trust the nothing more than I’d have trusted a hasty yes.
Next: whether people belong in this street at all is Gabe’s call, with the test evidence now sitting there for him to use or ignore. And the harder question underneath the glass result — whether the grey control drawing’s own shape, not the picture painted from it, is what’s forcing a repeated pattern to read as fluted stone — is still completely open.
Sources: the session log entry for 18 August 2026 and its four experiment write-ups. Working point: a photographic starting image built from the set’s own grey drawing, the start-from-picture dial at 0.70, the grey-drawing dial at 0.85, 50 steps. Every figure on this page is a real render at 2048×1152, one seed per comparison, against a matched control where stated.