SQOWOPZ // DEVLOG
Voxels were supposed to be faster.
Once Rubble’s pre-destruction looked right, the same logic got mirrored to RubbleVox. Less than an hour of work, a few hours after the polygon version landed. Then I asked the AI how Teardown does this. The answer was educational.
RubbleVox is the voxel-format sibling of Rubble. Same destruction primitives, different cell geometry. Earlier today’s pre-destruction tweak in Rubble (the polygon version) needed to land here too. I described what should carry over. The model edited the destruction pass, kept the voxel-specific math intact, lined up the slider semantics. Less than an hour, including the slider sweep to verify. Same workflow as the Rubble pass. Faster on the second pattern.
The expectation, before I started, was that RubbleVox would run faster than Rubble. Voxels are simple cells. Polygons are arbitrary triangles. Voxels feel like the cheaper geometry on paper.
That is not how it shakes out in Godot. RubbleVox runs slower than Rubble at comparable building density. Same FPS counter on the same hardware tells the same story across edits. I was wrong about which format wins on this engine.

So I asked the AI why. How does Teardown render thousands of voxels per building, with full real-time destruction, at framerate, on the kind of hardware I run? The answer was not “Godot can do that, you just need to optimize.”
Teardown is built by Tuxedo Labs in Malmo, Sweden, primarily by Dennis Gustafsson. The engine is custom, written in C++ from scratch specifically for voxel mechanics. Not a fork. Not a plugin. A bespoke renderer that uses raymarching on the GPU instead of triangles, an 8-bit color palette where each material encodes its own physics properties, voxel-versus-voxel collision on the CPU, and (the clever part) thousands of small voxel volumes rotated arbitrarily in space instead of one big axis-aligned grid. None of that runs on top of an off-the-shelf engine because none of it would survive an off-the-shelf engine.
Godot is polygon-native. Voxel support exists through community modules, GDScript-driven scripts, and GPU-shader plugins, all of which work, none of which match a voxel-first renderer built ground up. GDScript itself is roughly an order of magnitude slower than C# for tight inner loops, which is exactly what voxel ops need. The polygon path in Godot is what the renderer actually wants to do. RubbleVox is fighting the engine. Rubble is not.
The first hard ceiling on purely prompted.
This is one of the first hard ceilings I have hit on the purely-prompted approach. The AI can write the voxel module. The AI can chase performance tweaks. The AI cannot, in any practical timeframe, build a custom voxel engine from scratch, with a bespoke renderer, that competes with Teardown’s. When I asked it directly what that would take, even with full AI assistance, the estimate landed in the months-to-years range. Honest answer. Not the answer I wanted.
Which is part of why Teardown is a genuinely impressive piece of engineering. Dennis Gustafsson has been at this for years. The voxel engine in Teardown is not a clever trick. It is sustained, deliberate, low-level work, with the kind of architectural patience and technical knowledge that no LLM completion replaces. He writes about it on the Voxagon blog, and the year-summary posts are worth reading even if you never plan to ship a voxel game.
If you have not played Teardown, the demo is on Steam and the paid version is one of the better destructible-physics games of the last few years. Buy it. Tell three friends. The engineering deserves it.
Support the small studios doing the hard work.
The broader lesson: indie studios doing technical work nobody else is doing are worth supporting on purpose. Buy the games. Read the dev blogs. The model on my laptop is fast enough to bash out a destruction module in an afternoon. It is not fast enough to replace a decade of architectural decisions. That distinction matters, and the people on the right side of it deserve more than a vague nod.
RubbleVox stays in the slate. Same destruction pipeline as Rubble, voxels instead of polygons, with the understanding that I am running it on an engine that prefers triangles. The pre-destruction pass works. The frame budget is tighter. That is the trade I am making for now.
Voxels were supposed to be faster. They are not, in this engine. Different problem, different tool. Same fight, slightly different skyline.
