Ignored PhysBone Root Counted Toward Affected Transform Limit
橘花【きつか】
When a PhysBone component has a root with multiple children and is set to Multi Child Type = Ignore, the root bone is counted is a physbone affected bone.
This makes it more difficult to split a skirt, hair setup, or similar dynamic system into multiple sections for collision optimization, because the common root transform is effectively duplicated in the count.
Having an extra physbone component seems cheap in comparison to collision checks that could be saved.
## Expected Behavior
If a transform is not affected by a physbone it should not be counted as a transform affected by a physbone.
## Minimal Reproduction
Use the simplest possible hierarchy:
*
BoneParent
*
BoneChild1
*
BoneChild2
Setup:
* Add one PhysBone component to
BoneParent
with BoneChild1 as ignored.* Add a second PhysBone component to
BoneParent
with BoneChild2 as ignored.* Set
multiChildType
to Ignore
on both components## Expected Result
PhysBones Affected Transforms
should be 2
## Actual Result
PhysBones Affected Transforms
is reported as 4
There are not even 4 bones to transform in this setup.
## Why This Matters
Splitting large dynamic systems into multiple PhysBones can reduce collision complexity.
However, the current counting method discourages this optimization because shared transforms are effectively penalized multiple times (and you get one more physbone component on top of that).
## Suggested Improvement
If the root of a PhysBone has multiple children and
multiChildType
is set to Ignore
, the root transform itself should not be counted as a PhysBone affected transform.In that configuration, the root is acting only as an organizer transform and is not part of the active simulated chain.
This would:
* Produce the expected result in minimal hierarchies
* Avoid double-counting shared parent transforms
* Better match how creators expect
Ignore
mode to behave## Minimum viable fix psedocode
this.affectedTransforms -= this.root.childCount > 1 && this.multiChildType == Enum:Ignore
Log In