Jump to content
Hash, Inc. - Animation:Master

How to blend between IK & FK with a Constraint-Setup?


Fuchur

Recommended Posts

Hi,

 

this is a more or less advanced question, but maybe someone can give me a hint in the right direction.

 

I am setting up a simple own rig in a percentage pose. (I think it ineeds to be one to be able to blend between the two states...

My simple IK-Chain-Setup (an Arm or something) contains of two bones in a row, a null-aim at the end and an elbow-aim-bone. I use an AimAt-Constraint to point the upper arm at the elbow aim and a IK-constraint to point the lower arm at the IK aim. This works.

 

But now the tricky-part: How do I blend those Constraints that they will blend the motion and not just pop into position on a higher enforcement-level thatn 0%?

 

I played a little making the blend-channel linear instead of hold and had a look at the blend-method of the pose I am using (Blend & Add) but I cant seem to figure out how it is done.

In a videotutorial from Anzovin they are using this technique in the SetupMachine-Rig, so it has to be manageable, but I cant see how...

 

Does anyone have a tipp for me? I attached the simple project with my setup to this post.

 

See you

*Fuchur*

ik_fk_switch.prj

Link to comment
Share on other sites

  • Replies 10
  • Created
  • Last Reply

Top Posters In This Topic

I don't think you will be able to do what you want with this simple of a rig.

 

You'll need at least an IK setup that is ON all the time. Then use orient like constraints to constrain the geometry to the IK setup. You may even need a FK setup as well, so the geometry can orient between the 2 setup.

Link to comment
Share on other sites

Some time ago, I had played with isolating the FK/IK arm setup in the 2008 rig. Today, I stripped it down to the barest bones necessary (got rid of steady stuff, some fan bones), so that I could have a better understanding of what Mark is implying. It's possible it could be stripped down further.

 

Take a look at this model, and see if it helps

RightArms_Hands2008ver3.mdl

Link to comment
Share on other sites

  • Hash Fellow

If you're trying to understand how the TSM2 rig does what it does, you could look at the constraints in one.

 

You can also read the list of what TSM2 does in the arm.txt script:

 

hide "arm"

hide "upperarm1"

hide "upperarm2"

hide "lowerarm1"

hide "lowerarm2"

hide "hand"

 

create a bone called "elbow roller parent"

with parent "arm"

with the rotation of "upperarm1"

with the length of "upperarm1"

with the start point of "upperarm1" offset by 0.12

hidden

 

 

create a bone called "arm rotation isolator"

with parent the parent of "arm"

with the start point of "upperarm1"

with the rotation of unprefixed "body"

hidden

 

create a bone called "arm stretchiness"

with parent "arm rotation isolator"

with the start point of "upperarm1"

hidden

 

create a bone called "upper arm"

with parent "arm stretchiness"

with the start point of "upperarm1"

with the end point of "upperarm2"

with the roll of "upperarm1"

 

create a bone called "elbow roller"

duplicate of "upper arm"

with parent "upper arm"

hidden

 

create a bone called "lower arm"

with parent "upper arm"

chained to parent

with the start point of "lowerarm1"

with the end point of "lowerarm2"

with the roll of "lowerarm1"

 

create a bone called "hand control"

duplicate of "hand"

with parent "lower arm"

chained to parent

 

create a bone called "hand attacher"

duplicate of "hand"

with parent "hand control"

hidden

 

create a bone called "inter upper arm"

duplicate of "upper arm"

with parent "arm stretchiness"

hidden

 

create a bone called "inter lower arm"

duplicate of "lower arm"

with parent "inter upper arm"

chained to parent

hidden

 

create a bone called "inter hand"

duplicate of "hand"

with parent "inter lower arm"

chained to parent

hidden

 

create a bone called "arm IK control"

duplicate of "hand"

hidden

 

 

in on/off pose unprefixed "TSM constraints"

 

aim at constrain "elbow roller parent" to "inter hand"

aim roll at constrain "elbow roller parent" to "inter lower arm"

 

orient constrain "hand" to "inter hand"

translate to constrain "hand" to "inter hand"

 

orient like constrain "inter hand" to "hand attacher"

kinematic constrain "inter lower arm" to "hand attacher"

 

compensated translate to constrain "inter upper arm" to "arm"

aim at constrain "inter upper arm" to "lower arm"

 

orient like constrain "lowerarm1" to "elbow roller"

translate to constrain "lowerarm1" to "inter lower arm"

no roll orient like constrain "lowerarm1" to "inter lower arm"

 

orient like constrain "lowerarm2" to "inter hand"

at enforcement 50%

compensated translate to constrain "lowerarm2" to "inter lower arm"

aim at constrain "lowerarm2" to "inter hand"

 

orient like constrain "arm rotation isolator" to unprefixed "body"

 

aim at constrain "arm" to "upper arm"

 

orient like constrain "upperarm1" to "elbow roller"

at enforcement 50%

aim at constrain "upperarm1" to "inter lower arm"

 

compensated translate to constrain "upperarm2" to "inter upper arm"

orient like constrain "upperarm2" to "elbow roller"

aim at constrain "upperarm2" to "inter lower arm"

 

 

in pose "arm FK/IK" in folder "arm"

translate to constrain "hand attacher" to "arm IK control"

orient like constrain "hand attacher" to "arm IK control"

 

show "arm IK control"

 

hide "lower arm"

hide "hand control"

 

 

in pose "elbow rolling - manual/auto" in folder "arm"

orient like constrain "elbow roller" to "elbow roller parent"

 

in pose "arm regular FK" in folder "arm"

orient like constrain "arm stretchiness" to the parent of "arm"

 

in pose "arm stretch" in folder "arm"

scale "arm stretchiness" 300%

Link to comment
Share on other sites

Nancy, I believe Gerald is trying to blend between an FK position to an IK position (pose to pose). I don't think he wants an IK/FK switch. the 2008 rig arm will not help him.

 

That may be so.

 

I assumed Fuchur was looking for the ability to switch between IK/FK without any jumps. And not necessarily that you have to use a percentage pose to transition/blend like the TSM does. I also assumed Fuchur was looking for a minimal set of bones, or the simplest rig possible. The stripped down arm rig (based on 2008) that I posted will do that.

 

I also assumed Fuchur had assumed he needed a percentage pose to transition, because I believe TSM did it that way, out of necessity, to prevent jumps. I thought Gerald wasn't aware that it could work without jumping using just an on/off switch.

 

I felt it couldn't hurt to let him see an alternative approach.

Link to comment
Share on other sites

Nancy, I believe Gerald is trying to blend between an FK position to an IK position (pose to pose). I don't think he wants an IK/FK switch. the 2008 rig arm will not help him.

 

That may be so.

 

I assumed Fuchur was looking for the ability to switch between IK/FK without any jumps. And not necessarily that you have to use a percentage pose to transition/blend like the TSM does. I also assumed Fuchur was looking for a minimal set of bones, or the simplest rig possible. The stripped down arm rig (based on 2008) that I posted will do that.

 

I also assumed Fuchur had assumed he needed a percentage pose to transition, because I believe TSM did it that way, out of necessity, to prevent jumps. I thought Gerald wasn't aware that it could work without jumping using just an on/off switch.

 

I felt it couldn't hurt to let him see an alternative approach.

 

I'll see what works best for me ;).

In the end it is not really important for me... I just dont want jumps and it should be controlable in an easy way... TSM did it with a blending between two poses, which seemed like a good idea, but if it is done in another way I am fine with that.

 

I understand how it is done when using the TSM-Rig now... They are using "two rigs above eachother" and geometry-bones which will just blend between the two rigs using TranslateTo- and OrientLike-Constraints... nice workaround, but a little heavy on the bones-side for me... but lets see what the 2008-rig does there.

 

Thanks a lot for the help :). Lets see if I can get that to work...

*Fuchur*

Link to comment
Share on other sites

  • 2 months later...

didnt we get the software setup so that we now have the ability to turn ik/fk on or off???? I remember this because it was some of my suggestions that made this happen...

however I have lost all of my data thanks to hurricane sandy and can not refer back to any files from back then...

Mike Fitz

www.3dartz.com

Link to comment
Share on other sites

Yes Mike, Squetch Rig, 2008 Rig and Lite Rig all use the FK/IK switching. I also posted updated scripts for the TSM2 rig, to allow for the FK/IK switch.

 

Mark are you still in NJ? How did you make out with Hurricane Sandy? I got it pretty bad.

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. 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...