Released 2020-03-13
Features
- Mixer Time Synchronization now supports custom speeds.
- Added
UnityVersionCheckerfor Animancer Lite to verify that Animancer.Lite.dll was compiled for the current version of Unity. Generally this was only a problem if you downloaded Animancer Lite and then updated Unity to a version that has a different compilation of Animancer Lite. This is not an issue in Animancer Pro since Unity will simply recompile the scripts as necessary.
Improvements
- Animancer End Events now work for zero length animations.
- Added more specific warnings than "no Override layers at weight 1" when there is only one layer or none.
- Improved the exception message caused by using
FadeMode.FromStart(or normalized) with a state that has noAnimancerState.Clipto be more explicit about the fact that it will only work forClipStates. #32 - Added caching to the animation gathering system used by the Animation window so does not need to iterate through the entire hierarchy every time the window repaints. #27
AnimancerNode.AppendDetailsnow provides both the cachedSpeedand the real value from the playable if they are different.- Added an assertion to validate the number of serialized speeds in mixer transitions instead of simply ignoring them if the count was incorrect.
Fixes
- Reworked playable initialization and connection to be more reliable.
- Fixed
TransitionPreviewWindowto work properly for a Generic animations. AnimancerNode.Speedcan now be set before the playable is created and will be applied when it is created.
- Fixed
- Fixed errors when trying to get or set the value of a
SerializedPropertywith a null object somewhere in its chain. - Fixed the
From Angular Speedcontext menu functions in mixers to use the correct units. #29 AnimatedPropertyis now[Obsolete]in Unity versions older than 2019.1 instead of not existing at all so that it can explain that Animancer Lite users will need to re-download Animancer if they update Unity.- Added
AnimancerNode.Graphso that custom nodes defined outside the Animancer assembly can access the root graph to create their playables (because it is internal). - Removed the implicit conversion from
AnimationCliptoClipStatebecause it could result in states being created accidentally if the wrong overload is used in certain methods that are intended to look up an existing state instead. - Fixed a bug in the way
ManualMixerState.Drawercaches its details.