Help me set up my person's spine

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

THREAD CLOSED
 
Thread Tools Search this Thread Display Modes
Old 11 November 2012   #1
Help me set up my person's spine

For a class project we are to animate a famous painting. I'm doing [Nighthawks](http://en.wikipedia.org/wiki/Nighthawks). I'm using Autodesk Maya 2013, student version.

I've modeled everything and rigged up my characters, using [this series of video tutorials](http://www.youtube.com/playlist?lis...EC&feature=plcp). Everything works fine apart from the fact that I can't rotate my character around anymore. It seems that the spine is rotating locally only, and the shoulders don't rotate with the "main controller". I'd post a picture, but imgur is down right now. I'll update this later tonight when the traffic goes back to normal with a picture of what is happening.

In the tutorial, his process for rigging the spine and hip is this:

* set up Spline IK from the top spine joint to the hip joint.

* move the Spine IK nurbs control curve from 0, 0, 0, to the location of the hip using a snap to point and 'control pivot only'

* sets up a hip controller with a point constraint on the Spline IK *CURVE*, and an orient constraint on the X and Z axes, but not Y

* uses connection editor to set a connection from the "rotate Y" on the hip controller to the "Roll" attribute on the Spine IK (not curve, just IK)

* creates a chest controller and sets up a connection from the rotate Y to the "twist" attribute on the Spine IK. There are no point constraints or orient constraints on the chest controller

* parents the foot and hip controllers to a "Main" controller (an arrow-shaped curve on the ground), then parents the chest to the hip, then parents the hand and head controllers to the chest.

He makes it out in the tutorial to make it like the main controller will move and rotate the entire body, but when I rotate the main controller, what happens is that all the controllers and the joints they control rotate correctly except for the entire spine, and hips, and shoulders. I'll post a picture later when i can.

Does anybody have a better way for rigging humanoid spines? I've tried to set up orient constraints on the hips, but I think the problem is in the Spline IK because rotating the Spline IK Curve in the Y axis doesn't do much of anything.


EDIT! I know what is wrong, but not how to fix it


So the rotation of the hip and spine_04 (connects to neck and collarbones) joints was dependent on the "twist" and "roll" attributes of the Spline IK. These attributes were controlled by the local Y axis rotation of the hip and chest controller.

To attempt to rotate the model I was trying to rotate the main ground controller, which was the parent of both the hip and the chest controllers. This didn't work because though they appear to rotate in the workspace, those controllers' own local Y rotation attributes remained zero. Their parent rotated, but they did not.

Does anybody know how to fix this? I'd like to keep them as parents of the Main controller because it is super convenient to be able to control the general position and orientation of whole model from one controller.

I tried to connect the rotate_Y attribute of the main controller to the rotate_Y attribute of the hip controller, but this caused the hip controller to rotate twice the desired distance.

What I'm looking for is some way for the main controller's Y rotation to affect the local Y rotation of the hip and chest controllers, but to keep it a parent of those controllers, if that makes sense. I don't know my way around the scary bits of Maya well enough to set up this attribute, I only learned parenting, connections, and custom attributes on this project, so I'm quite the noob.

thanks again. i really want to get back on track with this project and though this has been an interesting problem, i'm eager to get it fixed.

ANOTHER EDIT! I have fixed the problem. The solution was to change the connection of the roll attribute from the hip controller to the main controller. I can still control the rotation of the upper spine from the twist attribute connected to the chest controller, but now when I rotate the main controller the whole mesh rotates as it should. Thanks to reddit user doublespeed for the tip, and i'll be sure to create a thread in WIP to update you guys on the progress.

ONE LAST EDIT!

Not all is quite right yet. Clearly "roll" isn't perfect as when I rotate the model completely around, the legs freak out. Here, you get pictures this time.

This is how it should look:

This is what happens at 90 degree rotation:

This is what happens at 180 degree rotation:


what seems to be happening is the knees remain stuck in the same rotation they were in before. the foot rotates. the hip rotates. the knees remain where they were.

Anybody know how to make this better?

Last edited by DarkSmokePUNCHER : 11 November 2012 at 04:44 AM. Reason: Found problem, but not fix
 
Old 11 November 2012   #2
Are your pole vectors in the master control grp?

Make sure you turn off inherit transforms for the spine curve.


