Skip to content

Blender 4.2: Animation & Rigging

Motion Paths

  • Motion Path points now use the Vertex theme color (fc025abde6).
  • You can now specify a custom color for anything before or after the current frame. Previously this was a single color (883af6dd63).

Graph Editor

  • Modified the way the Ease operator works. It now creates an S-Curve shape that can be moved to favor either the left or the right end. In addition to that, a "Sharpness" property was added to control how abrupt the change is. Pressing Tab while running the operator toggles which property the slider affects. (62f140e048, Manual).
  • The drawing code has been optimized resulting in smoother panning in heavy scenes. (3eda9619f9, 0157fede80)
  • Performance when moving keys in heavy scenes has been drastically improved. Previous Blender versions could hang for minutes while it is instantaneous in 4.2. The more keys the scene has the more pronounced the effect is.(8a79212031, 6a55a126e9, c6c7d3d8c4, 08de3fa0b6)
Comparison of moving 300 keys in a 10,000 frame file 5 frames to the right.

Dope Sheet

Keys of the new 'Generated' type, between regular keys. Some of the 'generated' keys are selected, to show the color difference.

  • New key type: 'Generated' (51e1f29a68). This new key type indicates that the key was set by some automated tool (like an add-on), rather than manually by an animator. It is drawn smaller & dimmed in the Dope Sheet. These keys can still be operated on like any other, including changing their key type to something else.

NLA

  • Performance of the editor has been improved when only viewing a section of a long action (24b4461be3).
  • Update NLA "Make Singe User" operator modal text. (298c9276e9)

Armatures

  • Subdividing a bone names the new bones in sequential order (9f0cc7fe64). Subdividing "Bone" makes "Bone.001" its first child, "Bone.002" the next, etc. Previously this would have been "Bone", "Bone.003", "Bone.002", "Bone.001".

Constraints

  • The behavior of the "Limit Rotation" constraint has been modified to fix a bug (Bug Report, ed2408400d). In older versions the constrained object would flip back to the minimum when an angle is higher than 180º. This is now changed so values higher than 180º are supported. This means a minimum of 90º and a maximum of 270º now works properly. Also instead of snapping back to the minimum, the rotation will snap to the closest boundary when the rotation is out of the allowed range. Rigs relying on the old behavior of snapping back to the minimum might not work as expected.

Drivers

  • A new "Copy Driver to Selected" menu item is now available in the right-click menu of driven properties (bd3518946e). It copies the property's driver to the same property on all selected items (as long as they also have that property). It's essentially the same as the "Copy to Selected" feature, but copies drivers instead of values.

Copy Global Transform add-on

Copy Global Transform (manual) has gotten two new, related features (0b1d563a2f):

Copy Global Transform: Fix to Camera and Relative Copy-Paste

Fix to Camera

Also known as "bake to camera", this operator will ensure selected objects/bones remain static (relative to the camera) on unkeyed frames.

This is done by generating new keys. These keys will be of type 'Generated' so that it remains clear which keys were manually created, and which were generated. This way the tool can be re-run to re-generate the keys.

It operates on the scene frame range, or on the preview range if that is active.

Relative Copy-Paste

The "Relative" panel has copy/paste buttons that work relative to some object. That object can also be chosen in the panel. If no object is chosen, the copy/paste will happen relative to the active scene camera.

Python API

  • rna_struct.keyframe_insert() now has a new, optional keyword argument keytype to set the key type (1315991ecb). This makes it possible to set the new key's type directly. Example: bpy.context.object.keyframe_insert("location", keytype='JITTER').
  • There is a new function on the F-Curve: bake. This creates keys at a given interval for a given range on the existing curve (20a4c9c928).