Over the last months I was busy writing and playing with specialized rigging and deformation nodes for maya .
I asked my former mentor at rigging dojo, Brad Clark, some advices on my newly released programming reel . He gave me a really helpful insight on my spline deformer and ask how will it behaves on a full blow creature or character.
I quickly realized that much of the previous tools were proof of concept, that needs further development to be useful in a real world scenario. This was good opportunity to apply my research on practical examples.
( above, the list of character that will be used to test out plugins and tools: there is a progression in the difficulty to articulate them, going from pure cartoon , to caricature and realistic model )
1) Hall of fame ( full credit list disclosure…) :
Most of the time when I recycle a model I try to tweak it by working on its topology , proportion, or form .
The following images will describe what was done and their original author

Mr Noogles from Brad Clark, works done:
- hands and feet consolidation
- face retopology and neutral expression

Package Man , Javier Solsona :
- ears and nose extensive modification
- face retopology and consolidation
- hand consolidation
- body retopology

Zazar, concept and story from my friend jean-luc Patriat ( Hanuman ) work in progress:
- initial model : cedric bazillou
- tail and cloth removal
- anatomy detail from various free model
- tweaking and consolidation

Female model found on pixologic forum ( contact me if you know the author, to give him/her well deserved credit ( you rules man…) )
2) Integrating topology varying limbs in character puppet:
To test out rubber hose arm and leg it was obvious to search a simple cartoon character where extreme stretchable limb was part of the design.
On this character the main shapes are easily identified :
- The torso mimic the form of an inverted water drop
- the face mask is placed on the upper portion of the body and seems to slide along the torso surface.
For this project the hands and feet were rebuilt , an equal number of faces were also distributed along the character limbs.
You can also see from the original mesh on the left that I did an extensive work on the face to have a neutral starting point( the asymmetrical feature of the face works great and gives this character an insane expression) .

To reach my goal I though of splitting its body into meaningful regions.The arm , spine and leg were to be stretchable but i wanted to avoid the most common mistake done by average rigger: skewing large portion of the shoulder or hips when a limb length increase or shrink.
The light salmon color faces will be deformed by my custom spline deformer,when stretched this region will automatically increase its edge subdivision along the curve length.
The other faces will use regular basic skinning and extensive pose space deformation.
3) Taming ankles: teaching toon how to tilt

One common test I perform to check how the ankle region behaves , is to tilt a character a la “smooth criminal”. Above we can see Michael Jackson leaning at an angle of 40 degrees, which in itself is already spectacular, but for a cartoon is not enough.

(above: the feet are firmly planted on the ground demonstrating an unbreakable deformation rig)
To reach this goal I work a couple of days in order to update 2 tools featured in a previous article :
- the sextant and hemisphere node.
It was important to script the the corrective shape setup as well to have a general tool to manage and update the required corrective shapes.

( above: you can see the ankle describing a circle and the combination of up and left side will push the foot on the left side)
After my previous experiment ,failure and disappointment in pose space deformation , I wanted to try other method to do the correctives shapes:
- encoding a predefined orientation into the articulation .
The result was more pleasing and easy to achieve :
- the setup start with 4 shapes up/ down then right/left
- at this stage the space is divided into 2 or 3 ( depending on the granularity that is needed for a creature ), each subspace being dependent to the previous one
- the last 16 shapes(in pink in the image ) will be used to enable a smooth blending between this set of target key pose.
Less shape were also needed by using comet pose deformer on top of the skin cluster: as an additive offset the vertex are inheriting the arc motion of the joints influencing them ,producing a smoother interpolation.
4) geodesic wrist : an animator-proof articulation…

Above: Range of motion for the wrist, notice the smooth interpolation of the corrective shapes that distributes the edges of the mesh evenly.

The correctives shape embed a predefined torsion value into several key poses in order to have beautiful deformation when the wrist is locked and before a second twist layer is added to the forearm.
After playing a lot with spherical coordinates I wanted to try another workflow to interpolate and create corrective shapes.Instead of stacking the influence of all shapes , only 3 morphs would be active at any time.

To compute vertex weight the most easy way was to extract from a ray/mesh intersection the barycenter value . Other type of interpolation( UV based, face sweeping etc ) is also possible with this method and can be a viable alternative to simple vector angle based poseReader.
(Above: the 16 corrective shapes used for this wrist : the triangulated mesh in the center of the image output vertex weights that are linked to their related key pose )
b) Elbow deformation with custom trigger node:

Range of motion for this character elbow : beyond 130 degrees the forearm starts to collide with the biceps and push the flesh on the side and on the back

A better view for the arm bulging: on this example simple correctives shapes define the overall deformation , but a self collision plane can be used to trigger animated weights for the last shape.
e


Just trying to understand the coordinate frame for the twist, or spin – im guessing the parent space of the controls changes as you twist them. E.g. when you twist the hand – your solution seems similar to mine but i’m hitting 180 degree pop – ie flipping at the horizon of the quat. Im guessing you have a temporally changing coordinate frame (frenet)?? Im slowing building a rig and currently looking at rotations.
On practical application the quaternion has singularity when the target vector is parallel to the reference vector used to build it.
Its an interesting tool as when it drives a bone your articulation seems to untangle itself auto-magically: but it also means we have a valid 0/165 degrees vector range that will encode a predefined twist on the articulation.
In maya life is easier as every value is expressed in its parent space.Try when you use an orient constraint to use two children under same group.
Up until now i was using a history based twist extractor( a low rez puppet doesn’t need twist most of the time )but right out the box the orientcConstaint node is able to achieve -359/359 degrees range
when you choose the right configuration and add little trick: so this time no matrix math, custom node etc… just standard node.