3.6 KiB
Yet Another Pose Library
For Blender 3.5 - 4.3 (4.1 recommended).
During the Blender 3.x releases, a new Asset-based Pose system was introduced. That's fine and dandy, but it was not (and still is not as of Jan 2025) ready to replace the old Action-based Pose Library system. The former Pose Library was quickly deprecated and removed, leaving legacy users high and dry.
This addon brings the Legacy Pose Library back as best as it can in a modern panel, and tries to stick as close to the old system as possible. Most, if not all existing Pose Libraries should work without any modifications. Little new is introduced outside of UI enhancements and handling for new data.
These excellent addons also address this removal in their own ways, check them out:
Old Features
-
The Pose Library list panel is ported from Armature Data Properties to a Sidebar (N) panel.
-
Operators and data property that were removed in 3.5 are ported from C to Python:
yapl.apply_pose
yapl.browse_poses
yapl.create_pose_library
yapl.convert_pose_library
yapl.add_pose
yapl.move_pose
yapl.remove_pose
yapl.rename_pose
yapl.unlink_pose_library
Object.pose_library
New Features
-
New panel interface for interacting with pose libraries, inspired by gret's Actions Panel feature.
- Hover over buttons for tooltips
-
Operator to protect potentially-orphaned pose data (read Considerations)
yapl.protect_orphan_pose_library
Installation
- Download the repository as a zip, or otherwise clone the repository.
- Install as an Add-on in Blender via Install -> Zip, and enable.
- Optionally configure the suffix strings to fit your workflow, and whether the orhpan checker should run at startup.
Usage
- Open Sidebar (
N
), and choose thePose
tab. - Select an Armature Object, or an Object parented to an Armature.
- Select existing Pose Library from drop-down, or create a new library.
3D View Hotkeys:
Shift + L
- Add/Replace PoseAlt + L
- Browse Poses with Arrow Keys
New Panel Controls
Single click
- Apply PoseShift + Click
- Rename PoseAlt + Click
- Remove PoseCtrl + Click
- Select Pose- Choose
Edit
for fast Move/Rename/Removal
Considerations
-
Opening older scenes will cause existing Pose Libraries to unlink from their former targets and fall into orphan state. They can be re-linked and will retain their link when saved afterwards, but would otherwise disappear if saved without linking or protecting the datablock.
- This is due to the core DNA type
poselib
having been removed, so objects will drop the data. There is no way to prevent this as Python ID properties cannot be present at program runtime, only once the add-on is initialized. - To mitgate, an operator is provided to protect orphaned pose libraries:
yapl.protect_orphan_pose_library
.
- This is due to the core DNA type
-
This add-on was made much easier by the
pose_markers
property being retained for converting old pose libraries to the new asset system. If they decide to remove that property as well, there will be a need to improvise an index-based lookup.