PDA

View Full Version : No Flip Knees... again


mberglund
12-07-2008, 03:21 PM
Here is new post on No Flip knees. Let me know what you think...
http://faithofthefallen.wordpress.com/no-flip-knee-setup/

http://faithofthefallen.files.wordpress.com/2008/12/figure4.jpg

Leffler
12-08-2008, 10:30 AM
Hi swede :wavey:

Looks nice, but does it need to be that complicated?
What I do is just connect so that the poleVector-object follows the foot in TranslateY, TranslateZ and RotateY .... this way it will never flip and it will allways be in the place where I expect it to be. I have animated a whole bunch of stuff with this setup and its fast and works all the time.

Doesnīt even have to use a constrain, just direct connection = superfast

// Otto

tonytouch
12-08-2008, 11:13 AM
@Leffler:
this setup has a basic-auto-Knee built in ... so check it out ! move around the footControl ... see , the kneeControl will stay "between" the legs . that is why , it is so complicated . indeed , it is quite an advanced technique .


@mberglund:
cool tutorial , i recommend it , everyone , who wants to dig in "intermediate rigging" ...

Leffler
12-08-2008, 01:06 PM
@Leffler:
this setup has a basic-auto-Knee built in ... so check it out ! move around the footControl ... see , the kneeControl will stay "between" the legs . that is why , it is so complicated . indeed , it is quite an advanced technique .


Yes i see that but what is the benifit of it? Insted of just having it travel with the footControll all the time in TZ,TY and RY. That I donīt understand ...

/Otto.

tonytouch
12-08-2008, 02:11 PM
well, you can "build up on this" ...

e.g. "add" another one of these aimConstraint-Systems (inside) , which points towards the direction of the hips or the chest - and then blend between the different directions . this way , you will have a pretty nice automatisation for the knee , and the kneeControl will always move between your hip and your ankle + automatically rotate + additionally add some customTwist-attribute

