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

I can't find any good library for animation, the ones that i found are just really old and discontinued, but i have noticed that this library are relatively small, so I'm thinking about coding one on my own: where should I start? What are the basics for this? There is a book about this?

Some further notes about a good file format for animation are also highly appreciated.

share|improve this question

Forward kinematics is just a prerequisite for inverse kinematics, in general.

For forward kinematics you must have some knowledge of transform chains (what a scene-graph means for example). As an example, a good point to start from is the Denavit-Hartenberg convention. For inverse kinematics, study Cyclic Coordinate Descent (CCD), Jacobian Inverse, Jacobian transpose and pseudo-inverse solutions. These concepts and algorithms offer you a decent overview of what the mathematics and partly the physics of this field is all about. The library, programming language or file formats are never the key element if you also want to understand what happens behind the magic.

If you need a quick solution or a component for some application you're working on, then do take a look on some of the libraries provided in the other answer(s) here. If you're into robotics, then OpenRAVE is a monster worth mentioning. Also, there is a Matlab Robotics Toolbox (provided you're into that kind of engineering side of the matter).

All of the concepts yield a truckload of relevant results on your favourite search engine, so sorry for not posting that many links to nice materials.

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.