Easily Rig Corrective Shapes for Joints in After Effects

Are you sick and tired of designing characters with circular joints so the it will look good when animated in After Effects? Be bound by the constraints of the geometry to more. Freelance Animator and Motion Graphics Artist James Hazael offers a quick tutorial showing you how you can create corrective shapes for rigging in After Effects.

Corrective shapes are really important for animators. You don’t want things like volume loss, or revealing to the layers below to happen, especially when animating characters. This is why corrective shapes becomes important. In its simplest form, animating characters in Ae relies on separate parts defined by where the motion will be – the character’s joints. Making all the parts rounded will help with rotations, but might not for design.

This is why James uses the magic of After Effects expressions to create automatically corrective shapes. James calls it “Good Joints”. It’s pretty slick and uses modified expressions from Dan Ebberts and DUIK’s connector.

The Expression used in the tutorial is:

a = thisComp.layer(“Null_A”).toWorld([0,0,0]);

b = thisComp.layer(“Null_B”).toWorld([0,0,0]);

c = thisComp.layer(“Null_C”).toWorld([0,0,0]);

v1 = normalize(a-b);

v2 = normalize(c-b);

angle = radiansToDegrees(Math.acos(dot(v1,v2)));

if (cross(v1,v2)[2] < 0) angle = 360 – angle;

Expression by Dan Ebberts (forums.creativecow.net/thread/227/23341)


var ctrlValue = Control value…;

var ctrlMin = 0;

var ctrlMax = 100;

if (numKeys >= 2)


var t = 0;

var beginTime = key(1).time;

var endTime = key(numKeys).time;

if (ctrlMin > ctrlMax)


t = linear(ctrlValue, ctrlMin, ctrlMax, endTime, beginTime);




t = linear(ctrlValue, ctrlMin, ctrlMax, beginTime, endTime);




else value;

DUIK Connector (rainboxprod.coop/en/tools/#ae)