Thursday, July 28, 2011

Rise of the Planet of the Apes - Weta Featurette

Featurette video showcasing some of the workflow pipeline from WETA for "Rise of the Planet of the Apes" movie. WETA has really broken through the mo-cap technology by shooting capturing motion outside of a studio. Awesome job as always!

Monday, July 25, 2011

Tuesday, July 19, 2011

Twist Joint Setup Overview :)

I have seen people and previously me myself using twist joint setup (usually while rigging forearm twist) using the good old rotational weighted constraints or direct rotational connection with offset values to give even twisting. It works great for straight aligned joint rotated or twisted in just single direction for example rotate X, but once you start rotating in all direction which we all tend to, some thing weird happens, something not so good that is known as flipping. This flipping behavior is the result of GIMBAL LOCK! Well then, that is a major issue.

Basically, the flipping can be avoided if we stay out of rotational constraints or connections. I am going to show two methods on how this can be achieved.

1st Method (Aim Constraint with Up Vector) : The first method deals with setting up a joint twist using the power of aim constraint. The twisting of each joint is controlled by World Up Objects, which are basically locators re-positioned on top of each joint. Once the locators are moved, the joint twist evenly without any flipping. Check out the images below for detail!

2nd Method (Spline IK with Up Vector) : The second method is pretty straight forward. Create a regular spline IK on a given joint chain. From the advance twist option, make sure that World Up Type is object Up (Start/End). Just like the aim constraint, the up locators are used to setup the advance twist for the entire joint chain. Again, check out the images below for detail!

Therefore, both of the method shown above can be applied for creating a non - flipping GIMBAL LOCK friendly twist setup which can be applied for regular forearm twist or whatever. Spline IK Advance Twist doesn't seem to work very well with mirrored joint, in such case just re-root the mirrored joint chain so that the end joint becomes the parent (Maya Bug). I hope this post could be useful to you, let me know if you have any concerns. Cheers :)

P.S. here is another cool alternative for no flipping twist by Cedric Bazillou. He used a custom Quaternion based Aim Constraint node to achieve the result. More info can be gathered from his blog!

Yet another cool post by Keil Figgins "Forearm Twist: An Animation Solution". Good read!

Portal 2 :: Game Production Focus

Portal is by far one of the most addictive and fun game! The Valve guys have delivered a strong answer to gamers wanting an extension to the Portal world. With a bunch of progression shows and video breaks, CGSociety talks to Project Lead Josh Weier and a couple of the talented Valve artist team to describe their process for Portal 2.

Saturday, July 16, 2011

Acting Tutorials Highlight

Here is a really cool, very useful tutorial for any CG animator out there from Kyle Balda's 3D Animation Masterclass: Dialog Acting Tutorial. The tutorial appeared in the June 2009 issue of 3D World Magazine. This ten minute clip covers highlights from the 20 hours of video capture in 3DWorld to show one possible workflow of approaching 3D Character Animation with multiple characters. Too Good!

Friday, July 15, 2011

"The pupPetEEr’s Lounge" Website

Finally, the website for The pupPetEEr's Lounge is all set and ready to go public! Still some tweaking to do but I can say it's an official launch. Cheers everyone and happy browsing =)

Thursday, July 14, 2011

"Lost Animation when loading Referenced Rigs" by Mark Jackson

Here is a really good read for anyone animating in Maya. Mark Jackson has descrived a good work through for solving this annoying problem when animating via file referencing!

"This is Particularly relevant to referenced Rigs which have characterSets.

So this has come up a few times on the forums and I've also had emails asking how to fix it so thought I'd drop some info up here. The issue is that at some point the referenceEdits that connect Animation Data to a referenced rig can get broken or corrupted. This means you can be animating away all day, saving incrementals as you go, completely unaware that when you load this scene in, all animation will be lost..or so it would seem.

see this post recently:

The issue is usually the referenceEdits themselves. What sometimes happens is that the 'connectAttr' block in the referenceEdits gets blanked. We have no idea why, neither does Autodesk, it's completely random. Its also more common on files that came from 2010 and have been loaded in 2011. It also was an issue with rigs that had characterSets on the early release of 2011 IF you were using AnimLayers. (pre hotfix2)

So what to look for?

If you open up the Reference Editor then go to file>referenceEdits. In there you should get a list of all the edits performed since that file was initially referenced in. It's basically a macro that the file load uses to reconstruct the file. So, take a look in the list, see if you still have a large 'connectAttr' block. These should be the connections from the characterSet (placeholder list) to the anim curves themselves. If these edits get corrupted then as I said, you can spend all day saving incremental saves which are all broken but you wouldn't have been aware of them until you reloaded the scenes and the reference list got re-passed.

Now there are some good things to help you. Firstly the fact that the connections aren't there doesn't mean that there's no link from the anim curves to the reference. What happens is that the curves will be left connected to the references RN reference node. If you graph the referenceNode in the hypershade you should still see the connected anim data. It's what happens when you unload a reference, the anim data is cast back to the referenceNode for safe keeping.

So, graph the data, see if it's there, look at the referenceEdit list, see if it is correct or not. If you have no 'ConnectAttrs' then its the same issues we have.

