Dynamic Hand

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Víctor Paredes, Belgarath, slowtiger

User avatar
heyvern
Posts: 7042
Joined: Fri Sep 02, 2005 4:49 am

Post by heyvern »

I found your original post on switches with multiple skeletons.

viewtopic.php?t=6374

-vern
Genete
Posts: 3483
Joined: Tue Oct 17, 2006 3:27 pm
Location: España / Spain

Post by Genete »

Thanks :wink:
basshole
Posts: 439
Joined: Tue Feb 12, 2008 1:11 am

Post by basshole »

brain. . .hurts. . ..

For what it's worth, the idea I had works too, or seems to, with multiple bone layers in a switch layer, each with their own vector sublayers, and switching between them, although my test animation only played back correctly when I selected the master switch layer first before hitting "play." I don't know if that means anything.

I guess the benefit of having all your skeletons in the same layer is that you could parent them so that when the arm/hand moves, each skeleton follows, instead of having to manually reposition every time you switch?
Genete
Posts: 3483
Joined: Tue Oct 17, 2006 3:27 pm
Location: España / Spain

Post by Genete »

You should constraint each skeleton to a master one. In this way moving one of them you position all the skeletons at the same time.
It would be good if you can constraint bone scale by a non linear combination of length and angle of other bones. But it is not possible.
basshole
Posts: 439
Joined: Tue Feb 12, 2008 1:11 am

Post by basshole »

Can you elaborate on constraining each skeleton to a master one?

For instance, I have the main body bone layer for the character, which includes a hand bone. However, the actual hand and fingers on a bones on a switch layer, the switch layer being bound to the hand bone in the main skeleton. So what do I do with these extra skeletons in the switch layer?
Genete
Posts: 3483
Joined: Tue Oct 17, 2006 3:27 pm
Location: España / Spain

Post by Genete »

basshole wrote:Can you elaborate on constraining each skeleton to a master one?

For instance, I have the main body bone layer for the character, which includes a hand bone. However, the actual hand and fingers on a bones on a switch layer, the switch layer being bound to the hand bone in the main skeleton. So what do I do with these extra skeletons in the switch layer?
You can only constraint one bone property to other bone (same property) of the same bone layer. Considering that you can do whatever constraint you want. You cannot constraint crossed properties (scale with angle for example) or crossed bones (from one bone/switch layer to other bone switch layer). If want to do that you should use custom scripts.

Regarding to all those extra skeletons in the switch layer you should constrain all them (except one) to a one of them (the master).
If you look to the images in the post that Vern pointed out, some legs skeletons are constrained (its colour is different from a normal skeleton).

-G
basshole
Posts: 439
Joined: Tue Feb 12, 2008 1:11 am

Post by basshole »

Is the "master" that you refer to one of the switch layer skeletons? So I just arbitrarily pick one, and tell all the skeletons in the switch layer to move with it?
User avatar
heyvern
Posts: 7042
Joined: Fri Sep 02, 2005 4:49 am

Post by heyvern »

If you have a switch for a hand. Bind that switch to the hand bone of the parent layer.

If the switch has bones there is no need to do anything else. The bound hand switch layer will always follow the parent skeleton hand bone it is bound to.

All the "sub switch/bone layers" inside the hand switch layer will do what ever the parent hand layer does.

However! If you plan on animating the hand bone IN THE HAND SWITCH layer that contains all those sub switch/bone layers then you should have a MATCHING hand bone in each of those layers and bind it to the hand bone in the "parent" hand switch layer.

You can't parent or constrain a bone from a sub bone layer to a bone in a parent layer or any other bone layer. You can only attach or control or constrain bones that are ALL on the SAME BONE LAYER.

What you should do is LAYER BINDING. You bind a child layer to a bone in the parent layer. So if you have a switch or bone layer that contains other switch or bone layers, the only way to control them is to bind those layers to a bone in the parent bone layer.

Layer binding. Bind a layer to a bone in the parent layer. Cascade the binding up the chain so to speak and the sub layers all work together as a unit.

-vern
basshole
Posts: 439
Joined: Tue Feb 12, 2008 1:11 am

Post by basshole »

I think I understand.

AS per our earlier discussion in the thread (or one of my others), my hand switch layer is bound to the hand bone in the parent/master skeleton layer, so if I want to manipulate the hand bone itself, I move the hand bone of the master skeleton bone layer, NOT the hand bone in the switch layer.

So with this logic, if I align (literally match the orientation/position using bone offset) the hand bone in each new skeleton in the hand switch layer with the original hand bone (the first hand I drew is just a plain hand dead on to camera, which is lined up correctly) in the hand switch layer, then when I move the hand bone in the master bone layer, all those other skeletons will move correctly.

But I don't have to worry about the finger bones in each skeleton, right? They just have be parented to to each new root bone in each new skeleton, yes?
Post Reply