e.g. 50% in direction of the foot and 50% towards the chest , will bring you a pretty smooth auto-knee-behaviour in a walkcycle - if you are planning things like charlie-chaplin-walks or monthy-python-ministry-of-silly-walks (http://www.youtube.com/watch?v=IqhlQfXUk7w) .

it's not so easy to explain , but once you find out , how to use it and combine it - you can really improve your leg-setup with this technique for knee-automatisation .

->
usually in any of the available rigs on the internet , there is always a simple knee-polevector . so if you rotate the foot , you need to counteranimate all the time .

d-brooks
12-08-2008, 02:40 PM
I notice the pole vector travels with the leg in the example maya file?

When I unparent the PV locator to imagine it being under a global control, I still get the flipping issue, but when the second ik RP solver crosses the pole vector object.

I think the fact the pole vector locator is parented under the no flip joints aids the whole flipping issue...but I don't want my pole vector moving round like that...

I like the idea of making a fake pole vector joint chain. This makes me want to mess around :D

mberglund
12-08-2008, 02:46 PM
Hi swede :wavey:

Looks nice, but does it need to be that complicated?
What I do is just connect so that the poleVector-object follows the foot in TranslateY, TranslateZ and RotateY .... this way it will never flip and it will allways be in the place where I expect it to be. I have animated a whole bunch of stuff with this setup and its fast and works all the time.

Doesnīt even have to use a constrain, just direct connection = superfast

// Otto

Well it doesn't use any constraints except the poleVector constraint.

I quickly setup what you were describing; directly connecting the .ty .tz .ry. and the knee flips. It follows the up and down movement of the knee, as well as the rotation, but the PV doesn't stay in front of the knee, so if I raise the foot high enough it flips. If you go into the side view, so that you are looking at the leg setup in profile, then try to move the leg around the hips in circle and it flips.

Maybe i'm not setting it up correctly... :)

mberglund
12-08-2008, 02:53 PM
I notice the pole vector travels with the foot control in the example maya file?

When I unparent the PV locator to imagine it being under a global control, I still get the flipping issue, but when the second ik RP solver crosses the pole vector object.

I think the fact the pole vector locator is parented under the foot control aids the whole flipping issue...but I don't want my pole vector moving round with the foot control...

I like the idea of making a fake pole vector joint chain. This makes me want to mess around :D

I'm not sure if I totally understand what you are saying.
Of course if you unparent the PV locator it flips, because you have now broke the system. The knee Pv locator is not parented to the foot control it is parented to the noflip_#_joint's. the noFlip_#_joints IKHandle is parented to the foot control. I have another PV locator for the noFlip_#_joints ik, and this is used for stability and axis isolation.

d-brooks
12-08-2008, 03:12 PM
So the pole vector object has to travel with the no flip joints? Is there a way to turn that off? That's the aspect I don't like. I like my pole vector object to remain in world space or under the global control.

mberglund
12-08-2008, 03:24 PM
oh i see what your saying. There's no way to make it global and not flip. Because of the nature of the poleVector constraint it always looks at the pv locator, so once the foot passes the world space position of the pv locator it will flip. If you don't want to use the PV locator you can turn off the visibility in the foot_anim channel box and use the knee attribute to rotate the knee how you like. But currently in this example you cant make the pv loctor completely global. Yeah, there's probably a good solution, like have two pv locators and two poleVector constraints animating the weight value, or haveing the pv_locator_grp parent constrained to the noFlip_joints and a World Locator or Master control. then you could switch the weighting. But adding that was a bit dense for this example, though totally possible :)

mlefevre
12-08-2008, 04:18 PM
Ingenious! I've been looking for this sort of setup for a while :)

Thanks for sharing!

Just a quick note, in your tutorial you say


This will only work if your Local Rotation Axis is the same as mine. Which for the foot_anim is X-up toward positive Y, Z-forward toward positive Z, and X-forward toward negative X.

But I think you mean


This will only work if your Local Rotation Axis is the same as mine. Which for the foot_anim is X-up toward positive Y, Z-forward toward positive Z, and Y-forward toward negative X.

Confused me slightly, but I checked your demo file to confirm.

mberglund
12-08-2008, 04:39 PM
Ha! you're right. I'll fix that typo. Thanks!

MolemanSD7
12-08-2008, 05:05 PM
The only issue I found with this was rotating in the Z axis at 90°+. I'm not sure if this is an issue in animating, but may be if there needs to be a run/jump off a wall or something... Its when the additional locator, the one the ikh is poleconstrained to, passes past the other polevector plane. Otherwise it feels pretty solid. May be interesting to try.

mberglund
12-08-2008, 05:11 PM
The only issue I found with this was rotating in the Z axis at 90°+. I'm not sure if this is an issue in animating, but may be if there needs to be a run/jump off a wall or something... Its when the additional locator, the one the ikh is poleconstrained to, passes past the other polevector plane. Otherwise it feels pretty solid. May be interesting to try.


Yes, that is the only limitation i've found. it can't be rotated past 90degrees without flipping, on the Z-axis. Hopefully breaking the ankle that much wont occur too often. I could possibly provide a tweak attribute that could counter rotate it, for just those situations.

Leffler
12-08-2008, 05:12 PM
Well it doesn't use any constraints except the poleVector constraint.

I quickly setup what you were describing; directly connecting the .ty .tz .ry. and the knee flips. It follows the up and down movement of the knee, as well as the rotation, but the PV doesn't stay in front of the knee, so if I raise the foot high enough it flips. If you go into the side view, so that you are looking at the leg setup in profile, then try to move the leg around the hips in circle and it flips.

Maybe i'm not setting it up correctly... :)

Hey again

Yeah, the system with just direct connection is not a no-flip system, thatīs not what I meant. And I found some pretty wacky flips with it now if I transfer the foot up close the upleg-joint and to the side. Your system is alot more stable there

I hope you didnīt take it as critique, I just questioned the need for such advanced system because this one had worked for me all the time. Maybe Iīm not doing crazy enough animations then ;-)

Have you tried this system on a leg where the joints have to be drawn non-straight-down? If you understand what I mean .... like on a character that is standing at bindpose with legs spread apart

//Otto.

mberglund
12-08-2008, 05:35 PM
Hey again

Yeah, the system with just direct connection is not a no-flip system, thatīs not what I meant. And I found some pretty wacky flips with it now if I transfer the foot up close the upleg-joint and to the side. Your system is alot more stable there

I hope you didnīt take it as critique, I just questioned the need for such advanced system because this one had worked for me all the time. Maybe Iīm not doing crazy enough animations then ;-)

Have you tried this system on a leg where the joints have to be drawn non-straight-down? If you understand what I mean .... like on a character that is standing at bindpose with legs spread apart

//Otto.


Critique is a good thing, and what i wanted from posting this. Its hard to see how well everything works if nobody uses the rig. So I welcome ways to make it better, faster, and easier.

I got confused with the direct connect description :). I thought it was a no flip method. It works well for what its suppose to do.

No flip knees really comes in handy when you are animating body flips or jumps, like free running stuff. But for walk cycles and such its probably not that necessary.

Thanks for your post. It spawned a good conversation about why a no-flip system exists and when to use them or not.

CGTalk Moderation
12-08-2008, 05:35 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.