Inverse Kinematics with Skinning
Implemented on macOS 10.15.4, tested on both macOS and Ubuntu 20.04
link to project description page
Prerequisite:
- Eigen library. This is mainly a header only library, so you don't need to install it.
- ADOL-C library. Please visit the link for installation instructions.
What is this project?
The code as a whole is a complete character animation pipeline. Our job in this project is to implement the missing main functionalities to complete the pipeline. Specifically, for character animation, I implemented forward kinematics (FK), inverse kinematics (IK), and skinning. For IK, two methods are implemented for comparison: damped least squares method and the pseudo-inverse method. Damped least squares produces more stable simulation results, whereas pseudo-inverse method is less stable. However, pseudo-inverse method is more mathematically pleasing compared to damped least squares method. For skinning, Linear Blend Skinning and Dual Quaternion Skinning methods are implemented.