Skip to content

devlog

A splat you can knock over

2026-10-01

Putting a small captured object inside a captured town is harder than capturing either.

A Gaussian-splat capture of a town is one object. Not a scene of objects — one. Several million ellipsoids sorted back to front every frame against one camera, and everything that makes it fast assumes exactly that.

So the obvious next thing is awkward. If a place is real, the things in it should be real too: a scanned bench you can reach, a scanned crate you can hit. That means a second splat scene living inside the first, and the moment there are two, the assumptions start failing. They share a sort order, because transparency has no other answer. They share a depth buffer. And one of them moves, which the sort was not built for.

Collision is the part I did not expect to be interesting. For a whole town the cheap approximations work: cut a mesh out of the scan, keep the walls, let the car hit those. At the scale of a chair they stop working, because the error that is invisible across a street is the whole object. I am measuring three against each other — a voxel shell, a convex hull, and a trimesh taken straight from the scan — and the honest answer so far is that each wins on a different shape.

None of this is live. I am writing it down because the interesting problems in this product are not the ones that have a known shape, and a log that only records the finished things gives a false picture of what the work is.