跳到正文
cccskills
免费在 GitHub 公开

blender-animation

Rigging y animacion en Blender para engines: armature y naming de huesos, weights, constraints e IK que hay que bakear, FCurves, acciones y NLA como clips, root motion, retargeting de Mixamo, shape keys. Usar para: animar en blender, rig, armature, retarget mixamo, root motion, shape keys.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane星标 3(GitHub 3 + cccskills 0)
集成工具Blender

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md6.8 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

blender-animation — Rig y animacion

Rig y animacion con destino a un engine. La regla que ordena todo el skill: el engine recibe keyframes, no rig. Todo lo inteligente del rig existe para producir esos keyframes y despues desaparece.

Requiere /blender-context. Con geometria sin cerrar no vale la pena riggear: cada cambio de topologia invalida los weights.


Phase 1: Que se exporta y que no

En BlenderAl engineQue hacer
Keyframes en huesosSe exportanEs el camino
Armature + weightsSe exporta
Shape keys / morph targetsSe exportanVerificar el limite del engine
Constraints (IK, Copy Rotation, Limit)No se exportanBakear
DriversNo se exportanBakear
Bone constraints de rig helperNoBakear y excluir los huesos helper
Modifiers animadosNoBakear a shape keys o a keyframes

Un rig con IK que se exporta sin bakear llega al engine con el personaje en rest pose y sin error visible. Es el fallo mas comun y el mas confuso de diagnosticar.


Phase 2: Armature

  • Un solo armature por personaje, con el objeto en el origen y escala 1.
  • Naming con sufijo .L / .R (upper_arm.L). Sin eso, mirror de poses y de weights no funciona, y las herramientas de simetria tampoco.
  • Jerarquia con raiz unica. Si el destino es UE5 y se quiere reusar animacion del mannequin, seguir su nomenclatura desde el principio: renombrar despues es peor.
  • Bone roll consistente: ejes de rotacion coherentes entre huesos simetricos, o las curvas de animacion se vuelven ilegibles.
  • Huesos helper y de control marcados de forma reconocible (prefijo, o su propia collection) para poder excluirlos del export.

Diagnostico:

blender --background <archivo.blend> --python-expr "
import bpy
for o in bpy.data.objects:
    if o.type == 'ARMATURE':
        bones = o.data.bones
        print(f'{o.name}: bones={len(bones)} scale={tuple(o.scale)}')
        print('  sin sufijo L/R:', [b.name for b in bones if not b.name.endswith(('.L','.R'))][:10])
for a in bpy.data.actions:
    print(f'action {a.name}: frames={tuple(a.frame_range)} fcurves={len(a.fcurves)}')
"

Phase 3: Weights

  • Empezar con Automatic Weights y corregir a mano; no al reves.
  • Maximo 4 influencias por vertice. Es el limite practico de la mayoria de los engines: si hay mas, el engine descarta las sobrantes y la deformacion cambia respecto de Blender.
  • Normalizar todo antes de exportar.
  • Un vertice con weight 0 en todos los huesos se queda en el origen. Se ve como un pico saliendo del personaje.

Phase 4: Acciones, FCurves y NLA

  • Una accion = un clip en el engine. Nombrarlas como se van a llamar alla (Idle, Run, Attack_01), no Action.003.
  • Interpolacion: Bezier para movimiento organico, Linear para mecanico, Constant para stop-motion. La curva es parte de la animacion, no un detalle tecnico.
  • Ciclos con Cycles F-Modifier para trabajar, pero al exportar hay que tener frames reales: el modifier no viaja.
  • NLA sirve para organizar y para bakear combinaciones. El engine recibe las acciones, no la estructura del NLA.
  • Frame rate del .blend igual al del engine. Un mismatch se ve como animacion lenta o acelerada y se confunde con un problema de blending.
  • Loops: el ultimo frame no repite el primero. Si repite, el loop tiene un hitch de un frame.

Phase 5: Root motion

Decidir antes de animar, porque cambia como se anima:

In-placeRoot motion
Hueso raizQuieto en el origenSe mueve con el personaje
Quien mueve al personajeEl codigoLa animacion
CuandoLocomocion con control responsivoAtaques, finishers, cinematicas

