Motion Prerequisites

There are multiple ways to animate a character in Golaem Crowd. Either trough the animation engine (Motion Behavior or Locomotion Behavior) or thanks to baked geometry animation, in fbx or gcg file, through the Geometry Behavior. Even when using the animation engine, there are several options: either by replaying the exact same animation on the exact same skeleton, or by using the animation mapping features.

Each case has its own prerequisite, which can be summurized as follow:

  Direct FBX/USD Replay Animation Mapping with FBX/USD/BVH files Animation Mapping with GMO files Baked Geometry
Translation and Scale Animations    
Modular Skeleton    
No Animation Conversion    
Ground Adaptation

Only if legs are mapped and

pelvis drives all the bones

Particle based
Locomotion Only if legs are mapped and

pelvis drives all the bones
 
Physics  
IK / LookAt  

FBX/USD animation direct replay

Character Prerequisites

Animation Prerequisites

Animation replay with mapping

Replay mapping can be done either by converting the animation into a gmo file, or directly with the fbx/usd/bvh fiel and an Motion Skeleton Mapping, as detailled in this page.

Character prerequisites

Recommendations on Biped Skeletons

Even if the previous list of prerequisites is enough to ensure a working animation, a few other things may help obtaining a better animation quality when dealing with bipeds:

The following figure describes the different planes of the body used to describe the location of body parts in relation to each other:

The following figure shows the recommended skeleton posture:

Recommended biped skeleton

Animation prerequisites

General Recommendations

Even if the previous list of prerequisites is enough to ensure a working animation, a few other things may help obtaining a better animation quality:

Squash'n Stretch Specifics

At each frame, only one ​Squash’n Stretch ratio per auxiliary/extension bone chain is computed, based only on the positions of the joints which are parts of the bone chain. So for all the joints consisting of the same bone chain, scales or position translations must be uniform in time, e.g. must vary in the same way. For instance, if considering stretch on the arm of a human morphology (made of an arm bone and a forearm bone):

Right arm OK, as both forearm

and arm bones are growing in

the same way at the same time

Right arm not properly handled,

as arm bone is first growing/reducing before forearm bone is doing so

The amount of squash/stretch associated with a bone is computed considering the distance between this bone and its child. If a bone has several children, then all the distances from this bone to its children are taken into account to obtain a Squash’n Stretch average ratio. So the distances between a bone and its children must vary in the same way. For instance, if considering the hand of a human morphology (a hand bone with five finger bones):



Right hand not properly handled, as index finger is stretching whereas other fingers are squashing

The issues described above generally occurs when:

Baked geometry animation

See the Geometry behavior.