* feat: add material switcher
Also refactor everything...
* refactor: simplify object curve handling
* refactor: additional refactoring and bugfixes
* feat: inverse mode
* feat: add material setter inspector UI
* chore: set material setter icon
* chore: fix error on build
* chore: adjust order of inverted element
* refactor: generalize support for arbitrary parameters as conditions
* feat: automatically assign Menu Item parameters
* feat: ReactiveComponents respond to MenuItems
* feat: AvatarObjectReference tracks both paths and direct object references
* feat: set isSaved/isSynced/default values from MenuItem
* feat: Object Toggle preview supports menu items and manipulating parent objects
* feat: reactive previews respond to menu item default value states
* chore: update NDMF dependency
Zero-length allocations could result in multiple entries with the same offset in the segment map. This would then break subsequent lookups.
Fixed by increasing these allocations to a minimum length of one.
* opti: fix perf regressions in new armature lock system
... by avoiding reinitializing everything whenever any target bone moves.
* chore: fixing unity 2019 issues
This new implementation avoids creating any internal objects within the avatar
itself, instead creating them as hidden scene root objects. We also move all update
processing to be driven by camera callbacks as well. These changes help improve
compatibility with tools such as FaceEmo, as well as being less likely to break when
other tools manipulate the avatar's hierarchy directly.
Harmony patches were not being loaded for VRCSDK 3.4.x, causing some issues with component enabled state checkboxes being incorrect.
Additionally, we need to reset component states before assembly reload and scene save.
Changes in 1.9.0 broke existing avatars that used animators with
different default values than the MA Parameters fields. This change
makes overriding the animator defaults require an explicit configuration;
this is technically a change which would require a minor version bump,
but as this is addressing a major-version-level compatibility break in 1.9.0,
we're going to push this out at a minor version this time.
* opti(armature-lock): parallelize burst jobs for armature lock processing
* feat: continue armature tracking when the MAMA GameObject is disabled
Closes: #500
* feat: add global toggle for armature locking
Closes: #484