Kinect + AE: A better way to control the puppet’s head

So in my Kinect + After Effects tutorials I offer a couple ways to rig the puppet’s head, but neither one is an ideal solution: the first one leads to occasional face-stretching and the second to increasing the manual animation workload substantially.

But there’s a better way! Put the anchor point in the center of the face, and attach the position keyframe to the Head control point. Then apply the following expression (based on one originally found here) to the rotation parameter:

this_point=thisComp.layer("Spine").effect("Head")("Point");
that_point=thisComp.layer("Spine").effect("Neck")("Point");
delta=sub(this_point, that_point);
angle=Math.atan2(delta[1], delta[0]);
ang = radians_to_degrees(angle);
(ang+90)%360+transform.rotation

Now the head will rotate to match to the angle formed by the head and neck points, but without the weird distortion the Puppet Tool can cause. You can tweak the head’s attach point by shifting the anchor point.

 

This tutorial is now obsolete. Check out the new KinectToPin website for the latest version of the software and how to use it — it’s dramatically easier now.

 

Kinect MoCap Animation in After Effects

Tutorial links: Part 1: Getting Started | Part 2: Motion Capture with KinectToPin | Part 3: Building the Puppet Rigging Template | Part 4: Rigging a Digital Puppet

More info: A better way to control the puppet’s head | FAQ and Installation Guide

Project files: Click here to download the After Effects project (CS5+).

Quick note: the text is just transcripts of the videos, so you can read or watch as you prefer.

 

4 thoughts on “Kinect + AE: A better way to control the puppet’s head”

  1. Awsome! I love that you share all of this stuff. During the last two months I gave brief demos in two college courses on your method of linking KinecToPin to a puppet. In both classes there was quite a positive response to your video tutorials.

Leave a Reply