sprockets Shelton's new Char: Hans It's just donuts by ItsJustMe 3D Printing Free model: USS Midnight Rodger Reynolds' 1950s Street Car Madfox's Pink Floyd Video Tinkering Gnome's Elephant
sprockets
Recent Posts | Unread Content
Jump to content
Hash, Inc. - Animation:Master

Shoulder deformation rig (nudity...kinda)


Recommended Posts

I was rigging a semi-realistic character when I noticed a lot of talk of shoulder rigs. I thought I would have a crack at doing one myself and so I spent a lot of time looking at myself in the mirror and girating (steady vern; you know what I mean)

 

I have attached an animation of the rig in action.

 

The idea was to get the effect of the arm taking over the movement of the end of the shoulder as it goes up. This movement is independant of the main shoulder movement (where the collar bone moves also).

 

If the character is walking then there isn't much movement of the end of the shoulder but as the arm swings up the two connect.

 

The rig is quite complex but if someone asks then I will give a description as best as I can.

 

Hope it is usefull/interesting.

 

EDIT: Oh yeah, not all the deformation is finished yet. It is the underlying rig that I am showing.

Shoulder_deformation.mov

Link to comment
Share on other sites

  • Replies 11
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

well, I think that looked pretty damn good! Eventhough a real person would be screaming bloody murder if that happend in real life, it shows the flexability and that the joint looks like it could handle every angle thrown at it.

Great!

that's 2 nice things you've shown today.... what else do you have back there!

Mike Fitz

www.3dartz.com

Link to comment
Share on other sites

The rig is quite complex but if someone asks then I will give a description as best as I can.

OK, I ask ;) .

 

This is definitely usefull and interesting. Considering that some of the arm movement is extreme, if not arm breaking, and that even in this situation, the rig behaves quite well, it is definitely worth looking at the implementation details, even if it is complex.

 

And the model looks good too. Where does it come from?

Link to comment
Share on other sites

EDIT: Sorry that the quotes didn't work out.

 

well, I think that looked pretty damn good! Eventhough a real person would be screaming bloody murder if that happend in real life, it shows the flexability and that the joint looks like it could handle every angle thrown at it.

 

Thanks, I wanted to make the joint nice and robust. I am going to try to animate her climbing a tree and all sorts.

 

that's 2 nice things you've shown today.... what else do you have back there!

 

Actually, I am showing an image on another forum. There is a link to it from

 

here

 

The short that I made was for the sake of light relief from rigging. Believe it or not but the entire animation took about the same amount of time as making this character has so far.

 

OK, I ask wink.gif .

 

This is definitely usefull and interesting. Considering that some of the arm movement is extreme, if not arm breaking, and that even in this situation, the rig behaves quite well, it is definitely worth looking at the implementation details, even if it is complex.

 

OK, this is going to be long so bare with me...

 

-----------------------------------------------------------

 

The rig was based on the 'chatter buster' rig which was the invention of the great Carl Railard. This is the rig that Pequod used when he animated Schlitzy. I could never quite get my head round all that was going on in the rig but I recond that I could do the same job in another way.

 

The basic idea of the rig is that the arm is always working with IK internally but the IK null can translates iether to a floating null (for normal IK) or to a null which is the child of a bone rooted at the shoulder (which I shall call the chatter buster, or CB for short).

 

This means that you can get a nice swinging arc movement of the arm indicative of FK and transition smoothly to IK.

 

You can also move the null that is a child of the CB up and down the CB to get a punch type motion without sacrificing the quality of arcs.

 

There are other details to do with pointing the elbow and keeping the bones from rotating badly but I won't go into them here as they are not relevant to my recent invention (plus I can't remember it all now withouth digging around in my rig).

 

The bit that I invented is this:

 

I wanted the end of the shoulder to follow the bicep bone variably as discribed in my first post but there was a circularity problem. The Bicep bone is a child of the bone which controlls the end of the shoulder (I called it the shoulder joint) - but I also wanted to have the Bicep controll the shoulder joint.

 

I decided that the only way around the circularity was to make a duplicate of the geometry bones (I called this the shadow arm). This duplicate has the same constraints as the geometry set up but is at the same level of the hiarachy as the shoulder joint - and thus is not controlled by it and escapes any circularity.

 

I was worried that the difference caused by the lack of movement of the root of this shadow would make the rig less acurate but it seems fine.

 

Ok, so I want the shoulder joint to orient like the bicep, but only where the bicep is raised. So I made a pose that stored the orient like constraint and set the enforcemtent channel to linier. I often prefer zero slope for this type of thing as it gives an automatic ease in and out but I wanted to control the ease later as you will see.

 

Within this pose I made the shoulder joint orient like the bicep shadow but the I realised that this looked bad when it rolled so I made another bone which orients like the bicep shadow but has store roll set to off.

 

Now I had to link the motion of the bicep to that pose so that it eased it in at the right moment.

 

