I am trying to setup Blend Trees, at the suggestion of some of the VRC devs due to its significantly better performance over even a few dozen animator layers.
Following the guide by hfcRed, they mention via Parameter Mismatching (since BlendTrees only use Floats and Bools), you can have a VRC Param be an Integer and it will auto-cast it to Float in the Animator Params, due to the inherent data structure.
https://notes.sleightly.dev/parameter-mismatching/
I have this working here with 9 states for shirts, with an empty 0th animation (so it doesn’t default to 1
’s animation:
I can see in the parameters, testing with Gesture Manager, that the TshitHoodie
parameter I have (Float in Anim Params, Int in VRC Params) is updating accordingly.
When trying to do the same thing with GestureRight
or GestureLeft
, it is failing to update the value… only for the actual hand gestures from the Gesture layer. In the FX layer, the GestureRight and GestureLeft don’t update, but their values work for the face gestures and other gesture toggles I have. The FX layer’s Floats seem to break the Gesture Layer’s hand gestures.
Just not sure where to turn here. Let me know if I can provide more info.
Edit:
I tried to use an Int plus Float and use the Parameter Driver, but they also do not work. Just not sure what else to try here. I find it strange that just the Gestures are having issues with this.