Adjust correct joint chain to fully rigged model


#1

Hi,
I have rigged a model to the point where it has controls handles driven keys etc but i want to try this with a different joint orientation.since the orientation is not easy to fix in the same joints of the model i duplicated the joint chain(only the joints no effectors constraints or anything else) and used the orientation i want to test.
My problem is how do i adjust the controls handles etc on the new joint chain so that in the end the old joint chain won’t have any connection of the sort and can be deleted,leaving the model fully rigged and with the new orientation?

thx


#2

Hi,

I’m still new to rigging so I may have made some mistakes in this.

Try redrawing the handles from scratch on the new orientation chain.

If there aren’t that many set driven keys maybe remaking them by hand may work. If that doesn’t work it may be a good idea to rewrite them using expressions which makes transferring it to new chain easier because of search and replace. Otherwise, automation may be helpful, here are a couple of general ideas for automating the set driven keys.

Given a control like (leg.twist) try to figure out where the animation curves for leg.twist are going to, and what the frames and values are for the set driven key. (ex from leg.twist figure out joint3.rotateX and joint2.rotateX had sdk values on leg.twist = 0 with rotation of 45 degrees) From this data try to automate making set driven key on the new orientation chain using that data.

Also other corrections may be needed like because axis changes might need to tell automation to use a different axis or because axis changes may need to tell automation to use opposite direction.

data may look like:

  1. object name (ex: locator1, joint1, ikHandle1 etc.)
  2. attribute name (ex: rotateX, translateX, etc.)
  3. frames (ex: 10,0,-10)
  4. values (ex: -5.2,0,5.2)

some of the corrections may look like:
jointNew sdk value for rotateZ = jointOld sdk value for rotateX
jointNew sdk value for rotateZ = -1 * (jointNew sdk value for rotateZ)
etc.

Hope this was helpul.

Regards,
Nate


#3

Thx for the reply but I’ve already done everything from scratch…took two days,i was waiting for a quick reply but i don’t have a lot of time so…

It could be a possible solution if I knew how to handle expressions :P.

Isn’t it frustrating when you are a newbie and don’t know how to take precautions for things that may well cause problems and come to bite you in the ass?


#4

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.