Fixing it is a different issue. Basically we need to write a little tool which spins through the characterSet plugs, then the animCurves left connected to the RN node, does a nameMatch, then reconnects the data. The following dropped into a Python script Tab should do it, just select the characterSet you want reconnected!"
  1. import pymel.core as pm  
  2. import maya.cmds as cmds  
  3. cSet,,st=True)  
  4. refNode=cSet.referenceFile().refNode  
  6. if not type=='character':  
  7.    raise StandardError('You must select a CharacterSet to reconnect')  
  8. if not refNode:  
  9.    raise StandardError('Given characterSet is not from a referenced file')  
  11. animCurves=refNode.listConnections(type='animCurve',s=True)  
  12. cSetPlugs=pm.aliasAttr(cSet,q=True)  
  14. for plug in cSetPlugs[::2]:  
  15.    for anim in animCurves:  
  16.        if anim.split(':')[-1].endswith(plug):  
  17.            print '%s >> %s' % (anim,plug)  
  18.            pm.connectAttr('%s.output' % anim,'%s.%s' % (cSet,plug),force=True)  

Wednesday, July 13, 2011

John Lasseter | A day in a life

Video documentary about the famous man behind PIXAR's sucess! Really cool video of Mr. Lasseter's daily life and goodies and goodness and ahhhhhh yeahhhh cartooonsss ... Technology really does inspires art!

Defective Detective

Really funny hilarious animated short by Avner Geller and Stevie Lewis! I loved the final shot just before the credit, sure is a defective detective. The short is debuting exclusively on cartoon brew's 2nd student animation festival.

To find out more about the production of this short, visit this page :)

Monday, July 11, 2011

My Bathroom

My Bathroom, a short animated humor by Keith Lango! I really liked how he captured such subtle acting in those puppets.

Thursday, July 7, 2011

Received a Honorable Certificate :D

OK! So today 7/7/2011 was the day for Inauguration function at Black Box Animation & VFX Academy. The really good thing is I first stepped my foot into the world of CG Animation, beginning with traditional animation from Transcube Animation which happens to be founded by the same person, Mr. Suyogya Man Tuladhar. I worked with him for the past 6 years and today he honored me with a special Certificate in Achievements in the field of Character Rigging & Animation! The certificate was handed down to me by Mr. Kiran Bhakta Joshi who is a former Walt Disney Animation Studios veteran. He worked at Disney as a VFX Supervisor for over 17 years and return back to Nepal to start his own animation studio, Incessant Rain Animation Studio. I worked with him for the the past 4 years as a Lead Senior Rigger and CG Supervisor. I am really thankful to Mr. Suyogya Man Tuladhar, Mr. Kiran Bhakta Joshi and the entire Black Box team; I wish them the very best and great success! I will be conducting  part time character rigging workshops and will be a part of the special board adviser for the academy. It's a great honor for me :D

Wednesday, July 6, 2011


The simplicity of this animated short really stands out! I am imagining the range of facial expressions on the characters. Awesome work and bravo to the team!


What exactly do you need to be a good rigger or more lead a bunch of fellow artists!? Is it really age that determines a person becoming a lead? Experience may be!? What it really takes to be a sucessful rigger? What are the basics and the fundamentals? ~ Some of the countless thoughts being processed by our brain! So what else ...

Well, my point is if you keep learning and updating your skills with passion and patience, you are going to be a good rigger. Once you have mastered the art you may as well start leading a bunch of artist! To lead a team is another challenge, you need to have strong communication skill and the motivation and will power to complete an assigned task. Of course you will have to keep the team happy and motivated. To be a lead or a superior, it doesn't matter with age; it depends on your overall skill and talent. The real point is that you are never going to master a subject! Learning never ends. Problems leads to solutions and solutions leads to more problems. Never ending cycle ain't it? Richard William once said he just learned how to hold a pencil. Now then, what have we learnt yet?

The core fundamentals for rigging is not just the tool and software; it is the Art. Always study reference materials for characters in motion, creature anatomy, study animated cartoons or characters, study the facial expression and acting of actors in movie and such. All these things add up and you can visualize how the joints are placed for the skeletal anatomy, how to setup an animator friendly rig; flexibility of the controllers and so on. One more crucial factor to be a successful rigger is to learn and respect the critiques and comments that the animators and directors throw at you. That's a how you update your skill! We all are aware of the fact, how important INTERNET has been in our daily life and career. Make sure to go through those wonderful forums, blogs, websites, tweets and interesting videos that creative and passionate people like us share with the community :)

Here is a little quote that makes a really good sense "Good Artists Copy, Great Artists Steal" :D

That's pretty much it, keep the spirit and enthusiasm alive :)

Monday, July 4, 2011

Facial Deformation Based On Joints & PSD

Here is a really cool demonstration for facial deformation based on joints and corrective PSD (BlendShapes) by Andy van Straten. The pose space deformations are triggered by several controllers in the setup. The combination of joints and PSD gives some great facial deformation to this character or let's say a facial deformation masterpiece. Really liked it!

Below is the video demonstration by Andy on how he actually setuped the PSD and overall facial rig. Really neat stuff!

P.S. "cvShapeInverter Tool" By Chad Vernon. For creating corrective shapes…. ultra fast!