Sorry you are still having trouble. I see from the progress dialog screenshot it's the texture packing taking very long. Texture packing is an NP hard problem, meaning it is not possible to calculate the most optimum result. The best we can do is use heuristics to provide a reasonable result. Spine packs multiple times with different heuristics and different page sizes and then uses the best result. I'm guessing your input images are just right to cause this to take an extraordinary amount of time.
If you can send the images you are packing, we can see how we can improve our texture packing algorithms. Since you are whitespace stripping, if your project has meshes it would be helpful to also send your project file so we see the exact same packing scenario that you are seeing.
RogueWars the status remains at 1/1592 until completion... Is that normal?
It'd be easier to say if that is normal once we can reproduce your slow packing, but I think it probably is. The packer is working on packing the images optimally and may not be able to report how many images are packed until it has filled a whole page. If your images fit on a single atlas page, then by the time it updates the progress it has packed all the images and it's done.
There are other ways to improve packing speed by reducing the work Spine needs to do:
- The easiest one is to check
Fast
. Spine will not try as hard to give the best output. That means the atlas pages may be slightly larger because the images may not be packed as tightly. I often use Fast
during development, just so I don't have to wait as long. Usually the difference is a second or two though, not 1-3+ hours!
- It is difficult for Spine to determine the smallest image size that the images can be packed into. If you set the min and max page size to the same values, Spine won't have to try packing at smaller sizes. Alternatively checking
Power of two
, Divisible by 4
, or Square
reduce the effort needed, but not by as much as giving the same min/max sizes.
- When you have many small images, there are many more places that Spine needs to try to fit the next images in an atlas page. If you organize images into subfolders, Spine will pack them on different atlas pages. Since there are fewer images on each page, packing takes less processing. You'd need to update all your attachment names with a
subfolder/
prefix. To avoid that, you can check Flatten paths
but make sure you keep your image file names unique. However, you may want everything on a single page, in which case you can't use this optimization.
- Unchecking
Rotation
reduces the effort needing for packing by 50% (when packing rectangles, 75% when packing polygons). The packing result may be significantly worse though, like Fast
you'd have to try it to see if it's acceptable.
- You could try packing polygons instead of rectangles. Generally polygons take a lot more processing but the algorithms are very different. It may be worth a try after applying some of the above.
Worst case with tons of small images packed on to a single page with the above tips applied, I'd expect the packer to finish in a couple minutes maximum. If it's taking 10+ minutes or especially an hour or more, that's something we would like to fix.