Alternative to Instanced Meshes for Multiple Materials

Is there any alternative to using Instanced Meshes? The reason I ask, is because I’m trying to do a voxel based system, but the issue is, when using instanced meshes, all child meshes will ALWAYS use the same material and not the issue in this case, but the same model as well.

It presents a problem for generating a voxel world and wanting to make it all into one mesh for optimization. It causes the prevention of any sort of diversity in the cubes placed onto the world.

If anyone knows any sort of alternative method, or can give me some insight on what to do, it’d be much appreciated!