Hi,
yes, there is currently no simple ways to copy from runtime and paste back during edit time.
about the 15000 sprites and spriteSheet, I think you are misunderstanding ( or maybe I do) how sprites and spritesheets work.
- Who created the spritesheets? you? from an external software or within Unity using its built in packer?
15000 sprites is a lot even for big projects.
- what's your naming convention for these sprites?
- what do you plan to do with them at runtime?
- how many will be used during a typical gameplay?
referencing a sprite that is it self contained in a spritesheet is the way to go. that's it, if you want to extract a sprite from a sprite sheet fully, then it will create more memory consumption, that's not what you want since you made a spritesheet for it, so this goes against the optimisation principle of using spritesheets to want to extract sprites from it. you want to "use" sprites, and for this you simple reference it from the assets folder, Unity deals with packing under the hood.
maybe you could give a concrete example and we have a better base to work out your feature and how best to implement it.
Bye,
Jean