I like the idea, although I wonder about performance.
Isn’t it faster to just load a bunch of 512x512 images instead of extracting them using canvas operations?
I know this will mess up the ability to use offsets/repeats afterward, but instead of using canvas images use texture repeat & offsets to “extract” images, wouldn’t it be a lot faster?
Now I think about it, imagine having an atlas of 8192x8192 pixels in size. Using repeats/offset would mean that for every material in your scene that uses the atlas, will have this entire atlas “in memory”, which is probably even worse