I don’t know when this issue started, but when I realized it, I found that my gestures were not working properly.
When the GestureLeft input is set to 0, which is the idle gesture, no matter which value is set for GestureRight, the right-hand gesture will become a claw-like gesture like this pic, and vice versa. Only the idle gesture for both hands can be triggered normally when the parameter is set to 0. And I’ve never made this weird gesture!
However, when I was testing the gestures, I found out that some random combination of the Left and Right parameters can make the gesture be correctly triggered, such as in the pictures below:
And after my tests, those combinations are completely random, at least I didn’t see a pattern. Sometimes they works but sometimes they don’t. The only thing that confirmed is if one of the Gesture parameters is set to 0, the other hand’s gesture won’t work, but the idle gesture is fine.
I tested everything I could think about:
the gesture animations work properly in the animation preview;
the transition conditions are set correctly since the facial expressions are triggered correctly;
I tried turning off Write Defaults but it didn’t work;
The animations also match the states;
I didn’t set any strange parameters or delete any parameters;
I also disabled all the things I added to the avatar, including all the constraints, bones, and mesh.
This avatar project was migrated from Unity2019 to Unity2022.3.22f1, but the process was fine, there weren’t any errors, I also upgraded the Dynamic Bones to Physics Bones, and upgraded the SDK to the latest version, everything seemed fine too. So I think it might be something happening in VRC Scripts internally? I have never touched those things, so I don’t know how the parameters get values from player inputs.
Please, could someone help me with this issue?