Spring Bones
Secondary dynamics. The hair sways. The skirt flows. The scarf trails behind. Physics makes it real.
What Are Spring Bones?
Spring bones are secondary dynamics — bones that move automatically in response to the character's primary animation. Instead of manually keyframing every strand of hair, spring bones simulate physics-based motion: gravity pulls them down, momentum carries them forward, and stiffness brings them back to rest.
Think ponytails bouncing during a run. Earrings swaying when the head turns. A cape billowing behind a jumping character. That's spring bones.
VRM Spring Bone Support
VRM models (from VRoid Studio, Ready Player Me, etc.) can include spring bone definitions as part of their metadata. When you load a VRM in BlackBox, these spring bones are automatically detected and activated.
Common spring bone groups in VRM models:
- Hair — Bangs, ponytails, twin tails, long hair strands
- Clothing — Skirts, ribbons, ties, loose sleeves
- Accessories — Earrings, necklaces, bag straps, tails
Previewing Dynamics
Spring bones activate when the model moves. To see them in action:
- Load a VRM model with spring bone data
- Play an animation or orbit the camera quickly — the dynamic bones will respond to the motion
- Toggle visibility using the spring bone toggle in the viewport controls to show/hide the spring bone chain visualization
No animation loaded yet? Just orbit the camera quickly around the character. The momentum change triggers the spring bones, so you'll see the hair and clothing react. It's a fast way to verify spring bones are working.
Spring Bone Parameters
Each spring bone chain has properties that control its behavior:
| Parameter | What It Controls | Low Value | High Value |
|---|---|---|---|
| Stiffness | How quickly the bone returns to rest position | Loose, floppy (wet hair) | Rigid, bouncy (thick braid) |
| Damping | How quickly oscillation dies down | Lots of wobble (jello) | Settles quickly (heavy fabric) |
| Gravity | Downward pull strength | Floaty (space, underwater) | Heavy (thick chains) |
These parameters are defined in the VRM metadata. Currently, BlackBox reads and previews them. Spring bone editing is on the roadmap.
Export Considerations
When you export a VRM model as GLB, spring bone metadata is preserved. Runtime engines that support spring bone physics (like three-vrm, Godot VRM, Unity VRM) will pick up the spring bone definitions and simulate them in real time.
Spring bones are not baked into the animation. They're computed at runtime by the target engine. This means the same animation clip can have different spring bone behavior depending on the runtime physics settings. BlackBox gives you the preview — the final engine gives you the simulation.