PDA

View Full Version : another autoRig question


Maximus_5610
02-07-2007, 12:09 AM
Hey people,

I'm currently working on an autoRig mel script for my reel and i've run into some trouble combining stretchy joints and an IK/FK switch.

I'll use the arm as an example. I have 3 seperate arm chains, one main chain that will be skinned which is constrained to an IK chain and an FK chain so i can blend between the two. (basic stuff). I also have node-based stretchy joints in the IK chain which effects the scaleX of each joint.

What i have tried doing is scaleConstrain the main joint chain to both the IK and FK chain. So if stretch is enabled, when i blend between the two modes, the joints will match scale. However the joints scale matches fine when set to FK mode, but when i move to IK mode, I'm getting some sort of double-scaling (well, slightly increased X scaling) on the main joint chain and the values do not match.

FK Chain - S>>>E>>>W>>H

IK Chain - S>>>>>>E>>>>>>W>>>>H (stetched)

Main Chain - S>>>>>>>E>>>>>>>>W>>>>>>H (huh?)

When the IK/FK Switch attribute is set to IK the Main chain grows longer than the stretchy IK chain???

Dont know if any of this is making sense, but any help would be appreciated!!

Thanks !!

meljunky
02-07-2007, 07:59 PM
I created a ikSwitching system that uses scale constraints to switch between the ik and fk systems.

The control arm control is from 0 - 10 the output is driving two sdks:
A) ikAnimCurve 1-0

B) fkAnimCurve 0-1


The output of the two animCurves is drving the weights of the scale constriant W0 and W1


if the control arm is at 0, then the bound arm follows the ikChain,
when the control is at 10, the bound arm follows the fkChain, and
any where between 0-10, it will scaled accordingly.


I only used the scaleConstraint to effect only translateX.

Hope that helps,
-Brian
www.meljunky.com (http://www.meljunky.com)

CGTalk Moderation
02-07-2007, 07:59 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.