UV packing


(Dzmitry) #221

You can set up to 32 in setting, but unless your CPU have 32 threads(cores and virtual cores) it not going to increase speed.

(Oleg Stepanov) #222

Oh… I thought it is not about real but something like virtual threads :sweat_smile: My fault.
Maybe using GPU instead of CPU can handle superior performance, but I don’t know which calculations inside those algorithms. It’s definitely not about it, right?

(so3Datel) #223

76000 tris
1103 islands
old - 6m12s
new- 44s
it’s great acceleration.

(fiendish55) #224

Marvelous this is now very fast, right direction speed is always welcome!

(Piotr Adamowicz) #225

This works quite nice and I like the features, but it always quits after a single iteration. I must be blind. How do I set it to continue looking?

(Oleg Stepanov) #226

Of course it is fantastically great! Just curious about optimal settings.

(ambi) #227

The thread count is simply the maximum amount of threads you allocate for the algorithm. It won’t always use them all.

For example if you have 90 as a rotation setting and no flip selected, it only searches 4 different positions (360/90) and needs only 4 threads.

If you have 45 as rotation and flip turned on, it searches (360/45) * 2 (flip) = 16 positions and thus can make use of maximum of 16 threads.

@Piotr_Adamowicz: I’m not sure what you mean? Like when it’s done packing, try a new configuration to see if it can pack it tighter?

(Piotr Adamowicz) #228

Yeah. That’s what IPackThat and UVPackmaster do anyway (yeah, I’ve bought all three :stuck_out_tongue: ). I mean, it’s not a huge margin, but if you pack a few times the scores from Shotpacker are random within a certain percentage range, depending on the shape and number of islands. Wish you could just let it run for a few minutes and then let it pick the best one. Maybe I’m just being pedantic.

(MACHIN3) #229

Congrats on what looks like a fantastic update! Any word on linux?

(iceythe) #230

Having Shotpacker continue packing and pick the best coverage would be an amazing feature, especially with how much faster ambi has made it with the C++ module. The reason for this is that for me, after a certain number of island iterations, anything higher seem to produce diminishing results, and sometimes even worse. I’ve found that using lower island iterations but hitting the “Start pack” multiple times yields me a better result in less time, than leaving the packing running with a ridiculous number of iterations like 4-5000 and get a underwhelming result.

In any case, the speed upgrade is a true blessing. Thank you for your continued development.

(Tea_Monster) #231

This has saved me a ton of time. Thank you so much!

(faseri) #232

Hi, will there be packing option for 2 mirrored parts to get packed into one?

(n1k) #233

I just tested new beta. It is super fast and awesome! Great work Ambi!


For some reason my islands are being packed like this. Happens on some files while on others it doesn’t. Using v1.1.9. Still couldn’t find a reason for it. Otherwise great addon!

(MACHIN3) #235

Might be helpful to share a blender where this happens.

(ambi) #236

There have been many changes to how the addon works. I’m currently developing on the beta branch and only fixing bugs on it. shotpacker-accel-beta-win64 (on Gumroad) is the newest one, should work on all systems, although with currently only Windows supporting the C++ module.

I also see you had the “skip pre-scale” option turned on. That means it won’t scale the islands up, so if your islands take like 10% of the UV space at the start, that’s what they will take at the end and it will look exactly like that.

@MACHIN3: Linux version of the C++ module should not be a big issue. After I’m happy how the binary works on Windows, Linux is the next step.

@faseri: You can make the addon treat any two islands as the same if you set overlap detection to only one and snap the islands together so that at least one UV point is at the same location. Although it tests only one island currently so if your islands are very different, there may be problems.

@iceythe: That’s what I’m looking into right now.

(Oleg Stepanov) #237

Did this module build in VS 14 or 15? It is not detecting when I’m building blender in VS 17 x64 :tired_face:

(ambi) #238

It’s built in VS 17 x64. Also I build Blender with it, works fine. Check all your files are correct in the Shotpacker folder. Close all Blender programs, delete Shotpacker folder, start Blender, reinstall.

The modules currently support only Python 3.5 and 3.6 versions on Windows 64-bit.

Also of course you also need to turn on the “Use accelerator” option.

(Oleg Stepanov) #239

In console I got this “Shotpacker: Couldn’t find acceleration module”. Same revision from buildbot is fine. I also have RNA warnings in console. Maybe wrong build settings?
P.S. Switching to Release in build settings solved problem. Anyway strange behavior.

(ambi) #240

Depending on if you compile for debug of release, you need entirely different set of libraries. Release and debug libraries are two separate things at least on Linux. The ones included in the addon are only release libraries.