It made me think of the cover blocks mod.
I though that it would be nice to have that, but that I'd need to figure out which texture each face should use when generating a mesh instead of just grabbing from a static block definition.
Then it clicked how I can use instanced rendering.
I wouldn't have the instancing be a block model, but one for each face.
The instance data could just be position, light, and texture offset combined in one u32.
If this works It will reduce memory usage by 31x!