Depth Sorting for Masking Problem

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
len
Posts: 22
Joined: Thu Jun 22, 2006 10:26 pm

Depth Sorting for Masking Problem

Post by len »

Hi all.
I've spent a good chunk of time searching these forums for a solution to a fairly simple problem I'm having but have had no luck.
I've got a zombie attacking a human and his rear arm needs to go behind the human to indicate the 'hugging' quality I'm after.
So I need to mask the zombies background arm behind the human.
However, using a straight ahead mask is problematic, it seems, since the human is under his own hierarchy for animation and the zombie another one. The masked group for the zombies rear arm would need a duplicate of the human body animating appropriately. This makes re-timing the humans movement later a pain since I'll need to update the mask also, right?
So I thought to use depth sorting to nudge the rear arm just slightly back in z and everything else forward. Seems like it should work, right? Well it just leads to ruin every which way I try it. The layers just don't lay themselves out correctly either in the editor or renders.
One simple test seems to indicate that you can only get z depth sorting to work correctly by having all z transforms at the highest level group of any hierarchy of nested groups. Try it! As soon as the transform is buried even one level down the sorting stops working the way I expect.
So I figured I'd find tons of people using this same technique for 'masking' and lots of solutions to this issue. However, I can't find much of anything.
If anyone has suggestions on a better methodology than what I'm attempting I'd love to hear it. Like an embedded script for duplicating the human cutout and putting that in the deeply nested masked group of the arm? Seems harder than nudging but I'll take anything at this point.
Thanks for any suggestions. I really want to love Anime but I keep getting flumoxed!
User avatar
Rasheed
Posts: 2008
Joined: Tue May 17, 2005 8:30 am
Location: The Netherlands

Post by Rasheed »

A possible solution is to include a copy of the arms in the other group layer, animate the arms in both layers, and switch switch layer visibility of each of the arms at the appropriate time. This would require to do slight modifications of an existing project.

You're right concerning the layer ordering. You can only order layers within a group layer, or group layers among each other, but not order the layer within one layer relative to a layer in another layer.

Another solution, therefore could be to put both victim and zombie into the same group layer (a bone layer, I presume), so you can reorder the layers within that bone layer with their Z coordinates. Although this is the most sensible solution, it would probably require you to completely redo that project file.
len
Posts: 22
Joined: Thu Jun 22, 2006 10:26 pm

Post by len »

Thanks Rasheed. At least I know I'm not going crazy or that my copy of Anime is broken.
User avatar
Mikdog
Posts: 1901
Joined: Tue Jul 05, 2005 3:51 pm
Location: South Africa
Contact:

Post by Mikdog »

This kind of thing's always a mission.

I would take the easy route and make a copy of the arm, and put it nehind both the zombie and the man, so it's totally behind everything. Of course, this means you'll have to move the arm around on its own so it matches the movements of the zombie's body.

OR,

put the zombie's arm in a switch layer, with another layer in there that's just blank. So, when the zombie's arm goes behind the man's body, switch his arm off, then have a copy of the arm on its own behind the zombie and the man in its own switch layer, and just turn it on when you turn the proper zombie's arm off.

This will save you from having to animate the separate arm when it's not doing anything with the man.

If that made sense to you, I'm amazed. It's really quite simple.

Or, as a previous post suggested, have the man and the zombie in the same heirachy so you can move just the arm shape behind the man.

Planning - do a lot of it.
len
Posts: 22
Joined: Thu Jun 22, 2006 10:26 pm

Post by len »

Thanks for the ideas Mikdog. They did make sense (mostly).
I'll probably just be animating a simple mask shape for the few frames where the arm goes behind. But for the future I'll keep your techniques in mind.
Ya know what I'd really like though? (don't posts wander down this road too often).
I'd like a point constraint, ala Maya. You can take any transform and constrain any other object to it. Then offset it, etc. In Maya this works across hierarchies. It seems that most similar features in Anime break down when you exit the current hierarchy. Oh well.
User avatar
Touched
Posts: 504
Joined: Mon Dec 11, 2006 7:33 am
Location: Sunny California
Contact:

Post by Touched »

You could also try Heyvern's master/slave bone control script. You'd make a copy of the elements meant to go "behind" the rest, then make their bones copy the movements of the bones of the master layer in front.
appelgurk
Posts: 12
Joined: Mon Nov 27, 2006 10:09 am
Location: Oslo | Stockholm
Contact:

Post by appelgurk »

I haven't familiarized all that much with the masking capabilities of Moho/ASP. However, I feel the program's strength is in animation rather than compositing, so I leave the latter to decicated compositing programs like After Effects or Shake.

This means that while animating, layers overlap in all the wrong places and things like a hug might look a bit more like an assult. But if you know what you are doing and are able to think ahead, it is really not big problem.

When animation is finished (with approved timing, acting and everything), I (or the compositor) save multiple versions of the project, separating the parts by turning on layer visability. Then I Batch Export those into lossless Quicktime movies with alpha channels and import them into the compositing program.

Sometimes I also animate layers (or remove parts from already animated layers) solely for the purpose of using them as a track mattes.

This might be a little overkill for some, I guess, but it makes a really flexible composite.


/Apl
User avatar
Rasheed
Posts: 2008
Joined: Tue May 17, 2005 8:30 am
Location: The Netherlands

Post by Rasheed »

And really expensive. Both Shake and After Effects cost several hundreds of dollars.
len
Posts: 22
Joined: Thu Jun 22, 2006 10:26 pm

Post by len »

Speaking of expensive options, I was reading a bit about Animo.
Anyone know how much it costs? It's kind of well kept secret on the web it seems. Wonder if it solves any of these issues...
appelgurk
Posts: 12
Joined: Mon Nov 27, 2006 10:09 am
Location: Oslo | Stockholm
Contact:

Post by appelgurk »

I don't have the figures in front of me, but we usually rent Animo licences for the time of a production only.

Shake dropped from $2999 to $499 recently. There are rumours that it is being discontinued.
User avatar
Touched
Posts: 504
Joined: Mon Dec 11, 2006 7:33 am
Location: Sunny California
Contact:

Post by Touched »

I've attended panels that discussed Animo, and while it wasn't made all that clear about how much they cost, Animo was sold in modules, separately priced, so that you could save a little money by not buying portions of the system you didn't need. Each module was in the thousands of dollars, if I recall correctly.
User avatar
slowtiger
Posts: 6081
Joined: Thu Feb 16, 2006 6:53 pm
Location: Berlin, Germany
Contact:

Post by slowtiger »

Animo is quite expensive. Years ago when OS X came, Animo would run on Macs, so I asked the german retailer for a price. One complete package for one machine was 27.000 €.

Last thing I heard (but not from the retailer) was that price dropped to about 5.000 € for one licence, but they also skipped the vector animation module for that. I don't know about the actual configuration, please have a look yourself at Cambridge Animation.

Animo works best in a bigger production with several people working with it on different machines, it is designed to control the whole production workflow.
User avatar
Squeakydave
Posts: 328
Joined: Tue Aug 03, 2004 9:44 pm
Location: UK - London-ish
Contact:

Post by Squeakydave »

A quick and dirt way to do this is to copy the whole figure animation and then putting it on top of the animation the arm is supposed to on top of. Just turn off the visibility of all the elements except the arm.
Post Reply