No announcement yet.

Help: Objects stretch while parented by bones

  • Filter
  • Time
  • Show
Clear All
new posts

  • Help: Objects stretch while parented by bones

    I'm having trouble constructing an arm that is made of a mesh shirt and segmented arm parts. The vertex map is fine but the objects that are children of the bone are stretching whenever they’re rotated away from the bone. I have the hierarchy set up as SHIRT-Bone-Upperarm – lowerarm - hand, the bone is in the upperarm and the shirt, but when I move the lowerarm by itself it stretches. If I have it out of the hierarchy it rotates fine, but it doesn’t rotate with the bone. Any help would be appreciated.

  • #2
    This is a really good question; and has a fairly complex answer.

    In C4D, there are two seemingly simlar tools, the Object Tool and the Model Tool. At first blush, when activated both of these allow you to use the Scale, Move, and Rotate Active Element tools to reposition objects. However, there is a bit of a difference between the two under the hood.

    The default tool in C4D (v7 or lower), the Object Tool. What this tool does when you scale a group of objects is not only scale the polygons of that group, but scales the groups axis as well. So, when you scale the axis in not all directions equally you get a smashed axis. The result is that when you rotate this collection of objects with its smashed axis, the polygons squash as they move in the oblong trajectory of the squashed axis.

    This is usually not an problem, but on occasion, students will have used a workflow that causes this problem. In C4D R8 - which we'll use next semester, the default tool is the Model tool, and this heads off a lot of the problems.

    For now, a good rule of thumb is:
    The Model Tool is for modeling, and the Object Tool is for animation.

    But, what do you do if you have a problem like the one Juan is describing where the damage is already done?

    1) Well, the simplest answer is to use Reset System tool. Use Functions>Reset System to acess it. For most instances, checking the Normalize Axes and Align Orthogonally and Reset Sub-Objects will do the trick.

    2) You can reset the Scale settings to 1. This is really a time consuming process, so make sure you try the option in step 1 first. What happens is that when you end up scaling the group's or object's axis, the Scale (in the Coordinates Manager nested beneath the Size pop-down menu) ends up with Scale values of something other than X=1, Y=1 and Z=1. To fix this do the following.
    [list=a][*]Remove the offending object or groups of objects from whatever they are parented to.[*]Activated the Use Object Axis Tool.[*]Select the object that the offending object or group was parented to and check the Scale in the Coordinates Manager.[*]If it is anything but X,Y,Z = 1, change it to be 1.[*]Check the offending object and each of its children to also make sure that the scale of the Object Axis is = 1.[*]If not, change to be 1.[*]Place your formerly offending object back where it belongs in its hierarchy of the scene and all should be well.[*]Animate to your heart's content.[/list=a]

    If you still have any problems, post your file and I'll can probably fix it and post it back. Let me know if it works for you.