Rigging a puppet in After Effects
This character was provided to me by Lara Popovic from Creative Connection and she enquired as to how I would animate it. Using puppet pins was the thing that jumped to mind.
I used a couple of resources to learn and apply the process of rigging - a page from ae tuts+ which has a complete set of tutorials by a dude called Daniel Gies, and this great free plug-in - DUIK which creates Inverse Kinematic movement in just a few clicks once you have the pins set up.
Rigging a character with IK allows for its movement to be key framed by animating just a few controllers. It means that the knees and elbows bend automatically as a result of moving other parts of the body. Once rigged in this way, animating is a much simpler process then it otherwise would be.
This character was provided to me by Lara Popovic from Creative Connection and she enquired as to how I would animate it. Using puppet pins was the thing that jumped to mind.
I used a couple of resources to learn and apply the process of rigging - a page from ae tuts+ which has a complete set of tutorials by a dude called Daniel Gies, and this great free plug-in - DUIK which creates Inverse Kinematic movement in just a few clicks once you have the pins set up.
Rigging a character with IK allows for its movement to be key framed by animating just a few controllers. It means that the knees and elbows bend automatically as a result of moving other parts of the body. Once rigged in this way, animating is a much simpler process then it otherwise would be.
Expressions utilised (mainly for my own reference)
The expression used to connect puppet pins to their respective nulls:
n=thisComp.layer("layer name"); nullpos=n.toComp(n.anchorPoint); fromComp(nullpos);
n=thisComp.layer("layer name"); nullpos=n.toComp(n.anchorPoint); fromComp(nullpos);
This makes it easier to control as nulls are directly accessible and also are not just limited to transformation - i.e. they can be rotated as well.
If using the rotation movement of one null to drive the Y transformation of another null (both attached to puppet pins); the following expression could be used in the affected nulls position:
PosX=transform.position[0]; PosY=transform.position[1]+thisComp.layer("layer name").transform.rotation;[PosX,PosY]
I used this to make elements like the sides of the shirt move up as the legs are rotated.
PosX=transform.position[0]; PosY=transform.position[1]+thisComp.layer("layer name").transform.rotation;[PosX,PosY]
I used this to make elements like the sides of the shirt move up as the legs are rotated.
Incidentally, I am keen to get my head around JavaScript - and I have started to go through this page found on Motion Script.com - written by Dan Ebberts - this is a fantastic resource for learning expressions and scripting.
Mood board
I created this mood board to serve as visual reference for the animation I'm currently working on with Creative Connection. It is themed on community activism. The images are from several sources - Banksy, Modern Toss, The Mighty Boosh and a book called Traveller Daze.
visual attributes - earthy colours / graffity / stencils / DIY style (torn newspaper etc.) / simple + effective.
I created this mood board to serve as visual reference for the animation I'm currently working on with Creative Connection. It is themed on community activism. The images are from several sources - Banksy, Modern Toss, The Mighty Boosh and a book called Traveller Daze.
visual attributes - earthy colours / graffity / stencils / DIY style (torn newspaper etc.) / simple + effective.
0 comments:
Post a Comment