2 hours ago, Annihilatorza said:
Is this a Unity limitation or a Voxel limitation that you have to do it this way?
How would you go about getting around this for the say the next game?
There is no "Unity voxel system", its custom code running within Unity. The logic how its rendered would not be substantially different in other universial engines.
Since a block with a specific texture can be anywhere in the world, those textures need to always be in memory.
In most other games its easier to handle this, as they have premade static worlds. Its known what textures are used in which area of the gameworld. So textures that dont occur in a specific area can be removed from the memory (or using a low res version, until a high res version is needed, when the player gets close.)