Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Recently I've been playing around with Inverse Kinematics and have been pretty impressed with the results. Naturally I want to take it further, but have no clue where to start. In particular, I would like to introduce joint limits (ie for a prismatic joint how far it can move, hinge joint what angles it has to be between, etc etc).

Currently I understand how to produce the Jacobian matrix for the various joint types. I am particularly looking for literature (preferably free, and preferably easy to understand) on various ways to implement joint limits. Also I would like to find out different ideas on how inverse kinematics can be used.

share|improve this question

This is probably not the best answer I can give now, but consider Cyclic Coordinate Descent (CCD) which works for non-invertible Jacobian matrices. A short video here.

The best source covering CCD is Chris Wellman's own MSc thesis. For a minimal/short review, you can read this source that mentions most methods out there.

A more mathsy paper (for the researcher in you :D) is this one

For the hardcore researcher:

This seems like a hybrid method, although they're just slides with mostly familiar notions: One more worth reading:

Since you said you'd rather have free sources, I'm not gonna mention the few books that one can buy from Amazon that tackle this problem. Personally, I am satisfied with CCD. For ultra precision, I prefer the Inverse Jacobian (where I know the system yields an invertible matrix thanks to the 6 DOF of a robotic rig).

How can IK can be used? Mostly when you want to animate a character by supplying only a position and orientation of an end effector of a certain limb. (youtube for examples). If you want to start a career in robotics, IK is a must if you're dealing with articulated robots. In the world of gaming, it's a must when you employ motion detection of human gestures via a camera (e.g. - my simplistic example of a wiimote interface and a ccd virtual robotic arm).

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.