lyuma / Av3Emulator

Emulator for VRChat's Avatars 3.0 system, built on the Unity PlayableGraph API
Other
538 stars 32 forks source link

Incorrect handling of local parameter drivers with mirror clones #60

Closed bdunderscore closed 1 year ago

bdunderscore commented 2 years ago

When a parameter driver is used to drive an unsynced FX layer parameter in VRChat, the parameter is also written to the FX layer animator on the mirror clone. However, in av3emu, the parameter is not written to the mirror clone.

Here is a complete test avatar demonstrating this issue. It contains a cube which is initialized to have a random hue. In client, both first-person and mirror clone avatars have the same hue, while in av3emu the mirror clone has a black cube, indicating that the parameter drivers were not applied to the mirror clone at all.

test_local_param_drivers.zip

jellejurre commented 1 year ago

Managed to reproduce. This only happens when the driven parameter isn't a synced parameter.

jellejurre commented 1 year ago

This was fixed by #97