Voxels to blocks
A voxel is already a block. We built the scanned tardigrade one block per 270 nm voxel: 608 blocks long, 3.7 million times life size, from the same data as the glass tardigrade.
Glass and concrete
The body surface is one layer of glass. Each organ is a coloured concrete: yellow gut, orange storage cells, pink salivary glands, light blue brain, blue nerve cord, green ovary, lime claw glands. The brain and salivary glands come from the higher-resolution head scan, placed by our registration, as in the glass viewer.

The X-ray, in stone
The same trick works on the raw scan. Every voxel inside the body becomes one of eleven grey blocks, from black concrete through blackstone, deepslate, tuff, stone, andesite and diorite to calcite and quartz. A straight brightness scale turned almost everything black, because the body cavity is nearly the grey of the liquid around it. So the stones sit halfway between equal counts and a straight scale. Cut down the middle, storage cells show as pale rings and the pharynx as a bright ball.

How the files are made
A Sponge schematic (.schem) is a gzipped NBT file with a block palette and one index per block. We write it directly from the label volume: crop to the body, turn the axes so the head points along x and the back points up, map each label to a block, and pack the indices. The same method works for any voxel data (CT, confocal, MRI), which is why we'll keep doing it.
Play with it
See it in a landscape, and watch it build layer by layer, in the block viewer. The two schematics are written for Minecraft Java 1.20+ (not yet tested in game) and should load with WorldEdit (//schem load then //paste) or Litematica, and need 188 blocks of height. Download them from Resources.
How this is built
- Data
- Gross et al. 2019's nano-CT, CC BY 4.0: the whole-body label field and raw scan, with the brain and salivary glands from the head scan placed by our registration.
- Built with
- Our Python script
export_minecraft.pycrops to the body, turns the axes, maps each label to a block (or each CT grey to one of 11 stones), and writes the schematics with its own small NBT writer. The block viewer draws the same blocks as three.js instanced cubes in a generated landscape, andrecord_build.mjsfilms the build layer by layer. - Checked
- Not yet loaded in Minecraft itself; that test is on our list.
- Limits
- Java edition only for now. The stone greys sit halfway between equal counts and a straight brightness scale, so they show contrast, not density.
- More
- How the whole project is built