Runtime Animator State Properties
Overview
This feature, introduced in Unity 5.1, allows users to attach any of their Animator State properties( speed, mirror, cycle offset) as a controller’s parameter to change their value at runtime.
Properties can either be exposed by using the Animator State Inspector or by script.
Editor
The Animator State Inspector has been improved to let you build your own properties setup.
For each property you can choose to either:
1. Set a constant value like before.
2. Check the new checkbox ‘Parameter’ which should change the numeric field to a popup list containing all your controller’s parameters of the same type as the property. Choosing one parameter to drive your property will complete the setup.
Scripting
We have also added new properties to allow you to build your setup from script.
The 3 following new members are used to define which of the controller’s parameters should control this property.
string AnimatorState.speedParameter;
string AnimatorState.mirrorParameter;
string AnimatorState.cycleOffsetParameter;
The following members are used to define if the controller should use the parameter to animate that property or not.
bool AnimatorState.speedParameterActive;
bool AnimatorState.mirrorParameterActive;
bool AnimatorState.cycleOffsetParameterActive;
Error Handling
If the parameter cannot be found in the controller’s parameters list or if the parameter type doesn’t match the type of the property, a console warning should be thrown and the property would fallback to the old behaviour, which is to read the value from the constant.