Thoracosaurus neocesariensis

Thoracosaurus neocesariensis

Tuesday, July 20, 2010

Animation Round I: It's Alive! :D

Finally we have some motion to post. Sorry for the delay on this. A lot of obstacles jumped in my way. Mostly weight painting in all its forms. Here's what I had to get through between my last post and this post. Bear with me here...it's a bit long and technical, but you'll appreciate the motion so much more if you get through all of this:

WEIGHT PAINTING: AKA THE BANE OF MY EXISTENCE

 After painting the weights for the bound skin mesh, I then had to paint all the muscle weights. This started out simple enough, but then became an extremely intense situation. I obviously couldn't attach ALL of the muscles to the skin, nor would I want to, considering some of them are deep muscles. In the end, about 70 of my muscles ended up being connected. I had issues attaching more than this, and although I couldn't find a written confirmed source, I'm pretty sure 70 is the maximum amount of muscles that Maya will allow to attach to a single mesh. After attaching all of these muscles, I noticed significant slow-down in the interface when manipulating the control rig.

I then had to actually make sure that Maya knew which muscles affected which part of the creature. To do this, I had to - you guessed it - paint weights yet again... So I had to paint the influence of all 70 muscles to the geometry, so that the proper parts squash, stretch, and deform appropriately.

Now this is where this stuff gets even more complicated...There are some 28 different types of weights you can paint for muscles...all which control very specific attributes. For now i'm only painting "sticky" weights and "sliding" weights. Sticky weights tell Maya what part of the geometry is connected to which muscle and just moves it with it. Sliding weights then allow the geometry to not just stick to the muscle, but slide across it like loose skin; it also allows the user to add a "fat" offset which actually bulges out the geometry... In the end I basically ended up having to paint weights on the whole thoracosaur 3 times:

1. Bind the Skin
2. Bind the Muscles (Sticky Weights)
3. Allow the skin to conform to the muscles (Sliding Weights)

 It's also important to note that there are interface elements missing on the painting muscle weights tool, and I had to look up information on the Maya Muscle scripting API so that I could write a series of MEL scripts to allow the weight painting to go smoothly.

...and that's just the most basic level of Muscle weighting. One can also paint attributes such as jiggle, collision, wrinkles, etc. It gets really intense and with the amount of muscles I have i'm sticking with only the two types of muscle weights for now. There were also many tiny deformation errors here and there, so I made the decision to move on to animating, and fix the small blemishes as they come up...otherwise I'd be painting weights for eternity.

With all the weight painting out of the way I could finally start animating...what I've been waiting(weighting?) for all year...

ANIMATION TRANSFER ISSUES

BUT! Alas, remember how I mentioned just attaching the muscles was creating slowdown in the program? Well painting weights just made the Maya interface slower and slower. I tried every OS I had access to (Windows XP, Linux, and Mac OSX) and it didn't get any faster. So then came another major problem...how the heck do I get this intense rig to run smooth enough for me to animate with it? Even with various geometry layers hidden, it was still slow. It was clearly the muscle attachement.

I then started plans to create a MEL or Python script to allow me to transfer animation relatively quickly from one rig to another identical one.  I did some research on some other Maya animation tools i'm not too familiar with, and perused the Internet for any free scripts that might be out there, before I spent a lot of time writing my own.

In my hunting I found this fantastic Python script that is up for free download, thanks to its author, Jakob Welner. This script allows me to select all of my controls for the thoracosaurus, and export any attributes or animation on those control objects to a small external file. I can then open another rig with the same controls, and import this external file, and the animation is transfered. This has allowed me to work in more or less real time in the interface, by animating on a Thoracosaurus that doesn't have muscles attached to the skin (they're still in the file so I can turn them on and look for deformation issues here and there, they're just not attached). I can then export this motion, and transfer it to a Rig that I can't manipulate in real time, that has all the muscles attached. Then I just render out some wireframes and look for problem areas and adjust the animation accordingly.

ANIMATION

For the animation I've been trying the best I can to stick very closely to reference footage, since this thesis is aiming for accuracy. It has been difficult for me, since I am very used to very cartoony characters. With characters where you're not worried about "correctness" but rather more focused on giving an incredible performance, creating nice fluid arcs of motion, and acting. With narrative animation, the goal of reference footage is to get inspiration and to combine with an animator's intuition to create something fresh and interesting that tells the story properly.

With this there were many moments where I wanted to add more flair, or smooth out my curves so everything was in really nice fluid arcs. But I stood back and made sure he looks just as clunky and awkward on land as an actual crocodylian around this size would. Clearly some things couldn't be exact, since some of this model's proportions are not identical to our good pal Rocky the Alligator of Clyde Peeling's Reptiland. I also used various other reference footage I could find, some of which I took myself, others which were available online, such as at BBC Motion Gallery.

 I was able to animate a couple of unique and interesting steps to keep variety, which then transfered into a walk cycle that I can loop to show it as long as I need to, as it transitions to the different layers of the creature for the first half of the final animated piece. I animated everything so far with the Straight Ahead technique (opposed to Pose-to-Pose). This helped me keep better trajectories with walking shots.

So I animated a transition to a walk, a walk, a transition to the water, and a swim.

You'll never guess what took the longest to animate...

THE TOES!

Most of the intricate action that happens with these guys is in the feet. When walking (in the high walk at least) it's all about how the pes and manus curls off the ground. The Thoracosaurus's feet were also a bit bigger than Rocky's, and therefore had to have more attention payed to them. This was rather frustrating, but at the same time, was congruent with my research on crocodylian locomotion. According to Reilly and Elias (1998) most of the speed of an alligator walk is in the feet. The distal limb elements control the speed of the walk, moving faster or slower accordingly. The angles between the leg bones stay more or less consistant. 

Anyway, once all of this was animated, I did some tests where I transfered the motion to the muscle rig, and played with the jiggle settings on the muscles a little bit. It's pretty much working, I just need to make some little adjustments here and there. I compiled a plethora of playblasts (that is, no rendering, lighting, or shading - just the model and the motion) into some videos to post here.

At this point the first half of my motion is complete. I need to stick some final cameras in there and do some lighting and a quick environment design to render out this first half, which I call the "Schematic." The second half is the "Narrative" which will reuse a little bit of this motion, as well as have a couple brand new shots. The "Schematic" is to show motion while documenting the process, and the "Narrative" is the part to feature the fully fleshed out habitat and show a day in the life of Thoracosaurus neocesariensis.

Sorry for the length of this post, but I thought it was important for you all to understand what I've went through to get to this point. Without further ado, here is the motion for the first half of the piece. I hope you enjoy. Much more cool stuff to come!



2 comments:

  1. Just viewed the videos... wow! That's awesome.

    (Have a few comments, which I'll email)

    ReplyDelete