<-previous
index
next->

 

closing a hand with one slider



This is a somewhat rigorous example, and it's questionable if you will ever need it exactly like this, but it does illustrate the power of the nodes. In a real-life example, you would probably not want to use just one slider to close a whole hand, but use a combination of sliders, one for each finger, as well as the method illustrated by the spine example so the fingers bend evenly. But for now, we're going to close a whole hand with just one slider.
Open up the file 'hand_before.c4d'. This file is the same as the result of the previous example with limiting the movement of an elbow. It features a very basic hand (just three fingers and just three bones per finger) and a small cube floating above it. We need to link every bone in the hand to that slider, and there are quite a few bones, so some planning is preferred. For each bone, we'll need a Puppeteer tag that points to the little cube object. This is best done by the Custom method, as that means we can simply copy the tag around, which can't be done with any of the relative methods. Also, we want the source's Y position to drive the destination's H, P and B rotation. This can be either done by using the Averaged linking method, or using the Patchbay method. Also, we'll want to limit the hand's movement so that it won't close or open more than neccesary, since that would just look plain weird! Finally, we could turn off the tag before making the settings, but that would mean that we would have to turn on each and every tag by hand after copying! If we simply turn off expressions altogether, it's much more simple!
There's no escaping the fact that we will have to set the nodes for each and every bone in the hand, simply because there won't be a single bone that rotates similar to another one. We might alleviate our work a bit by adding a 'rotate like parent' Puppeteer tag to the final bones of the fingers, but that might not really look as good. However, since we already planned out all identical settings above, this shouldn't be too much work. Here we go.
First, turn off expressions (turn off the Use Expressions item in Cinema4D's Edit menu). Next, add a Puppeteer tag to the first bone next to the cube object (the object called '+close hand'). Set it's Source object to Previous object, and press the Set custom button. Next, turn of all the source's channels, except for the Y position (the second channel from the top). In the destination object's Filter, turn off all the position and scale channels, leaving the bottom three active. Now let's use the Patchbay, just for the fun of it. Set the linking method to Patchbay with the popup menu in the lower left section of the interface, and drag three cables, one from each active rotation channel, to the source's single active Y position channel. Finally, set both the limits to End.
Now, you need to copy this Puppeteer tag to each and every bone of the hand. For certainty, press Apply once, then start copying the tag around. Once you have a Puppeteer tag on each bone in the hand, you need to set the first nodes to the current shape. One by one, open up each tag and press both the top C buttons (the source node 1 C and the destination node 1 C). Done? Okay then, drag the little cube upwards (Y position, remember?) and, using just the rotate tool, model the hand bones into a fist shape. Take care not to use too much wild re-modelling, especially if you're using quaternion rotation (ie the yellow rotation circle) as this might mean that you rotate a bone 360 degrees too much around an axis, and will result in some unpleasant movement when the hand is linked to the cube-slider. Just bend all the fingers inwards, maybe bend the roots of the index and middle finger a bit upwards, untill you have the fist you want. Done? Has the cube been moved upwards as well? Okay, then we need to set all the tags' second nodes, both for source and destination object. So, open up each tag in turn again, and press the bottom 2 C buttons. That's it! Turn on expressions again, and drag the cube object up and down. If all went okay, the hand is now opening and closing. But the cube object is not really behaving as a slider! I guess you forgot to turn on Feedback, didn't you? So does this mean that you need to turn on Feedback in each and every Puppeteer tag? Not at all. Since all tags have the same settings, even the same source nodes, you can simply choose one of the tags and turn on Feedback there. Whallah! Done.
Have a look at 'hand_after.c4d' for the result.

 

 

<-previous
index
next->