ADOBE AFTER EFFECTS: Forum Expressions Tutorials Creative Cloud

Managing Character Animation in After Effects

COW Forums : Adobe After Effects

<< PREVIOUS   •   FAQ   •   VIEW ALL   •   PRINT   •   NEXT >>
Pratik Dhamapurkar
Managing Character Animation in After Effects
on May 14, 2018 at 3:27:22 am

Hi

Summary:
I want to create a character animation preset in a sequence and repeatedly use those animations in my main timeline using Time Remap. However, the mouth animation cannot be in the character animation timeline as it will depend on the dialogue.

This is what I want my timeline to look like:


More details:
I have created a character animation preset (Animation_Sequence) with arms, legs, head, face etc on separate layers. On my main timeline (Main_Sequence), I am using Time Remapping to recall any animation that I want (eg. Jump Left).

This all works fine and dandy. The problem is that I am using Character Animator to create a lip sync png sequence. How do I use the same Time Remap but still be able to use the lip sync sequence? I need the mouth layer to move in sync with the face animation layer.

The mouth layer cannot be inside Animation_Sequence as the mouth will not be the same every time I use a (Jump_Left). If I keep the mouth layer on Main_Sequence, I am not able to parent it to the head layer inside of Animation_Sequence. Also, the mouth needs to get it's transformation values from Face layer which is inside Animation_Sequence.

I tried parenting the mouth layer in Main_Sequence to the face layer in the Animation_Sequence. It does not seem to work for some reasons.

Anybody ever have had a problem like this? I am open to a completely different approach as well!

Regards
Pratik


Return to posts index

Steve Bentley
Re: Managing Character Animation in After Effects
on May 14, 2018 at 4:38:26 am

Sure, precomp your body animation (but not the time remap) and then you can put a null in the character chain inside the precomp that has the time remapping on it. Retime the precomp layer in the outer comp.
Inside the precomp, put the anchor point of a null where the mouth belongs and make it part of your bone chain on warping system so that it tracks along with the head.
Then in the outer comp link your animated mouth element to the inner null with toWorld positioning expressions. This way where ever the inner comp animation moves the outer one tracks to the same position, regardless of the time warp on the body animation. You get to run your body back and forth from the outer comp and animate the mouth in the outer comp, but the two will be positionally joined.
The expression goes like this: (and it goes on the position attribute of the mouth layer in the outer comp) - everything after // is a remark.

preComp=thisComp.layer("preComp"); // preComp is the precomped animated bodylayer. If you have named it something else then just replace the "preComp" - only the one in quotes - with the name of that layer or use the pickwhip
object=comp("preComp").layer("Object1"); //"Object1" is the name of the null that represents the mouth in the precomped body animation. Just replace "preComp" with the name of your precomped animated layer and "Object1" with the name of your null layer in the precomp, or use the pickwhip.
p1=object.toComp(object.anchorPoint); // all of these things have been defined in the code so far. So p1 will hold the position of the anchor point of the null that is standing in for the mouth in the precomp
preComp.toWorld[p1[0],p1[1],p1[2]]; // this line calculates the position of p1 but where it would be in the outer comp for x,y and z - you can drop the ,p1[2] if you don't need the Z.
// this is the last line of the code so whatever is calculated here gets put into the attribute the code is on.



Return to posts index

Pratik Dhamapurkar
Re: Managing Character Animation in After Effects
on May 14, 2018 at 5:45:33 am

Hey Steve

Thanks for the prompt reply ! I will definitely try this!


Return to posts index


Cassius Marques
Re: Managing Character Animation in After Effects
on May 14, 2018 at 1:30:35 pm

I'm not sure Steve's suggestion will work.

Why? Because if you don't use the "valueAtTime" method, any linking via expressions will disregard your time remmaping. And will "parent" wrongly.

You should try his suggestions nonetheless. Maybe I'm wrong...

Cassius Marques
http://www.zapfilmes.com


Return to posts index

Steve Bentley
Re: Managing Character Animation in After Effects
on May 14, 2018 at 4:19:42 pm

Cassius is correct. I had used this trick with a precomp that had some time warps on it (in the pre comp) and it works great. But with the time warp (or time remap) in the outer comp you would have to use valueAtTime method.
You could get that value by looking at the time remap value in the outer comp- this will be the frame number the inner precomp is on. Remember to convert frames to time as the valueAtTime method uses seconds not frames.



Return to posts index

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