Make "stop live clone" play nicer with jointed hierarchies
The following experiment reveals a confusing interaction between jointed hierarchies and the "stop live clone" tool:
- Start a new scene / element.
- Create a cube sculpt.
- Make 2 live clones of the cube sculpt.
- Clear the selection.
- Create a joint between the first cube and the second cube.
- Create a joint between the second cube and the third cube.
- Using the assembly mode stretch tool, move the third cube, thus stretching the second cube - this implicitly removes the second cube from the live clone set.
- Select the clone tool.
- Hover over the first cube.
Observed: The "stop live clone" tooltip doesn't appear. But why? The first cube is still a live clone.
10. Hover over the second cube.
Observed: The "stop live clone" tooltip does appear. But why? The second cube ceased to be a live clone when we stretched it.
I almost reported this as a bug, and understanding why it's not a bug is deep magic.
First, what exactly does "stop live clone" do? For each live clone set that intersects but isn't completely contained by the set of sculpts selected by the tool, it partitions that live clone set into two sets, one of them containing the members of the live clone set selected by the tool, and the other containing the members of the live clone set not selected by the tool. No complaints about that - it's the best way a "stop live clone" tool could possibly work.
And what is the "set of sculpts selected by the tool"? You might think that because there wasn't a selection, the only sculpt selected by the tool was the one that the imp was hovering over. And you'd often be right. But not when the imp is hovering over a sculpt in a jointed hierarchy - in that case, the set of sculpts selected by the tool consists of the hovered sculpt and all of its descendants.
When hovering over the first cube in step 9, all three sculpts were selected by the tool. That included both the first sculpt and the third sculpt, which were the only remaining members of the live clone set. So the live clone set was completely contained by the set of sculpts selected by the tool, and there was nothing for "stop live clone" to do, therefore no "stop live clone" tooltip.
And when hovering over the second cube in step 10, the second and third cubes were selected by the tool. That included one live clone - the third cube - but the other live clone in its live clone set was the first cube, which wasn't selected by the tool. So the live clone set intersected the set of sculpts selected by the tool, so the "stop live clone" tooltip appeared.
So, not a bug. But very confusing unless you know how "stop live clone" and selecting work and think carefully about how they interact. And even if you do know, still difficult to use "stop live clone" correctly in a jointed hierarchy.
It would be less confusing if "stop live clone" ignored jointed hierarchies and only operated on the hovered or selected sculpts.
-
Oh very interesting. I think it probably is a bug, checking things like that. It shouldn't care if you're hovering over all live clones in the set; you should be able to unliven them all at the same time.
Actually, if you use "unliven" on that first live clone, it doesn't unliven the 3 sculpts that were hovered over. Only the one you were hovering over. So using the tool behaves as you'd expect, but it's being incorrectly blocked in the case you explained.
I've recorded a video of the experiment you explained, and some further tests--for Mm/QA to understand, and if you want to report this as a bug you can use that too. https://youtu.be/1Wr_djka3NY
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.