if you’re talking about GUI texture things , you can use command like GetPixels and SetPixels,
you get the part you want from your 1024 atlas with GetPixel, and SetPixels them where you want on a newly Texture2D created for your needs then Apply()
I use that way to compose a HUD from an atlas texture in one of my game and place it on a guiTexture
not sure that waht you need and that is best way , at least you can do that way , I am pretty sure ther eis other way to do
Another option which I use quite often is to create and texture some planes in your 3d packaqe (with the UV you want), and then use this “3D planes” for your GUI.
If your question is mainly related to the final app filesize, I suggest you to don’t bother to much as Unity engine already takes a lot of memory compared to which some GUI independent textures are nothing.
If your concern is about drawcall and in-game memory use, 3D planes or SpriteManager (found on forum) are the way to go.