I made the new bone drive the pose by using a 1d relationship - that is to say that I made a relationship between the x rotation of the bone and the pose that orients the shouder joint like the bicep. My method for doing this is thus:

 

Right click the x property to start the relationship then move the pose slider anyware and stop making the relationship. Once this is done, a channel is created which links one to the other at varying extents allong the rotation. This can be edited in the channel editor. For me, this editing is a black art but it basically involves the following workflow:

 

Make an action such as the one in my demo animation which will test the relationship. Click on the channel in the pws to edit it and make a simple channel which varies along a wide range. Go to a part of the action which is at one extreem and fiddle with the channel until you can see the effect come and go as the channel is moved in and out of the area where it has an effect at the extreem position. Now do this at the other extreem. EDIT: You often have to make the channel operate at negative frame positions as well as positive ones.

 

Now you can play with the way that the ease of the relationship works. I found that just editing bias handles was the way to go in this case.

 

Actually, I would like it if this process were made easier - I can't think what kind of UI changes could be made though.

 

Anyway, once this was done, the motion worked pretty well (after some fiddling). I could set where the pose started coming into play and how.

 

The only problem was that there was a small glitch which I couldn't work out. I sent a report and just the other day got a message from Bob saying what the glitch was. I'm not sure if I can print it here and I didn't fully undertand it. It was something to do with the way that rotation maths works and a method of getiting round it that involved switching between two different methods of handling the axes.

 

Anyway, the glitch was something that couldn't be changed for maths reasons and it very rare that it comes up anyway but Bob gave me two work arounds (Bob is definitely one of my favorite programmers).

 

The work-around that I used was to make another bone that had the same constraint as the one that ws driving the pose enforcement, but this one had a limit on all rotation except X.

 

This work around worked perfectly and now the rig is working as planned.

 

-----------------------------------------------------------

 

Wow my eyes need a rest!! I hope that at least one person (probably you Yves) can follow that. It only just makes sense to me!!

 

And the model looks good too. Where does it come from?

 

It is a model that I am making for a short that I am planning. Actually, the short is starting to turn into a long. The modelling started when I boasted that I can make a head mesh in 15 mins (with the proviso that it would take another 15 to make the ear). I felt guilty that I was boasting so I went ahead and tested myself. I was pretty much spot on. I made a male character out of the mesh but there were areas which were lacking so I added some splines. Then I thought I would adapt the mesh for this character.

 

I generally find that making the mesh takes about a fifth of the time of shaping it.

Link to comment
Share on other sites

John,

 

Thanks for sharing this. I will have to reread this again tomorrow morning with a fresh brain though. :D

 

If only for following your thought process in developing that idea, I'm in admiration. ;)

Link to comment
Share on other sites

Hi guys,

 

It feels nice to have some attention from two of the most 'Technical Director' type people here.

 

Reading through it now (it is the morning), I am not sure how clearly it all reads. It was quite an effort to get it all down at all. If you need any clarification then feel free to ask.

Link to comment
Share on other sites

Here is another test of the same model. The back bone is the only thing that is animated - everything else is automatic.

 

The left arm is kept steady with a slider which can be eased off. The head is also leveled except at times when this would break her neck in which case the leveling constraints are eased off. I used the same method to do this as with the shoulder - a bone drives a pose via a relationship. The pose varies the enforcement of a constraint.

 

The effect also works when you rotate the pelvis. It is dependant on the angle of the head relative to the body.

 

Once you start building in this kind of automation, the character becomes creapily real as she adjusts whilst you move her. I just hope that it all helps with animation.

Head_orient.mov

Link to comment
Share on other sites

Hey John, I'm really impressed with the stuff you've shown! Great work.

So, have you set up the whole character you are showing us?

or are you showing us stuff as you get it finised?

So, the setup, I recognize that I won't fully understand it unless I sit down and install it myself but I do recognize some of the problems you encountered and the solutions.

My hat's off you John, as I'm very impressed with your efforts to solve the issues.

Especially the math part!

 

Mike Fitz

www.3dartz.com

Link to comment
Share on other sites

So, have you set up the whole character you are showing us?

or are you showing us stuff as you get it finised?

She is more-or less rigged now. I need to tweak some of the deformation (I am using bone weigting combined with fan bones which can get pretty confusing). I may use a little smart-skind afterwards but we will see.

 

Features that the rig has at the moment:

 

The shoulder movement is controlled by translating the arm bone.

 

The hands can be steadied.

 

The legs are designed so that she can rotate her foot from the heel, ball or ankle. When she lifts the heel, the toes stay still. The knee can be pointed also and there is a slider to set the degree to which the knee points like the foot.

 

There is a but bone (or arse bone as I call it).

 

The pelvis and the chest can be translated independantly.

 

The jaw is rigged with cp weights.

 

Things left to do are:

 

Make and rig a tongue

 

Rig the face (that will be a whole new exercise)

 

Texture her properly.

 

I am not going to add any auto-balance stuff as I never got on with it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...