From BlenderWiki
Character Studio http://www4.discreet.com/3dsmax/3dsmax.php?id=985
Animanium http://www.animanium.com/product_operational.htm
CAT http://www.catoolkit.com/support/videos.asp
MotionBuilder http://www.alias.com/eng/products-services/motionbuilder/index.shtml
endorphin http://www.naturalmotion.com
Project Messiah http://www.projectmessiah.com/x2/videos.htm
Rigging
- Full Auto
- None of the tools I've found would I consider 'true' autorigging, ie automatic joint creation and placement based on mesh structure. I did find a paper that 'sortof' accomplishes this, but appears it only finds the locations of terminal or juncture joints, and joints that have the mesh adequately bent at the joint.
- Automatic Bone Generation For Character Animation Using the Discrete Medial Axis Transformation https://www.tu-chemnitz.de/informatik/HomePages/GDV/forschung/doc/mi_prof_publik_154.pdf
- It is also unclear from the paper if the placement is sufficiently good for animation.
- Of course there are also meshes that are prerigged, and then the user just edits the mesh itself (ie Poser or Makehuman).
- Manual
- What most programs actually mean by autorigging, is that they either have prebuit rigs for various character types (ie bipeds, dogleg bipeds, quadrupeds, spiders, birds). Or they have procedural methods for building a rig where certain body parts are predefined and then you choose how many of each part is used and where they are located. Then the user is expected to scale the rig to the proper size and drag the joints to the proper locations. A third meaning of autorigging is that the user creates the skeleton, and then the constraints are automatically applied.
- Prebuilt and procedural
- CAT (Character Animation Toolkit), Character Studio, and the Setup machine all allow the user to use either prebuilt rigs, or define a rig by using prebuilt bodyparts (head and neck, spine, pelvis, arms and legs, hands, tentacles, wings, etc.). The Setup machine seems to be more aimed at cartoonish rigs.
- See this video from CAT for building a rig from scratch using parts - Working with catrigs - http://www.catoolkit.com/support/videos.asp
- This video from setup machine shows typical workflow for prebuit rigs http://lib1.store.vip.sc5.yahoo.com/lib/rafhashvideotapes/TSM2-01.mov
- For just applying prebuilt rigs but specifying what features are turned on and off there are a large number of options, Ie Messiah Animate has one that is good. http://www.projectmessiah.com/x2/vids/messiah_autorig.wmv
- and there are also many free options available for maya, including FinalRig, Creature Tools, AutoRig, The JointFactory, and Advanced Skeleton. FinalRig generally got the most accolades from my readings.
- FinalRig - http://radiantsquare.com/03Scripts/FS_Script_fRrig.html
- Creature Tool - http://www.ant-online.co.uk/downloads/CreatureTools.htm
- AutoRig v2.0 - http://www.markbehm.com
- The JointFactory - http://www.animagicnet.no/maya/jointfactory/index.htm http://www.animagicnet.no/maya/jointfactory/images/setupWindow.gif
- Advanced Skeleton - http://www.animationstudios.com.au/
- Building your own
- For facial rigging the ZBrush approach is really amazing, it lets you draw your control points on the surface/skin of your character. http://206.145.80.237/zbrush/reg/ZBrushPreview_SRig2.zip http://206.145.80.237/zbrush/reg/ZBrushPreview_ZSphere2.zip
- Another really intersting approach is Messiah Animates ability to link joint angles to control the fading in and out of a dispalcement map, giving highly realistic neck musculature, or to a control curve for doing things like bicep muscles. http://pixologic.com/Neckling_A06.mov http://www.projectmessiah.com/x2/vids/messiah_flex.wmv
- Lightwave has a very nice method of applying IK chains which it calls IK boost, it propogates IK through out the skeleton. And then has you toggle IK stopping points. It also has a very nice method for setting up joint constraints. ftp://ftp.newtek.com/multimedia/LW8Demos/mov/IKB_001.mov ftp://ftp.newtek.com/multimedia/LW8Demos/IKboost_octo.avi
- Another really useful feature is specify the curvature profile of a chain of bones with a curve. (Ie which bones bend first, which the bending velocity of different joints). See the catrig video from above for details.
- There are a number of minor features in setting up skeletons, including splitting of bones (or turning a bone into a number of segments), fusing multiple bones into one, interactive mirroring of bone placement (as opposed to mirroring a chain after one side is setup), and some nice moving, rotating, and scaling of chains of bones.
- ftp://ftp.newtek.com/multimedia/LW8Demos/mov/tipmove.mov
- Constraints
- I really liked the lightwave method of setting up basic angle constraints. Clicking on a joint revealed a list of three values, one could be selected then you could CTRL click and drag to set the maximum rotation angle.
- See the IKB_001.mov from above.
- Other useful constraints were floor constraints, the best floor constraints caused the foot to rotate and flatten when it made contact with the floor or rotate and slide, as handled in motionbuilder.
- http://aliaswavefront.topdownloads.com/pub/bws/bws_79/gmk_motionbuilder6_character_animation_basics.swf
- It occurred to that there should be a number of options on what to do when a colission occurs. For instance the hand closing/wrapping around an object. Or the fingertips sliding along a surface. Lightwave has an option for doing softbody stuff (such as the squish and bulge of a tire),In Endorphin, you can constrain a joint to stay on a line, a surface, or within a volume. Also Endorphin can switch to an animation or AI behavior, based on a collission.
- http://www.naturalmotion.com/files/endorphin_intro3.mov
- Skinning
- Auto
- While everybody does autoskinning, I couldn't find much information on how they are doing it.
- From watching the new zbrush video, they appear to use a volumetric based approach. - http://206.145.80.237/zbrush/reg/ZBrushPreview_Rhino.zip
- I did find some papers that I think will be of interest
- Skinning Characters using Surface-Oriented Free-Form Deformations - http://www.dgp.toronto.edu/~karan/pdf/wrap.pdf
- Direct Manipulation of Interactive Character Skins http://www.cs.wisc.edu/graphics/Gallery/DirectManipSkin/dmanip-skin.pdf
- Building Ef�cient, Accurate Character Skins from Examples - http://www.cs.wisc.edu/graphics/Gallery/SkinFromExamples/skin-from-examples.pdf
- Multi-Weight Enveloping: Least-Squares Approximation Techniques for Skin Animation - http://www.cs.berkeley.edu/~daf/games/webpage/motionpapers/p129-wang.pdf
- Manual
- There are many manual methods, envelope based. Poser uses two ellipsoids per bone one defines skin which has 100% influence, the second defines the maximum influence range for the bone, then the skin between the two spheres is linearly interpolated.
- Another method is to set up various poses with correction targets.
- Messiah Animate has something which it calls 'metaeffectors', which is a field based system. - http://www.projectmessiah.com/x2/vids/messiah_metaeffectors.wmv
- Of course there are assorted painting methods something which we already have (and I think we have blending methods via a python script...)
- Auto
- Visualization
- There are a number of useful things for visual feedback that would be nice to have, 'Onion skinning' or ghosting. And closely related to that are trajectories.
- I really like Animaniums 'ghostkeys' - http://www.katoe.net/storage/ghostkeys.1.2.avi
- And Motion Builder 6's Trajectories and Path http://aliaswavefront.topdownloads.com/pub/bws/bws_79/gmk_motionbuilder6_trajectories_dynamic.mov http://aliaswavefront.topdownloads.com/pub/bws/bws_79/gmk_motionbuilder6_3d_paths.mov
- Also nice looking are Endorphins trajectories and ghosts - http://www.naturalmotion.com/images/strobe.jpg
- When mixing motion (say from two bvh files) color coding and blending what animation is affecting which limbs is very nice (and blending the colors by the weighting...). See for instance CATs layers implementation http://www.catoolkit.com/support/videos.asp CATVideoTut_Layers.wmv
- Animanium and Messiah highlight the skin/bone of the active bone (they both have the fast mode where selection is always the nearest bone - this is called 'animate immediate' in Messiah.) Animanium also color codes based on whether a joint has a locked rotation or position. I think it might be useful to color the entire IK chain of the selected bone, so that it is clear where IK chain stops are turned on (or off). Also If you have IK and FK allowed at the same time (with auto switching based on context), I'd highlight the joint if you are close enough to use FK mode. - http://www.animanium.com/movies/AnimaniDemo_QT/AnimaniDemo2.mov http://www.animanium.com/product_operational.htm
- The mixer interface for Character Studio is excellent, by far the easiest to work with - http://mtlstream02.discreet.com/streaming/ms/mixer.wmv
- For footsteps vizualization see both the Character Studio implementation - http://mtlstream02.discreet.com/streaming/qt/previz.mov
- and that of CAT - CATVideoTut_CATMotion_PathNodes.wmv
- There are a number of useful things for visual feedback that would be nice to have, 'Onion skinning' or ghosting. And closely related to that are trajectories.
- Manipulation
- Selection Follows mouse - having the selection follow the mouse is much faster than having to click on each bone. This option was available in most of the packages, and Animanium has it on by default. Something that I didn't see, but would be really useful is enable it for multiple characters at the same time, which would greatly speed up doing scenes where characters are reacting to each other in rapid succession (for instance a fight). It would also be nice to have one click constraining and releasing (to make it easy to for instance, to have one character grab a character and then have their arm pulled around.)
- Animanium has a very fast method of locking and releasing constraints on position and location. Especially nice are the ability to set up locking groups that can be rapidly turned on and off. - http://www.animanium.com/movies/AnimaniDemo_QT/AnimaniDemo3.mov http://www.animanium.com/movies/AnimaniDemo_QT/AnimaniDemo4.mov
- Every package seems to have a wide variety of default handles that convey what the handle does. The are generally configurable for color, shape, and label.
- Autoswitch IK/FK mode - many of the packages are 'smart' about IK and FK. Automatically turning on FK when appropriate. Animaniums isn't automagic, but it does have an excellent FK implementation. http://www.animanium.com/movies/AnimaniDemo_QT/AnimaniDemo2.mov
- Proxys - most of the packages allow you to use proxys for selection and manipulation.
(not completed...) Mechanisms
IK/FK blending
linkage to rotation angle
(displacement map, morph target, deformation curve, etc.)
Blending from multiple sources
(bvh, previous animations)
whole body
partial body
from a different body part
Copy and Paste Animation and Poses
From opposite side body part
From a different animation
From a different armature
Collision based mechanisms
collide and slide
collide and wrap/rotate
collide and stop
Sketch based
sketch curves for facial animation
sketch body poses
sketch propogate up the ik chain! (or just n/p)
Physics and Dynamics based
Skin spread/squish on collission
Rotoscoping based (video in a background clip on a plane)
Procedural
speech and emotion based
(neural network based...)
walk cycle tools
generated from noise
Record mouse movement
Dynamic Weighting (Ie the melt tool...)







![[]](/skins/blender/open.png)