Another method is to use what's called an advanced twist, which can be found under the Spline Ik attributes.

This can create some weird results at high levels of rotation also. I usually just hook up the twist to the main one.


Originally Posted by DarkSmokePUNCHER: For a class project we are to animate a famous painting. I'm doing [Nighthawks](http://en.wikipedia.org/wiki/Nighthawks). I'm using Autodesk Maya 2013, student version.

I've modeled everything and rigged up my characters, using [this series of video tutorials](http://www.youtube.com/playlist?lis...EC&feature=plcp). Everything works fine apart from the fact that I can't rotate my character around anymore. It seems that the spine is rotating locally only, and the shoulders don't rotate with the "main controller". I'd post a picture, but imgur is down right now. I'll update this later tonight when the traffic goes back to normal with a picture of what is happening.

In the tutorial, his process for rigging the spine and hip is this:

* set up Spline IK from the top spine joint to the hip joint.

* move the Spine IK nurbs control curve from 0, 0, 0, to the location of the hip using a snap to point and 'control pivot only'

* sets up a hip controller with a point constraint on the Spline IK *CURVE*, and an orient constraint on the X and Z axes, but not Y

* uses connection editor to set a connection from the "rotate Y" on the hip controller to the "Roll" attribute on the Spine IK (not curve, just IK)

* creates a chest controller and sets up a connection from the rotate Y to the "twist" attribute on the Spine IK. There are no point constraints or orient constraints on the chest controller

* parents the foot and hip controllers to a "Main" controller (an arrow-shaped curve on the ground), then parents the chest to the hip, then parents the hand and head controllers to the chest.

He makes it out in the tutorial to make it like the main controller will move and rotate the entire body, but when I rotate the main controller, what happens is that all the controllers and the joints they control rotate correctly except for the entire spine, and hips, and shoulders. I'll post a picture later when i can.

Does anybody have a better way for rigging humanoid spines? I've tried to set up orient constraints on the hips, but I think the problem is in the Spline IK because rotating the Spline IK Curve in the Y axis doesn't do much of anything.


EDIT! I know what is wrong, but not how to fix it


So the rotation of the hip and spine_04 (connects to neck and collarbones) joints was dependent on the "twist" and "roll" attributes of the Spline IK. These attributes were controlled by the local Y axis rotation of the hip and chest controller.

To attempt to rotate the model I was trying to rotate the main ground controller, which was the parent of both the hip and the chest controllers. This didn't work because though they appear to rotate in the workspace, those controllers' own local Y rotation attributes remained zero. Their parent rotated, but they did not.

Does anybody know how to fix this? I'd like to keep them as parents of the Main controller because it is super convenient to be able to control the general position and orientation of whole model from one controller.

I tried to connect the rotate_Y attribute of the main controller to the rotate_Y attribute of the hip controller, but this caused the hip controller to rotate twice the desired distance.

What I'm looking for is some way for the main controller's Y rotation to affect the local Y rotation of the hip and chest controllers, but to keep it a parent of those controllers, if that makes sense. I don't know my way around the scary bits of Maya well enough to set up this attribute, I only learned parenting, connections, and custom attributes on this project, so I'm quite the noob.

thanks again. i really want to get back on track with this project and though this has been an interesting problem, i'm eager to get it fixed.

ANOTHER EDIT! I have fixed the problem. The solution was to change the connection of the roll attribute from the hip controller to the main controller. I can still control the rotation of the upper spine from the twist attribute connected to the chest controller, but now when I rotate the main controller the whole mesh rotates as it should. Thanks to reddit user doublespeed for the tip, and i'll be sure to create a thread in WIP to update you guys on the progress.

ONE LAST EDIT!

Not all is quite right yet. Clearly "roll" isn't perfect as when I rotate the model completely around, the legs freak out. Here, you get pictures this time.

This is how it should look:

This is what happens at 90 degree rotation:

This is what happens at 180 degree rotation:


what seems to be happening is the knees remain stuck in the same rotation they were in before. the foot rotates. the hip rotates. the knees remain where they were.

Anybody know how to make this better?
 
Old 11 November 2012   #3
Thread automatically closed

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.
__________________
CGTalk Policy/Legalities
Note that as CGTalk Members, you agree to the terms and conditions of using this website.
 
Thread Closed share thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 05:56 AM.


Powered by vBulletin
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.