About texture-state-animation
A skill for planning texture-state animation with registered images, separate semantic layers, and preview checks. It is intended for texture and 3D asset workflows that need controlled transitions and export-compatible animation channels.
Key features
- 01State alignment and normalization
- 02Semantic layer classification
- 03Per-layer transition planning
- 04Export-compatible animation channels
- 05Contact sheets and flicker checks
Use cases
- 01Planning transitions between texture states
- 02Keeping avatar silhouettes stable during animation
- 03Checking export limitations before delivery
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ roble3/ cc-blender-skill --skill texture-state-animationAfter installing, type/texture-state-animationin Claude Code to confirm it loaded.
Bundled filesscripts/texture_transition_plan.py
Details
From the project READMETexture State Animation
This skill exists because “crossfade several full images” usually looks bad. Texture animation must be designed like motion graphics: registered states, constrained transition channels, and preview gates.
Failure modes to avoid
- Whole-frame crossfades between unrelated crops/compositions.
- Python frame handlers as the only playback mechanism when export/runtime support is needed.
- Texture swaps that change silhouette, camera crop, or scale at the same time as decorative motion.
- Mixing aura/background/HUD pixels into the avatar surface texture unless that is the intent.
- Morph pulses that break accepted geometry constraints such as constant depth.
Workflow
- Register states first: crop, scale, align, and color-normalize all source states into one canvas and one semantic mask.
- Classify pixels/layers:
- avatar surface/base;
- facial decal/features;
- glow/emission accents;
- background/aura/context;
- HUD/circle elements.
- Choose transition type per layer, not one global blend:
- avatar surface: hold, shimmer, subtle value/roughness pulse, or masked dissolve;
- face features: hold or short opacity fade;
- glow accents: emission pulse / traveling highlight;
- aura/HUD: independent orbit/dash/dot animation;
- background: separate plane/compositor, never baked into avatar unless requested.
- Use export-compatible channels when needed:
- keyframed material values, opacity, UV transform, shape keys, object transforms;
- image sequence only if target supports it;
- avoid Blender Python handlers for final GLB unless the target runtime will recreate them.
- Render a contact sheet and flicker report before calling the animation acceptable.
Acceptance gates
- Each texture state is registered to the same bbox/landmarks.
- No full-canvas crossfade is used unless state registration and semantics match.
- Avatar silhouette remains stable unless the story explicitly calls for a morph.
- Context/aura elements are separate from the avatar material.
- The exported format can reproduce the animation, or limitations are documented.
Scripts
scripts/texture_transition_plan.pycreates a transition plan from source states and flags risky whole-frame crossfades.
Comments
Markdown supported