UV packing

Gotta agree I can’t live without multiuv addon and I have this same problem where it deselects and exits the mode :frowning:

I use texture atlas a
Addon for making single uv map for multiple objects. It is not affected by exiting edit mode and deselecting.

Sent from my LG-D855 using Tapatalk

For what its worth I had this error (or at least a very similar one) on a mesh and it was due to overlapping vertices, you may try running remove doubles on your mesh before packing.

ambi - can you make packing start from new seed every time users press ‘pack’ button? So that after pressing ‘pack’ button again, your algorithm would go through new sets of islands layouts? Maybe this should be exposed as parameter ‘random seed’.

@cgstrive, @fiendish: Can you link me to the addon you are speaking about (MultiUV)? All I got from google is the multi_object_uv_edit by Andreas Esau. I’m guessing that’s the one. Yeah, definitely looks a very handy thing to have. I tried the packer_beta.py and what I assumes is MultiUV. I was unable to replicate the deselecting behavior. The exiting from edit mode was changed a while back.

Packing only selected islands is on the todo list. It’s just not the first priority. Fixing the collision detection by rewriting the edge loops generation is something I’m hoping to finish to get the algorithm working 100% of the time instead of 99%.

UV w/h ratio is definitely something that should be included. I’ll see what I can do about it tomorrow.

@JoseConseco: I’m not sure the benefit of that would outweigh the cost of having to introduce the user with more options. I’ll definitely consider and test how much the randomness would help in the packing. If it works well, I’ll add it.

@n1k: Progress bar is on todo list, it’s just that Blender doesn’t make it very easy to do. It seems one has to use a combination of modal operators and timers, which is quite unoptimal.

Fixed a couple of bugs, put a new packer_beta.py on the Gumroad.

This is all I ever wanted from the GSOC 2016 UV Tools project. (Which still isn’t even close to having an alpha release.)
Now just make it eight times faster and we have a deal… :wink:

Yes that one very handy fast and easy. Gonna try today with newest patch.

packer_beta.zip is now on Gumroad.

  • Support for various texture dimensions (1:2, 2:1, etc.)
  • Progress meter and cancel option (no need to show console anymore)
  • Addition parameters to fine tune algorithm (heuristic: 0.0, randomness: 0.0 is good baseline, randomness is not that useful, but there for the user to have an option to enable it if wanted)
  • Option to attempt repairs for broken data to have better end result
  • Project structure split into multiple files for easier comprehension
  • Various bugfixes

Better result here, though it has a lot of empty space still on the right:


Please I beg you, this addon would be just perfect if there would be ability to run packer with overlapping identical islands.

This is almost crucial in game development where I need to stack all those bolts and nuts uv islands in same uv space and realize later that blender always separates them with the vanilla packing algorithm.

Kiitos etukäteen paras addoni eva! :smiley:

That sounds like an excellent idea!

Nice update. Can you add ‘undo’ option to PackingOperator - so that your addon work with undo,redo?


<b>class </b><b>ShotgunPackingOperator</b>(bpy.types.Operator):
    bl_idname = "uv.shotgunpack"
    bl_label = "UV Simulated Annealing Packer"
    bl_options = {'REGISTER', 'UNDO'}

This has been my biggest pet peeve with Blender. Thank you so much for making the addon.

This addon is pretty great. It just don’t really work well with long strips of UV’s.

Whenever I had long UV islands poking out of the UV space I separate it into smaller chunks and then the addon works fantastically well.

I just purchased this on Gumroad and I’m a bit confused between the two products that are included. Why is one “Packer” and the other “ShotPacker”?

The packer.py is the original release and packer_beta.zip is the current version. I don’t want to do a full release until I have a basic set of new features locked down and most bugs squished. As that happens I’ll also rewrite the instructions for the new release. Unifying the naming is a good point.

Thanks for this add-on. iPackThat is Windows only and leaves us MacHeads out in the cold. As far as adding features, I feel that since your add-on is pretty OS independent, and IPT isn’t, you’re not really stepping on anyone’s toes. Besides, competition is a good thing, right?

these results seem to be really nice!
About n-gons support, can’t you just tesselate/triangulate the mesh for your algorithm?

Maaan! This packer is great!



One of my guuns which I working on right now.
UV seems to be kind of destroyed, it would be cool to create vertex groups so every element with his own group would be really close together on UV, I believe that it can be achieved in IPackThat.

Thank you. In what way is the UV destroyed? You can always link me the .blend where the problem is, describe what goes wrong and I’ll take a look at it. http://pasteall.org/blend/ seems to work well.

The current plan is to write a manual, clean up the Gumroad page to be less confusing, take a stab at the ovelapping UVs and then implement the pack only selected islands option.