I'm so happy right now.
I've been working on a minecraft clone for a bit now and the meshes it generates take up too much memory.
I looked into instanced rendering as a way to reduce the memory usage, but couldn't wrap my mind around how instance data would map to each block (specifically texture coords since blocks can have a different textures per side).
I was watching a minecraft stream while I doing work and the player was holding a block with each side randomly changing every second.
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!
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!