LK_AnimParent - Animate layer parent

Moho allows users to write new tools and plugins. Discuss scripting ideas and problems here.

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
User avatar
Lukas
Posts: 1297
Joined: Fri Apr 09, 2010 9:00 am
Location: Netherlands
Contact:

LK_AnimParent - Animate layer parent

Post by Lukas »

Hey everyone,

This tool allows you to put layers in and out of groups during the animation. Useful for getting character rigs into cars or for putting props into characters hands without the need for duplicate rigs.

Recently we were animating a shot in which a character jump from a floating log onto a boat (youtube link with timestamp) and it was so frustrating to manage the shot that I dived into a way to allow animation of layer-parenting. (Inspired A.Evseeva's script ae_place_layer_in_group, it also uses some of her utilities)

So now we were able to simply animate the rig outside of the log group when its feet get into the air and into the boat group when it lands and it made everything so much easier. You don't need duplicate rigs or layercomps/compositing, and you can simply animate either the log or boat and the characters on it will stay on it (or not, depending on the keys).

Let's say you've got a rig that you want to get into a car. I'd personally would create a car rig with an empty 'driverseat' folder bellow the 'front-art' and above the 'behind-art'. You can then use the tool to put the character inside the 'driverseat' group and it will be inside the car from that frame on. The tool uses the layermarker channel, so you can drag that key if you want to adjust timing. Make sure all your layers have unique names, because the marker's textvalue is being used to put the layer inside that group.
You could also use it on a prop one character is handing over to another character, just make sure you have a correctly bound empty group inside the rigs into which you can put the prop.

It also mods the 'show path' function to make it work with animated parenting. A change of parent is shown by a diamond instead of a square. And some minor improvements: I've tweaked it a bit, it now is camera independant (I will make this optionable later, but in my opinion by default it should ignore the camera) and shows a slightly different color for past/future frames. You can also use play in/play out to only have show a certain framerange instead of the entire document, which can be troublesome on long shots.

Here's the first version of the tool: It only works on layers don't already have a layerscript embedded (because it will add one). And it works best when layer origin is set to 0,0. (I hope to fix this, any help is appreciated!) When parents are squash/stretched it has some issues setting the scale keys so there's an option to favor either x or y scale.

If you're animating multiple layers with this tool, make sure you don't switch parents at the exact same frame, because you'll have trouble rendering. Just have the other layers move into a group 1 frame later and you should be fine.

I fear animating layers like this is might be troublesome at some point because Moho is not built this way, but I hope we'll be able catch all bugs/crashes.

Please let me know how this is working for you! And if you've got some clues on fixing certain things, please don't hesitate to look into it, because I'm in over my head with these matrixes.
User avatar
Lukas
Posts: 1297
Joined: Fri Apr 09, 2010 9:00 am
Location: Netherlands
Contact:

Re: LK_AnimParent - Animate layer parent

Post by Lukas »

Alexandra Evseeva wrote a script as a quick fix to reset a layers origin to [0, 0] which should help in some cases when position is keyed wrong: ae_reset_layer_origin

Also, I've updated the .zip. The layerscript no longer runs at frame 0, which caused a crash in certain cases and I've included a sample moho file. (The beautiful one from the screencapture below)

Here's a screencapture of how the tool works:
User avatar
Víctor Paredes
Site Admin
Posts: 5665
Joined: Wed Jan 26, 2005 12:18 am
Location: Barcelona/Chile
Contact:

Re: LK_AnimParent - Animate layer parent

Post by Víctor Paredes »

:o
Image Image Image Image
Moho Product Manager

www.mohoanimation.com
Rigged animation supervisor in My father's dragon - Lead Moho artist in Wolfwalkers - Cartoon Saloon - My personal Youtube Channel
User avatar
A.Evseeva
Posts: 61
Joined: Wed Apr 08, 2015 8:43 am
Contact:

Re: LK_AnimParent - Animate layer parent

Post by A.Evseeva »

http://mohoscripts.com/script/ae_place_layer_in_group
-- fixed for layers with offsetted origin (added some code at the end)
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: LK_AnimParent - Animate layer parent

Post by Greenlaw »

Wow, Lukas, this sounds incredibly useful! I haven't watched the video yet but from the description, it sounds like your script helps avoid making references of entire characters to 'switch' to versions inside another group? Actually, the script sounds even more flexible than that. I want check it out as soon as I can. (Watching the video a little later this morning and then downloading.)

Thanks to you and A.Evseeva for sharing your work! Very cool stuff guys!
User avatar
SimplSam
Posts: 1048
Joined: Thu Mar 13, 2014 5:09 pm
Location: London, UK
Contact:

Re: LK_AnimParent - Animate layer parent

Post by SimplSam »

Very interesting. It brings forward the notion of assets and the ability to parent one asset to another.

My greatest concern however was the number of points used on the umbrella! :shock:

Image
Moho 14.1 » Win 11 Pro 64GB » NVIDIA GTX 1080ti 11GB
Moho 14.1 » Mac mini 2012 8GB » macOS 10.15 Catalina
Tube: SimplSam


Sam
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: LK_AnimParent - Animate layer parent

Post by Greenlaw »

Finally made time to watch the video. DUDE! That's amazing! :o
User avatar
Lukas
Posts: 1297
Joined: Fri Apr 09, 2010 9:00 am
Location: Netherlands
Contact:

Re: LK_AnimParent - Animate layer parent

Post by Lukas »

A.Evseeva wrote: Tue Sep 14, 2021 1:23 pmhttp://mohoscripts.com/script/ae_place_layer_in_group
-- fixed for layers with offsetted origin (added some code at the end)
Thanks! I'll look into it. 🙏
Greenlaw wrote: Tue Sep 14, 2021 8:36 pmDUDE! That's amazing! :o
Yeah, it could be a real gamechanger if it holds up! In its current state I would advise to use it with care. I haven't been able to test or use it thoroughly and suspect trouble ahead, but please give it a shot. If it all turns sour it's a great showcase for a feature request at least! 😇
SimplSam wrote: Tue Sep 14, 2021 4:07 pmMy greatest concern however was the number of points used on the umbrella! :shock:
Hehe, yeah it's a clumsy file, but those points are the least of my troubles 😉
Post Reply