WarKirby opened this issue on Oct 14, 2007 · 7 posts
WarKirby posted Sun, 14 October 2007 at 2:00 PM
I have my figure in a crouching pose, which utilises a pitch forward of the hip joint. I'm trying to make him face a different direction now, but when I try to turn him to the side, he rotates on a local axis, and ends up tilted at a strange angle.
with frustrating effort, I can eventually manipulate him to the correct heading, but it feels needlessly hard and unintuitive. Is there any way to rotate a figure, or individual joints, on a world relative axis, rather than relative to the figure ?
SamTherapy posted Sun, 14 October 2007 at 2:04 PM
You should be able to rotate "Body" without the figure going all over the place. Failing that, you can either parent the figure to a box or other primitive and rotate that, or use the Direct Manipulation Tool. AFAIK, that's only available in P6 up.
Coppula eam se non posit acceptera jocularum.
Willber posted Sun, 14 October 2007 at 3:04 PM
Use IK chains on feet to "plant" the feet on the ground then rotate the hip, move one foot, rotate somemore etc....
WarKirby posted Mon, 15 October 2007 at 4:06 AM
Quote - Use IK chains on feet to "plant" the feet on the ground then rotate the hip, move one foot, rotate somemore etc....
That's.. not any easier at all. And it would mess up the pose...
lesbentley posted Mon, 15 October 2007 at 10:03 AM
It's like Sam said, but I'd like to flesh it out a bit.
As a universal fix that should work in any situation, you can load a primitive, place it where you want the axis of rotation to be, hide it, parent the figure to it (from the menu bar; Figure > Set Figure Parent), then rotate the primitive.
The other way is to impilment the rotation in the BODY, but this requires a particular method of working. Here is what I do. When I translate the figure in X or Z I always translate the BODY, not the hip. When I translate the figure in Y I use the hip. When I want to spin the whole figure around a vertical axis I use the BODY's yRotate, for any other rotations I use rotations of the hip.
When you use this method you will always be able to spin the figure around the vertical axis of the BODY (world up). If you were to translate the figure in X and Z by translating the hip, when you came to yRotate the BODY the figure would orbit rather than spin. I know this sounds very complicated, and I'm probably not explaining it very well, but with practice it becomes second nature.
One problem is that the BODY actor is invisible, and this makes it hard to visualise what is happening. As an exercise, load a Poser Box primitive, load another Box, place it on top of the first and parent it to the box below. You can think of box_1 as the BODY and box_2 as the hip (that has been y translated 0.100 Poser Units). Experiment with diffrent ways of translating and rotating the "BODY" and "hip" substitutes.
The most important point to note is that the hip can be moved away from the BODY, but when the BODY moves the hip always follows. Also note that poser does not save pose data for the body when you save a pose.
WarKirby posted Mon, 15 October 2007 at 5:59 PM
Does indeed sound complex. I'll experiment with it.
kuroyume0161 posted Mon, 15 October 2007 at 7:05 PM
I vote for parenting to a primitive (scale to 0 or make invisible). This has better assurances - no problems with BODY and pose saves and no problem with the possibility that the BODY orientation is nonzero (id est: off axis with the world system). Can't guarantee that even on your grandma's apple pie. :)
C makes it easy to shoot yourself in the
foot. C++ makes it harder, but when you do, you blow your whole leg
off.
-- Bjarne
Stroustrup
Contact Me | Kuroyume's DevelopmentZone