How Do You Scale A Single Bone?

In my character creation/edit setup I want to be able to scale a single bone without it affecting all the bones below it in the hierarchy. For example, I want to scale the clavicle bones to make the shoulders wider without it making the upper arm, lower arm, hand, and each finger bone longer. Or, making the neck longer without it lengthening the head along with it.
The “Transform (Modify) Bone” node affects all the children of the chosen bone and is not desirable for this usage. Does anyone know how to modify a single bone without it affecting the children?

Did you try applying the inverse of the parent scale in the child?

I had thought of that, but I can’t figure out how to make it happen from one slider in the UI. If I use a float value to scale the clavicle bone in the Y direction, wouldn’t the upperArm bone need to scale in the minus value at the same time? How do I get a float value to work negatively? And how do I control both of these (plus and minus) values from a single slider from the HUD?
I’m sorry for the extra questions, but I’m new to blueprints and I haven’t been able to figure it out on my own. :frowning:

I think I figured out the work around. I am using the Bone Driven Controller node after the Transform(Modify)Bone node. I’m using the transformed bone to drive the next bone in the hierarchy with a reverse curve. So as the clavicle bone gets scaled in the Y axis, the upper arm gets scaled inversely in the Y axis and that propagates to the forearm, hand, fingers etc. Personally, I think this could be solved a lot easier if the Transform(Modify)Bone node had the choice whether or not to propagate to children. Maybe this should be a feature request, because I’m not sure if my work around is the intended way of doing this or not. If anyone has any thoughts on this or a better way of doing it I would love to hear about it.

Okay, sometimes the solution can be so easy we overlook it. When I say we, I mean me :smiley:
Before, I was trying to do all this complex math to invert the vector so as I scaled one bone the next bone would inversely scale so it appears not to have been scaled at all. Well, I overlooked simply dividing the vector variable by 1 and connected it to the next bone in the hierarchy. Now as bone A scales, bone B scales inversely at the same rate. I still think this work around makes it more difficult than if the Transform (Modify) Bone node had the ability to propagate to children or not, but it seems to be working for me so I will close this as answered and hope this helps anyone else that has this same problem.

I’m not quite sure how to use Bone Driven Controller. Do you manually set it for every parent bone you want to scale individually? it’d be helpful if you can show your solution.

Thanks