inspect-blender-rigs-motion
Installation
SKILL.md
Inspect Blender Rigs Motion
Validate, repair, and normalize skeletal armatures, skinning weights, bone rolls, and root motion tracks in Blender via headless Python (bpy) scripts before importing into game engines.
Core Rules
- Applied Transforms Invariant: Both the armature object and all skinned mesh objects must have unit scale
(1.0, 1.0, 1.0), zero rotation(0, 0, 0), and aligned origins at the world origin(0, 0, 0)prior to export. - Consistent Bone Roll Alignment: Enforce uniform primary and secondary bone axes across limb chains so quaternion interpolation and IK solvers do not twist joints during animation blending.
- Root Motion Separation: Dedicate a ground-projected
Rootbone at(0, 0, 0)parented above theHips/Pelvisbone. Extract planar locomotion deltas onto theRootbone while keeping in-place vertical bounce on the pelvis. - Contract Adherence: Emit
contracts/schemas/implementation-result.jsonwhen completing rig diagnostics and motion pipeline fixes.
Suggested Process
1. Headless Armature & Mesh Transform Audit
Execute a headless Blender inspection script (blender --background asset.blend --python inspect_rig.py) to verify:
- Unapplied object scales or negative scales that invert surface normals.
- Maximum vertex influence limits ($\le 4$ bone weights per vertex for real-time GPU skinning) and normalized weight sums ($\sum w_i = 1.0$).