The feathers are following a curve and the curve is hooked to the bones. The curve’s points match the bones’ position, but not the rotation. This keeps the feathers pointing downwards even thought it’s not supposed to:
So I did some digging and found that tilting the curve is exactly what I need! The problem is that I can’t find out how to make the curve’s tilt match the rotation of the bones. Anyone know how to fix this?
If you can get away with it, don’t use a hook on the first control of the curve. Instead, parent it bone relative to the appropriate bone. That will keep the tilt rotating with that bone. (Also important in case of moving the first control with the hook, which will screw up the curve modifier.)
If you absolutely need per-bone tilt, it’s a lot harder. Hard enough that, imo, it’s not worth doing. You have to use drivers and there are gotchas.
I realized that I can just apply the modifiers and assign the wings to vertex groups to be controlled by the bones…
Not sure why I thought I needed that curve.