The 3D view holds sixty frames a second. It still is not something you can look at.
The second renderer is finished. Same game underneath, two ways of drawing it: the original flat view and a real-time 3D one, sharing one simulation that neither of them is allowed to touch. Both replay an identical recorded run to an identical result — the proof that the 3D view is a view and not a second, subtly different game.
On the test deployment it draws a frame in about 16.7 milliseconds, and the slowest one in a long run took 16.8. That is a locked sixty frames a second with forty travellers walking and roughly seven hundred thousand triangles on screen. Seventeen of seventeen checks pass.
And it is still not shippable, because eleven of the objects standing in it are placeholders — the ones described in the entry below, generated from written descriptions instead of from the concept art. The renderer is done. The thing the renderer draws is not.
What changed — "the renderer is finished" and "the game looks right" turned out to be independent, and we had been quietly treating the first as evidence for the second. A performance number cannot see art direction. We now report them as two separate states, because a green build that draws the wrong objects at sixty frames a second is still the wrong objects.
And — the asset work moved off a person clicking through a web tool and onto something the build can run directly. That removes an entire class of mistake we had been making: the settings in that tool silently reset between steps — privacy, detail level, which animations get exported — and three separate sessions lost work to it. The replacement is not cleverer, it just cannot forget a checkbox.