Reference/Release Notes/2.80/Animation

= Blender 2.80: Animation & Rigging =

Drivers

 * Drivers on properties can now be edited in place, without having to open the driver editor.
 * Added an operator to delete drivers marked as "invalid".
 * Simple driver expressions are now evaluated without Python for a big performance improvement on complex rigs.
 * Transform Channel driver variables can now retrieve Average Scale to avoid the need to use three variables at once.

Animation Curves

 * Automatic handle placement now takes Cyclic Extrapolation into account to produce a smooth loop transition.
 * Automatic handle placement now by default uses a new algorithm that produces smoother curves.

Keyframing UI

 * Dope Sheet now has options to display curve handle types and/or curve extreme locations via the keyframe icons.
 * Keyframe insertion (both manual 'I' and Auto Keyframing) can optionally take cyclic extrapolation on curves into account.

NLA

 * Channels affected by any of the actions in the NLA stack are now always set to a definite value, falling back to default when no strips apply.
 * Rigging: Custom properties now have configurable default values, instead of always using 0.
 * Inserting keyframes into strips with Add or Multiply mode correctly computes the key value.
 * Added a new Combine mode that automatically chooses add/multiply/quaternion math for each channel based on its type.

Shape Keys

 * The Radius property of Curve object vertices can now be animated via Shape Keys.

Armatures

 * The Apply Pose as Rest Pose operator can now apply just the selected bones.

Bendy Bones

 * Custom handle settings have been exposed in Edit Mode to allow correctly drawing the rest pose.
 * A new Tangent custom handle type that uses the control bone orientation instead of location.
 * Fixes for the Relative custom handle behavior and start handle roll.
 * B-Bones now interpolate between two closest segments when deforming vertices, instead of using just one.
 * B-Bone Scale In and Scale Out properties were split into separate X and Y values.

Disable and Keep Transform
Many constraints now have a button "Disable and Keep Transform" next to the Influence slider. Pressing it sets the influence of this constraint to zero while trying to maintain the object's transformation. Other active constraints can still influence the final transformation. Note that pressing the button and then increasing the constraint influence may move the object; this happens when the constraint is additive rather than replacing the transform entirely. 

Maintain Volume

 * The constraint now has multiple modes for dealing with non-free axis scaling.

Damped Track

 * The constraint is now more stable when the desired direction is opposite to the current one.

Copy Scale

 * The Offset option now by default properly uses multiplication instead of addition.
 * Added an option to raise the copied scale to an arbitrary power as a way to correctly split and invert scale.

Copy Transforms

 * The Use B-Bone Shape option now copies the full transformation of the segments, instead of only location.

Shrinkwrap

 * There is a new option to specify how and when the point is moved towards the target surface (e.g. depending on initially being inside or outside the target).
 * The Project mode now supports trying two opposite directions at once, and Front/Back face culling, like the modifier.
 * There is a new Invert Cull option for the case when culling and two direction projection are used together.
 * There is a new option to automatically align an axis to the (smooth) normal of the target.
 * The Above Surface option uses the smooth normal if the target mesh is smooth shaded.
 * Added a new Target Normal Project mode that is slower but much smoother than Nearest Surface Point.

Armature (New)

 * Added a new Armature constraint that applies the math behind the Armature modifier as a constraint.

Spline IK

 * Added a new option to use the pre-IK Y scale of the bones to control their length when fitted to the curve.
 * Added a new option to apply volume preservation on top of original scaling like in Stretch To.

Shrinkwrap

 * The Keep Above Surface checkbox is replaced with a new option to specify how and when vertices are moved towards the target surface (e.g. depending on initially being inside or outside the target).
 * There is a new Invert Cull option for the case when culling and two direction projection are used together.
 * The Above Surface option now uses the smooth normal if the target mesh is smooth shaded.
 * Added a new Target Normal Project mode that is slower but much smoother than Nearest Surface Point.

Armature

 * The modifier now uses the set of existing vertex group names to reduce the chance of spurious dependency cycles.