Recalculating an Animation to Match a Default Pose

The default pose for an avatar is the pose you see after resetting all the rotation fields for the Parts to zero. (this is the shape of the static mesh when pivot points are used)  When importing an animation into an avatar, a common problem encountered will be that the default pose for the animation will not match the default pose for the avatar. For example compare the default poses for Zoe and Lucy:
zoe & lucy default pose
Because the angle of the arms are different for the 2 avatars, if we import an animation from one to the other we will see bizarre results from the arms when they animate.
 
We can solve this problem by recalculating the avatar's default pose before importing its animations. Because this involves modifying the static shape of the avatar we are importing from, it is likely the mesh will be damaged (unless it is very simple), so we should view the mesh as discardable when recalculating an avatar's default pose. This is not a problem because we only want to import the animation, not the avatar's mesh.

The safe procedure for recalculating an animation's default pose is as follows:

1/ So that the original avatar in the file you are importing from is left unmodified, from the F10 menu select file->save as:
  
file save as

2/ Close the the Anim bar and unselect the Anim bar in the scene tree if it is selected so that the animation is not accidently modified before recalculating it.

3/ If all the parts are not already blue, right click on the Seamless node and select: convert all (to blue parts).

4/ Click reset all rotations to zero to set all rotations to zero.

5/ Pose the avatar using the Part rotation fields

6/ Select the Seamless node

7/ Select from the F10 menu: compile transform->scale rotation:

compile scale rotation

The compile transform->scale rotation command will modify any OrientationInterpolator that is referenced by a line of script contained in any Anim bar that references both a Part belonging to the selected Seamless node and the OrientationInterpolator.

Some of the steps in the procedure may seem unnecessary but unless you know what you are doing the full procedure will bypass problems and confusion that may otherwise arise.
A question you may ask is why convert all the parts to blue parts? We don't, but converting to blue parts (which also deletes any build nodes) will bypass the confusion that may arise from leaving a set of build nodes free to regenerate the avatar back to its original form. The compile transform command we use modifies the vertices and the OrientationInterpoltors for the parts, not the build nodes that generate the mesh.

A variation of this procedure is to import an avatar into the Scene after step 1 to help guide us pose one avatar to match the other.
To import the whole avatar, select the Scene node and from the F10 menu select:

import all nodes

Because the animation's avatar we are importing from is discardable, we are free to replace it with a simple avatar generated from lathes so that the avatar will add very little file size to the stored animation file. To quickly create a simple lathe avatar from the pivotPoints:

Right click on the Seamless node and select: create lathes from pivotPoints


For importing animations see: Import Gesture Animations
For importing Motion Capture BVH animations see: Import BVH Files



Home Page: 3d modelling software

[3d Modelling Software] [Tutorials] [Forum] [Features] [Download] [Gallery] [FAQ] [Worlds] [Avatars] [Links] [Thyme]


Copyright © 2000-2009 Graham Perrett thyme@seamless3d.com