RyanJuckett.com

Constraint Relaxation IK in 2D Print E-mail
  
Monday, 13 April 2009 00:00
Article Index
Constraint Relaxation IK in 2D
Reaching the Target
Resolving Constraints
Implementing for Higher Dimensions
Local Minima
Writing the Code
All Pages

titleInverse kinematics (IK) solvers often become mathematically intensive or computationally expensive with long kinematic chains or when functioning in higher dimensions. I am going to cover an approach to solving IK that is easy to understand, handles any number of joints, and is easy to implement in any dimension. We will walk through a two dimensional example and I'll present sample code to perform the algorithm.

 

A basic kinematic chain of joints with no rotational constraints can be viewed as a set of points (the joint positions) with distance constraints between pairs (bones with a fixed length). By iteratively stretching the bones towards our target and resolving these distance constraints, we will converge on a solution to the system. This approach to solving the IK problem is very similar to solving constraints in a verlet based physics system (for more information on verlet physics, I recommend reading Advanced Character Physics by Thomas Jakobsen). For a sample implementation of constraint relaxation based IK, you can download the RJ_Demo_IK application.

 

You might also be interested in the following articles on different IK solvers:



Last Updated ( Sunday, 02 May 2010 06:30 )
 

Creative Commons License
RyanJuckett.com site content by Ryan Juckett is licensed under a Creative Commons Attribution 3.0 United States License.