How to have a character carry another character?

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

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
User avatar
grimble67
Posts: 49
Joined: Wed Nov 24, 2004 11:05 pm
Location: Florida

How to have a character carry another character?

Post by grimble67 »

I have two characters in bone layers: a little girl, and her teddy bear. They have separate bone layers, as I want them to be independent of one another.

For part of my scene, I want the girl to carry the teddy bear by one of it's arms. The girl's arm is springy (I'm using bone dynamics), and I want the teddy's arm to stay "locked" in the girl's hand.

As they are in seperate bone layers, I can't make the teddy bear's arm a child bone of the girl's hand. Even if I could lock them together in the bone layers, it might cause I problem when I want her to drop the bear.

Any ideas anyone?
User avatar
Lost Marble
Site Admin
Posts: 2347
Joined: Tue Aug 03, 2004 6:02 pm
Location: Scotts Valley, California, USA
Contact:

Post by Lost Marble »

One way to do this would be to duplicate the bear layer. Then, attach one copy to the girl's hand, and use the other one to do whatever it's supposed to do (lay on the ground?).

Finally, use layer visibility to hide one bear and show the other bear at just the right frame to make it appear to have dropped from the girl's hand.
User avatar
grimble67
Posts: 49
Joined: Wed Nov 24, 2004 11:05 pm
Location: Florida

Two bears?

Post by grimble67 »

Thanks for your fast response.

Are you suggesting I make the 1st bear arm bone a child of the girl's hand bone?

The small problem with this is that I'm using a vague outline of the bear, and I intend to add details later. If I've duplicated the layer, this will mean I'll have to add the new detail in two places.

Another problem I've noticed is that if I have a layer group inside a bone layer, then the offset bone tool doesn't correctly move the drawings on vector layers inside the group.
User avatar
Lost Marble
Site Admin
Posts: 2347
Joined: Tue Aug 03, 2004 6:02 pm
Location: Scotts Valley, California, USA
Contact:

Re: Two bears?

Post by Lost Marble »

grimble67 wrote:Are you suggesting I make the 1st bear arm bone a child of the girl's hand bone?
Probably not...without seeing the file, I can't know exactly how things are set up. If you parent the bear's arm to the girl's hand, then it would make more sense for the parenting relationship to go up the bears's arm. Normally, the parenting goes: body->upper arm->lower arm. But if the girl is swinging the bear, it would be better to go girl's hand->bear's lower arm->upper arm->body.

That would require big changes to the bear's hierarchy. Another approach would be to just attach the entire bear layer to the girl's hand, and not combine the skeletons.
grimble67 wrote:The small problem with this is that I'm using a vague outline of the bear, and I intend to add details later. If I've duplicated the layer, this will mean I'll have to add the new detail in two places.
I usually recommend completing your artwork before animating, but there's still probably a way to do this. After you make changes to the bear, then duplicate the vector layers that make up the bear, and copy them into the second skeleton. The skeleton layer can stay in the girl's hand, and replacing the vector artwork won't affect the motion if you've already animated it.
grimble67 wrote:Another problem I've noticed is that if I have a layer group inside a bone layer, then the offset bone tool doesn't correctly move the drawings on vector layers inside the group.
Bones can only control the vector layers directly inside them. This isn't specific to the Offset Bone tool - bones can never control vector layers that are enclosed in deeper levels of group layers.
User avatar
grimble67
Posts: 49
Joined: Wed Nov 24, 2004 11:05 pm
Location: Florida

Post by grimble67 »

Another approach would be to just attach the entire bear layer to the girl's hand, and not combine the skeletons.
How do I do this? The girl's hand is in a vector layer, and I'm not sure how I can "attach" things to it. Remember, the bear has his own skeleton.
User avatar
7feet
Posts: 840
Joined: Wed Aug 04, 2004 5:45 am
Location: L.I., New Yawk.
Contact:

Post by 7feet »

What I'm pretty sure LM is saying (and I agree) is to use the Attach Layer tool to attach the teddy bear bone layer (it should be a child layer of the girls bone layer) to the hand bone of the girl. That way the entire teddy bear layer moves with the girls hand, but still has all of it's own bones to control it.

If you are using a sketch for the bear, you can make a temporary duplicate and then replace it with a dupe of the final bear when you are done. If the main one is the one attached to the girls hand, which would seem to be the one where most of the animation is taking place, it shouldn't be too much of a problem. You might also want to wait to make the final duplicate bear until after you done the animation on the attached version. Then the duplicate will have a copy of all of the bone animation up to the point where she puts it down, making the swap a little easier.

One other thing I've found is that the position of dynamic bones when stepping through the timeline doesn't always reflect exactly the way they will work on playback. It takes a few frames for the dynamics engine to get up to speed, so if you are stepping back and forth around the point of the swap, the girls arm might not be exactly where it'll would in the final animation at the time of the swap. To keep this under control, you might want to put in a few keyframes on that bone to put it under direct control so you can hit the swap a little easier.

--Brian
User avatar
Banterfield
Posts: 138
Joined: Tue Aug 03, 2004 10:40 pm
Location: Colorado

Post by Banterfield »

I've had luck with animating complex objects that move together by placing them both beneath the same group (in my case, a magical creature was carrying a box, which he later drops).

While they're moving together, I use the group translation and rotation for action, and once they're done moving together, I animate them individual within the group using their own respective translation controls.

Not having read all the details of your exact problem, I can't say that this method will serve you perfectly. Maybe a version of the basic idea will serve?

Kind regards,
Dave
User avatar
grimble67
Posts: 49
Joined: Wed Nov 24, 2004 11:05 pm
Location: Florida

Post by grimble67 »

Fantastic; thanks for sticking with me on this one. I'd overlooked the "bind layer" bone tool, which is exactly what I was looking for. So many buttons, so little time!
Post Reply