1. This paper presents a simple, efficient algorithm for removing footskate.

2. Footskate occurs when the character¡¯s feet move when they ought to remain planted.

3. The method presented in this paper exactly satisfies footplant constraints while introducing only smooth changes, and it requires no nonlinear optimizations. Certain common artifacts are avoided by violating the standard rigidity assumptions and allowing small changes in the lengths of the character's legs.

4. Key points
1). Efficiency, requiring no nonlinear optimizations and performs a fixed amount of calculation on every frame. 
2). Robust, being stable for near-singular joint configurations and degrading smoothly as the distance from a footplant constraint grows.
3). The adjustment applied to a given frame depends only on a fixed neighborhood of surrounding frames. This makes it useful for online
applications that can accept a small time delay ( 1/2 ¨C1 second).

5. Algorithm outline
1). Determine a position for each plant constraint.
2). For each constrained frame, compute global positions and orientations for the ankles that satisfy the constraint positions found in the previous step.
3). Calculate the root position so the ankle positions found in the previous step can be reached by extending the legs.
4). For each constrained ankle, adjust the leg so the ankle ends up in the configuration found in step 2, using the root position found in step 3.
5). Maintain smoothness in surrounding frames by smoothly dissipating the adjustments.