本文へ移動
cccskills
無料GitHub で公開

blender-animation

Animation in Blender 5.2 - slotted/layered actions and the channelbag API, Python keyframing, F-curves, game loops, NLA clips, pose library, mocap/BVH retargeting via constraints, baking control rigs to export skeletons, root motion, per-clip export. Use for any keyframe, action, NLA, mocap, or animation-export task.

日本語の概要は準備中です。原文の説明を表示しています。

連携ツールBlender

実行スコア 未検証

インストール方法を見る

含まれるファイル(3)

  • SKILL.md6.0 KB
  • scripts/_bpyx.py4.4 KB
  • scripts/bake_action.py6.8 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Animation

The execution model is in blender-core (its references/bpy-patterns.md has verified keyframe/driver snippets). Rigs are in blender-character-rigging.

5.x data model (what changed)

  • An Action holds slots (one per animated ID) and layers → strips → channelbags → F-curves. A single action can animate several objects (e.g. a rig and its camera) through different slots.
  • Assign: ob.animation_data.action = act, then make sure ob.animation_data.action_slot is set (picked automatically when a suitable slot exists; otherwise act.slots.new(id_type="OBJECT", name=ob.name)).
  • F-curves: cb = anim_utils.action_ensure_channelbag_for_slot(act, slot), then cb.fcurves.ensure(path, index=i, group_name=...). action.fcurves no longer exists.
  • The simplest route is still pb.keyframe_insert("rotation_quaternion", frame=f), which creates the action, slot and channelbag.

Workflow (keyframe animation, studio style)

  1. Blocking: key poses on every channel (CONSTANT interpolation, bpy.context.preferences.edit.keyframe_new_interpolation_type) on golden frames (contact, down, passing, up for walks).
  2. Breakdowns: add in-betweens that define arcs and spacing.
  3. Spline: switch to BEZIER, fix spacing in the Graph Editor, and clean overshoot. Auto-clamped handles avoid overshoot.
  4. Polish: offsets/overlap (follow-through on hair, tails, cloth bones), arcs, moving holds (never a perfectly frozen character), and contact stability (feet locked with IK).
  5. Review: MCP look(mode="frames", frame_count=8) or a Workbench playblast (blender-rendering).

Game animation rules

  • One action per clip, named <Rig>_<Clip> or just <Clip>, with a fake user so it survives saving.
  • Loops: first and last frames identical. Export frames 1..N and let the engine drop the duplicate, or exclude the last frame (UE/Unity "loop pose" options). An F-curve CYCLES modifier helps preview but doesn't export, so bake it.
  • FPS: author at 30 (or 24) and let engines resample. Set scene.render.fps before importing mocap.
  • Root motion: the root bone carries the translation (and yaw). The hips keep the bob/sway. scripts/bake_action.py --root-motion xy moves the hips' ground motion to the root. In-place clips: the root stays at the origin.
  • Additive/overlay clips (aim offsets, breathing) are exported as normal clips and marked additive in the engine.
  • Keep the bone transform channels the engine expects. Don't animate bone scale unless the engine supports it (Roblox and many mobile pipelines don't).

Bake control rig → export skeleton

scripts/bake_action.py -- --list
scripts/bake_action.py -- --source RIG_Body --target GAME_RIG_Body [--actions Walk Run] [--root-motion xy --hips spine]

This gives one baked action per clip (GAME_RIG_Body|Walk), cleaned, with fake users, plus one muted NLA track per clip (CLIP_Walk) so FBX (bake_anim_use_nla_strips/all actions) and glTF (ACTIONS mode) export every clip. The target's constraints are muted afterward so it plays the baked data; run --follow to drive it live again. Self-bake (IK/constraints → keys on the same rig): --source X --target X.

Mocap and retargeting

  • Import: bpy.ops.import_anim.bvh(filepath=..., global_scale=0.01 if cm else 1, rotate_mode="NATIVE", update_scene_fps=True), import_scene.fbx (Mixamo, automatic_bone_orientation=True).
  • Retarget without add-ons: put the target rig in the same rest pose (T vs A matters most), add COPY_ROTATION constraints (world or local-with-parent space) from each target bone to the matching source bone, plus COPY_LOCATION on the hips/root (scaled by the leg-length ratio). Then self-bake with bake_action.py --source TARGET --target TARGET, and delete the constraints.
  • Clean mocap: decimate keys (graph.decimate, ratio 0.3–0.5), use an F-curve SMOOTH modifier or the Butterworth filter (graph.butterworth_smooth), and fix foot sliding with IK pins and then bake.
  • Production retarget tools: Auto-Rig Pro (paid), Rokoko (free), and the engine-side retargeters (UE IK Retargeter, Unity Humanoid).