Mezclar los dos en el mismo set sin decirlo produce deslizamiento de pies que despues se intenta arreglar con IK en runtime. Anotar la decision por clip.


Phase 6: Bake antes de exportar

blender --background <archivo.blend> --python <script_de_bake.py>

El script tiene que, en este orden:

  1. Seleccionar el armature y entrar en Pose Mode.
  2. Bakear con visual keying (respeta constraints e IK) sobre el rango real de la accion.
  3. Sacar o deshabilitar los constraints ya horneados.
  4. Dejar solo los huesos de deformacion en el export; los de control quedan afuera.
  5. Guardar en un .blend aparte o en una accion nueva — no sobrescribir el rig de trabajo.

Ese ultimo punto no es opcional: un bake sobre el rig original destruye la posibilidad de volver a animar. Pedir aprobacion antes de escribir el script de bake y antes de generar el .blend de salida, diciendo explicitamente que archivo se crea y cual no se toca.


Phase 7: Retargeting de Mixamo

Cuando la animacion viene de Mixamo:

  1. Escala: Mixamo exporta en centimetros. Aplicar factor 0.01 o el import queda 100x.
  2. Pose de referencia: Mixamo es T-pose. Si el rig destino es A-pose, alinear la rest pose antes de mapear o los hombros salen rotos.
  3. Mapeo de huesos: mixamorig:Hips → la raiz del rig, y de ahi hacia abajo. Los nombres de Mixamo son estables, asi que el mapeo se escribe una vez y se reusa.
  4. Bakear el resultado (Phase 6) y borrar los huesos de Mixamo que no correspondan al rig.
  5. Verificar contacto de pies con el piso, que es lo primero que se rompe.

Si el proyecto usa el toolkit de Mixamo de otra herramienta, respetarlo en lugar de escribir un mapeo paralelo.


Phase 8: Resumen

Reportar: huesos totales y cuantos sin sufijo L/R, acciones con nombre y rango, frame rate, influencias maximas por vertice, que se bakeo, y decision de root motion por clip.

Verdict:

  • PASS — keyframes bakeados, naming consistente, frame rate igual al del engine, weights normalizados con 4 influencias o menos.
  • CONCERNS — exportable con deuda: huesos sin sufijo, acciones con nombre autogenerado, root motion sin decidir. Listar cada punto.
  • FAIL — constraints o IK sin bakear, frame rate distinto al del engine, o weights sin normalizar. Indicar el fix.

Next Steps

  • /blender-export para sacar el skeletal mesh y los clips
  • /adaptive-music o /sfx-design si la animacion necesita audio sincronizado
  • /asset-audit para validar el resultado integrado
  • En UE5, /ue-animation-system para el lado del engine

→ Bake de constraints, frame rate y ejes estan en .claude/rules/blender-files.md.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Plan, design, and implement A/B tests and experiments with statistical rigor. Covers hypothesis frameworks, sample sizing, metrics, and result analysis.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Web/mobile accessibility decision guide: WCAG 2.2 AA, ARIA, keyboard nav, focus management, contrast, testing. Use for: a11y, accessibility, wcag, aria, screen reader, keyboard, contrast.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Generate, iterate, and scale ad creative for paid advertising across Google, Meta, LinkedIn, and X. Covers platform specs, creative frameworks, and quality validation.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Musica interactiva para juegos: layering vertical, re-secuenciacion horizontal, stingers, reglas de transicion con sync points, y mapeo de estados de gameplay a musica. Usar para: musica adaptativa, sistema de musica dinamica, transiciones musicales, combat music.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Design multi-agent systems, create agent architectures, define communication patterns, and build autonomous agent workflows with structured evaluation frameworks.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Inter-agent communication protocol for C-suite agent teams. Defines invocation syntax, loop prevention, isolation rules, response formats, and quality loops.

中文简介正在准备中。当前显示原文说明。

SebastianLuser/claude-code-arcane32026年10月27日 更新

查看 SebastianLuser 的全部技能

报告此技能的问题