I’m implementing an avatar clone system similar to Dextro’s Clone System for VRChat. It works by using rotation constraints on the bones of the clone’s armature, which references the corresponding bone of the original’s armature.
I’m running into an issue where when transitioning animation states, the clone is stuck in the previous animation state. So when transtioning from crouch to stand pose, the rotation values of the clone’s bones are constrained to that of the original’s bones to appear standing, but the clone is still low to the ground as if in the crouch pose (the clone does have an animator component, whose animation controller sets it to the crouch pose as the default state).
(clone on the left, original on the right)
I believe it may be related to root motion and the passing of animation data to the clone, however, I’m unsure how to fix this.
Removing the animator component/animation controller would result in the same behavior, where instead when transitioning from stand to crouch pose, the clone would still remain high to the ground as if in the stand pose but appear crouching.