Animation to Transforms affected by PhysBone may be broken even with IsAnimated=true.
I made a public avatar to test this: avtr_2178736a-9596-4f10-a993-832c49ad867e
This test avatar has the PhysBone with the following structure
PB1_root - has PhysBone Component
`- PB1_middle
`- PB1_end
`- PB1_ignored - Added to IgnoreTransforms
of PB1_root
PB2_root - has PhysBone Component with
| MultiChildType = None
`- PB2_middle
+- PB2_child0
| `- PB2_end
`- PB2_child1
I found two cases.
1) We cannot rotate end bones. Try to rotate 'PB1_end', 'PB2_middle', 'PB2_child1', and 'PB2_end' on the test avatar.
2) We cannot move (change position) transforms who have sibling transforms. Try to move 'PB2_child0' and 'PB2_child1' on the test avatar.
Both are working on VRCSDK 3.1.11 with Av3Emu, GestureManager, and specifying AnimatorController directly onto Animator.
The first case breaks the halo of one of the most popular avatar in Japan, SELESTIA (avtr_1c296d25-f3c9-4fc2-a290-bae429ad5b6c), and who use the halo from that avatar.
Workaround for SELESTIA's halo (and might work for other halos)
SELESTIA's halo is structured like the following:
haro_root - PhysBone Component
`- halo
+- mesh renderer#1
+- mesh renderer#2
...
So, by adding GameObjects of all halo's children to IgnoreTransforms, you can work around this problem.
Acknowledgments: Thank you azukimochi25, かすみん, and ヨゼ[4oZEF]for telling me about this problem and helping me research this problem.