3d forums home Resources for 3d artists

3ds Max: IK Chains Bending Problems

Posted: June 25, 2007
Gloski
Hello, I've just started exploring the wonders that are bones so bare with me if I'm a dumbass.


www.btinternet.com/~hull.family/IK.bmp


I set up a leg and foot with HI Ik solvers and points and stuff, the foot rotates fine and I have a dummy that lifts the foot whilst bending the leg, the screen shots show the dummy being pulled upwards and the leg bending accordingly.


But when I'm trying to pose my figure I want his knees to bend at a different angle to what the solver calculates, I demonstrated this in the last picture, so basically can I do this?


I tried fiddling with the constraints but this didn't help, I'm sure I missed something fundamental but I can't seem to find the answer in any tutorials. I had a look at one of the example files that came with MAX 4 and this had the same problems.


Thanks for your time!
Posted: June 26, 2007
Imho
Looks like the best way to accomplish what you want is to place a rotational limit on one of the joints in your ik leg. Try crouching down like the leg in your pic. You'll notice your ankle doesn't really rotate very far in the forward/up direction - certainly not as far as the one on your rig does.


So here's what you do. Select the ankle bone (the one that extends from the ankle joint to the ball of the foot), and hop over to the heirarchy command panel. Click on the IK button (the center of the three buttons at the top of the first rollout), and find your way down to the rotational joint controls. You'll see some checkboxes and stuff for each axis. You want to check the use limit checkbox for the Z axis, but it's best to set up the limits first, which you can do interactively by clicking on the scrollboxes for the to/from fields and dragging up/down. Just set them to something that roughly resembles the natural limits of the ankle, and check the use limits box. You're in business!


You can do this for other axes, and other joints in your rig, but I would only recommend using these settings when you don't get good default motion in your skeleton. Using limits adds calculation time to the IK solver, and if you have them set for all the joints in your skeleton it can become a real interactivity drag.


Best of luck to you!


[BTW] If things don't work exactly as I've described, it could be because I don't have MAX open in front of me now; I'm going solely on memory. Limits also depend on whether or not a bone is part of an IK chain, so if your ankle is not part of one of your chains you will need a different approach.
Posted: June 28, 2007
Gloski
Thanks that helped muchly, I'd tried the rotational limits but it kind of confused me but now I've got to grips with it cheers!
Posted: June 29, 2007
dfk
Try this:


Create a point helper right in front of the knee. Not too close just floating a little bit out. Then select the blue IK Chain for the leg. If you set up your rig the common way, the IK chain would be at the ankle.


With the blue IK Chain selected, go to the motion panel. Under IK Solver Properties (the third one down) where it says "Pick Target:" there is a button labled "None". Click it. Then select the green Point helper that you created in the viewport.


Now when ever you move the green Point helper around, the knee will always point at it. You can do this for all the joints, even for elbows.


Also, once you make these things, click on the manipulate button (next to Scale on the toolbar). With the manipulate button on, where evere you set up the swivel angles, you will have green "paddels" sticking out of the joints. Check it out.


Let me know if it works. Or let me know if you want me to explain it better.


-Alex
Posted: July 09, 2007
Imho
Using a point as a target for the solver plane angle (as suggested by Triadis) is certainly recommended. It helps you control where the knee is pointing, but only from side to side. It is not completely accurate to say that the knee will always point at the target, which can be shown by simply moving the target along the world z axis -- you'll notice that there is no effect on the up/down orientation of the knee.


Definitely follow Triadis' advice, though, it's a real frustration saver at animation-time.


Ciao!