UnityJigglePhysics
UnityJigglePhysics copied to clipboard
[Bug] Transform declared as excluded in one Jiggle Rig component is unable to move in a separate Jiggle Rig component
Transform declared as excluded in one Jiggle Rig component is unable to move in a separate Jiggle Rig component
I create the first Jiggle rig and apply the Hair transform, which parents Hair_Back and the front bangs. I then add Hair_Back as an excluded transform because I don't want that to get affected by the HeadCollider.
In the second Jiggle Rig I add Hair_Back as the root transform, making sure not to enable Motionless Root option, and now add an UpperChest bone collider in which to interact with this
When running in Play Mode the Hair_Back transforms do not move.
Armature hierarchy
I can work around the issue by removing the Ignore Transform for Hair_Back and adding another bone between Hair and everything that isn't Hair_Back, and then put that new bone as the root transform instead of Hair.
For a quick fix, simply removing the bone from the Excluded Transforms list should fix it.
Jiggle rigs that share a hierarchy are automatically merged into a larger tree as a necessity for how the verlet solve works. They smartly assign their parameters with priority given to the leaf-most jiggle tree. We didn't give much thought on how it should merge Excluded Transforms so there's probably some bugged edge-cases we didn't cover.
I'll double check its logically consistent, this is probably a bug.
Though, in general, you shouldn't exclude transforms you intend to jiggle, even if it seems like it's on an irrelevant rig. At the end of the day we need to detect that it needs to jiggle despite the exclusion.