Search Issue Tracker
Won't Fix
Votes
1
Found in [Package]
1.0.3
Issue ID
1296482
Regression
No
[Animation Rigging] Animation states without Write Defaults enabled locks Constraints
How to reproduce:
1. Open the user's attached project ("AnimationRiggingWriteDefaultsIssue.zip")
2. Open "BugReport" scene
3. Enter Play mode
4. Try to move the position of "SourceObject" in the Scene view
5. Notice you can't.
6. Exit Play mode
7. Open the asset called "AnimatorController"
8. Click on the Animation state
9. Enable "Write Defaults"
10. Enter Play mode
11. Try to move the position of "SourceObject"
12. Notice you can
Expected results: Constraints are not locked and you're able to move "SourceObject"
Actual results: You can't move "SourceObject"
Reproducible with: 2019.4.16f1, 2020.1.17f1, 2020.2.1f1, 2021.1.0a10 (Animation Rigging 0.1.2-preview - 1.0.3)
Could not test with: 2018.4.30f1(No Animation Rigging)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [macOS] forward and backward mouse buttons are recognized as middle mouse button
- NavMeshModifier.OnEnable/OnDisable gets progressively slower when called repeatedly
- "System.Net.CookieContainer" throws an "ArgumentException" error when using a non-UTF-8 machine locale and hostname
- Crash on ModelImporter::ImportSkinnedMesh when disabling "Strip Bones" on a specific FBX model
- WebGL Development builds ignore the "Compression Format" setting when using "Gzip" compression
Resolution Note:
Unfortunately, we can't change this behaviour in the Animation system.
Animation Rigging relies on the animation mask to decide whether or not it should read values from the scene (when values are not animated), or use the animation stream (when values are animated). However, when writeDefaultValue is set to false on a state, the animation system will force the animation mask for all properties, thus, forcing the animation stream into Animation Rigging.
Changing this behaviour now in the Animation system would break existing user workflows.
As a workaround, you could write a custom constraint to sync in scene values in the animation stream before evaluating the rest of your rig.