NLA and pose library

  • NLA: push actions down as strips (track.strips.new(name, start, action)) to layer/blend clips (blend type REPLACE/ADD/COMBINE), and use Tweak mode to edit. Strips need an action slot set when the action has several slots (strip.action_slot).
  • The pose library (bundled pose_library) stores poses as assets: poselib.create_pose_asset(pose_name=...), poselib.apply_pose_asset / blend_pose_asset. Use it for hand shapes, face poses, and a T/A rest pose.

Shape keys and other properties

Any property can be keyed: kb.keyframe_insert("value", frame=f) (shape key), mat.node_tree.nodes[...].inputs[...].keyframe_insert("default_value") (materials, which engines usually ignore), custom props ob.keyframe_insert('["prop"]').

Gotchas

  • pb.matrix = ... followed by keyframe_insert needs the right scene.frame_set(f) first, or an evaluation overwrites the pose.
  • Connected bones (use_connect) can't translate. Hips/pelvis must be unconnected from the root.
  • bake_action with visual keying reads evaluated poses, so constraints, IK and drivers are all captured. Mute the target's own constraints afterward (the script does), or they keep overriding the keys.
  • Quaternion vs Euler: game bones should use QUATERNION (no gimbal lock, smooth slerp). Euler is fine for single-axis controls. Don't mix modes between keys.
  • glTF sampling: export_force_sampling bakes every frame (the safe default). Non-linear F-curve modifiers and drivers only export when sampled.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Write Blender 5.2 add-ons as extensions - blender_manifest.toml, operators/panels/menus/property groups/preferences, bpy.props rules after 5.0, undo/redo, modal and timer patterns, gpu drawing (no bgl), bundling Python wheels, CLI validate/build/install, testing headless, extensions platform publishing. Use when creating or fixing a Blender add-on, tool, or UI.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

Mandatory review gate for any mesh or asset created or edited in Blender. Detects z-fighting (coplanar overlaps), floating/detached parts, inverted or inconsistent normals, non-manifold/open geometry, degenerate faces, duplicate verts, n-gons, unapplied scale, UV problems, bad skin weights, and renders multi-angle review sheets. Use before calling any modeling, export or delivery task done.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

Character rigging in Blender 5.2 - Rigify metarig fit/generate, bone naming/roll/collections, DEF/MCH/control layers, IK/FK, robust skinning (heat + proxy fallback), weight-painting rules, correctives, engine game skeletons (Unity, Unreal, Roblox R15), rig validation and deformation stress tests. Use for armature, skinning or weights tasks.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

Foundation for any Blender 5.2+ task an agent drives - running bpy via MCP (live) or headless CLI, context overrides, locale-safe node lookup, enum discovery, 5.x API changes, verification. Use first for any Blender, bpy, .blend or 3D-asset request; routes to the specialized blender-* skills.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

Export from Blender 5.2 with verified presets - Roblox (FBX/glTF, cages, R15, SurfaceAppearance), Unity (FBX, Humanoid), Unreal (FBX skeletal, Nanite, UCX), Godot/web (GLB, meshopt/Draco, WebP), USD. Scale/axes, smoothing, tangents, leaf bones, clips, batch export, post-export verification. Use whenever an asset leaves Blender.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

Facial rigs and shape keys in Blender 5.2 - ARKit 52 blendshapes, visemes for lip-sync, sculpting expressions, splitting symmetric shapes into Left/Right, mirroring, corrective and combination shapes, drivers and control rigs, bone+blendshape hybrids, export to engines (Unity, Unreal, Roblox dynamic heads, VRM/web). Use for faces, expressions, lip-sync, or any shape-key work.

日本語の概要は準備中です。原文の説明を表示しています。

EL4CTEO/blender-skills4562026年10月20日 更新

EL4CTEO のスキルをすべて見る

このスキルの問題を報告する