Every character I ship has some kind of secondary motion problem. Hair that's too stiff, a coat that doesn't breathe, bag straps that might as well be welded to the spine. And every time I try to solve it properly, I'm staring down either a runtime simulation budget I can't afford or a bake pipeline that breaks the moment the base animation changes.
I keep landing on the same three options and none of them feel clean:
- Spring bones / jiggle bones: works well for hair and accessories if you tune stiffness and damping carefully. There are solid third-party options in Unity like
Magica Cloth 2 (bone mode) and the VRM Spring Bone implementations. The problem is they go haywire during fast locomotion if parameters aren't dialed per-asset, and they have no concept of animation blending. The spring is just reacting to final bone position, which can jump badly during state transitions. - Baked sim on the animation: great quality, zero runtime cost, but it's essentially a one-way door. Any animation edit means re-simming. I've had animators refuse to touch locomotion clips because they didn't want to redo the coat sim. That's a workflow problem wearing a technical costume.
- Hand-keyed secondary: actually underrated for hero character work when you have time. Doesn't scale and it's easy for it to drift out of sync when the base anim gets tweaked, but the control is unmatched.
The spring bone approach feels right for most cases, but the blend-state problem keeps biting me. Is anyone running a hybrid, like spring bones with some kind of manual override or dampening mask per locomotion state? Or have you just built tooling around the sim pipeline to make re-baking fast enough that it stops being painful? Curious what's actually in shipped projects, not the theoretical ideal.