# How to create stacked rotation with bones? (similar to array mod with object offset)

I'm trying to achieve this kind of stacked rotation that you would get when using an array modifier on an object and having the offset controlled by another object.

This is for a spine of a character. I want to be able to rotate the hip (torso) bone and have every children bone rotate increasingly more compared to hip bone.

Another way to look at it would be that every children bone would have the same rotation value in relation to children's respective parent. But because every parent (except the first one) is also a child, the rotations would stack.

Here is a video demostrationg the effect achieved using array mod and obj offset https://youtu.be/1Dm_htzlVrM

• so waht about a Copy Rotation constraint? – moonboots Sep 24 '20 at 14:35
• No, this only copies the rotation. No stacking. – Kaarel Parve Sep 24 '20 at 14:37
• Does the exact rotation matter or the overall effect to have a progressively rotated bone "array"? – lemon Sep 24 '20 at 15:45
• Exact would be nice, but all I want to do is curve my characters back using one bone. Whatever you can throw at me would be better than nothing. – Kaarel Parve Sep 24 '20 at 16:05
• Was thinking about bendy bone... but not the exact same effect I think and will need two objects to drive it properly. So maybe, forget it. – lemon Sep 24 '20 at 16:07

Copy Transform constraint

Using a copy transform (or copy rotation and or scale) from target space local with parent to owner space local for each descendant targeting a common ancestor bone will achieve this

Add constraint to one bone select all others and Bone > Constraints > Copy Active to Selected so its pretty easy to set up.

Will also progressively scale. The bones are all connected hence the constraints calculated translation is ignored.

Example, all 4 descendants copy the transform of bone named "Bone"

• Yes, that's it. The other answer achieves the result too, but it required manually typing in the rotation values. This is better, thanks! – Kaarel Parve Sep 26 '20 at 13:28

Using "child of" constraint:

Add the constraint to each of the bones, using "set inverse", relatively to its parent:

Tune the influence to be progressively decreased: 100% for the first then 75, 50 and 25 (as 4 bones in my example).

Notes:

-will work under some limits, because if too much rotation the last bones will turn over the constraint limits.

-scales are progressive too (like array modifier)