ADOBE AFTER EFFECTS: Forum Expressions Tutorials Creative Cloud

Puppet Pin to Puppet Pin Parenting

COW Forums : Adobe After Effects Expressions

<< PREVIOUS   •   FAQ   •   VIEW ALL   •   PRINT   •   NEXT >>
Drew Shields
Puppet Pin to Puppet Pin Parenting
on Mar 28, 2018 at 3:16:18 pm

Hello all!

I'm trying to make one puppet pin follow the movement of another.

Normally if I was doing this with objects I would just parent one to the other, but when I alt+click the position stopwatch by the puppet pin and pickwhip it to the position of another puppet pin the parented pin snaps to the location of the new pin.

I'd like the parented pin to behave like a parented object, responding to the movement of its parent while maintaining its original position relative to it's parent.

Any help is appreciated,

Drew


Return to posts index

Dan Ebberts
Re: Puppet Pin to Puppet Pin Parenting
on Mar 28, 2018 at 4:58:22 pm

You need a reference point. If you're keyframing the parent pin, you can probably use its position at time 0 as the reference:

parentPin = effect("Puppet").arap.mesh("Mesh 1").deform("Puppet Pin 1").position;
delta = parentPin.valueAtTime(0) - valueAtTime(0);
parentPin - delta


Dan



Return to posts index

Steve Bentley
Re: Puppet Pin to Puppet Pin Parenting
on Mar 28, 2018 at 7:07:13 pm

Have you seen this?
https://rainboxprod.coop/en/tools/duik/
If you are working with puppet tools this free script/interface makes it a dream.
It's doing exactly what Dan is suggesting but looking after all the under the hood expressions for you. You could code it yourself with expressions but this fine gentleman has done it for you.
And you get a really good IK that just makes puppeting easy - and gives you nulls to stand in for your puppet points that you CAN link with just the parent tool.
As for learning curve, by the time you watch the three tutorials you will be up and running.

It feels like cheating!



Return to posts index


Drew Shields
Re: Puppet Pin to Puppet Pin Parenting
on Mar 29, 2018 at 3:26:13 pm

Thanks everybody!

Dan, your information was especially helpful. I modified the expression slightly to reference another layer in the comp.

I'm using this for facial motion capture, where one set of pins/points effects the movement of another. The tutorials I've seen online so far require the two sets of facial tracking points to be exactly on top of one another. This line of code will allow me to have a normal human face effect a face with cartoonish proportions!

Take care,

Drew

parentPin = thisComp.layer("Shape Layer 2").effect("Puppet").arap.mesh("Mesh 1").deform("Puppet Pin 1").position;
delta = parentPin.valueAtTime(0) - valueAtTime(0);
parentPin - delta


Return to posts index

<< PREVIOUS   •   VIEW ALL   •   PRINT   •   NEXT >>
© 2018 CreativeCOW.net All Rights Reserved
[TOP]