Animation Export

The Avastar Animation exporter exports skeletal animations of the Avastar Armature. We support 2 export Modes (anim and BVH).

Note: The Exporter is only available when you have selected an Avastar Armature as the active Object.

The Animation Export Panel is located in the Render Properties Section  (see navigation map by hovering the mouse over the zoomglass above). You need to scroll down to the bottom of the section indicated.

.anim Export

Basic Settings

The Anim export creates data files in the same animation format that is also used by SL, OpenSim etc. One advantage of this export type is that it supports the animation of the Eye Bones.

  • fps: (Frames Per Sec).
  • Start Frame: First frame to export.
  • End Frame: Last frame to be export.
  • Ease in: Time in seconds until the character will be reposed from the character’s current pose to the first pose in the Start Frame.
  • Ease Out: Time in secs until the character will be reposed from the End Frame to the character’s previous pose.
  • Priority: [-1, 0 … 6] Animation priorities (1)

(1): Priorities from 0 to 5 correspond to SL’s priority system. Priority 6 is like a master priority that “rules them all”. But it is not officially supported. Priority -1 probably means “ignore this joint”, but i could not find a description of what it does.

Loop Settings

  • Loop Animation (checkmark): if checked, the animation will run in an infinite loop. If unchecked, the animation will run exactly once.
  • In: First frame of loop (can be anywhere in the animation)
  • Out: Last frame of loop (needs to be right from the In location) Note: Last Frame and First frame can be the same for a static animation!

Export Settings

  • name:name of the animation. This is actually a name template. It can contain variables:
    • $action: Name of current action
    • $avatar: name of the Armature
  • Apply Armature Scale: This is an advanced feature. Export non-Pelvis bone locations to the animation where they are keyframed. Note that if you move the bones (not just rotate them) then it’s easy to break your avatar in such a way that it could require logging out from SL and Relogin to fix. 
  • With Bone translation: While rotation animation is always exported, the export of translation is optional. You will need to check this if you have enabled the option anim bone trans or vol bone trans in the Posing panel. You will keep this unchecked when you want to ensure that your animation does not contain any translation.
  • Export Animation: Clicking this button will open a file selection box and after you have specified the name of the export file (pre-filled out with the template), the data is exported to disk.

Trouble shooting

  • If you have no keyframes defined, then the export button becomes red (see image) and exporting is disabled.
  • If your animation contains keyframes for the Origin bone, then also the export is disabled because the Origin bone animation can not be transfered to Secondlife and the final animation would become distorted. You can fix that by deleting or muting the Origin bone animations.
  • If your animation contains very subtle animations for the face parts for example, then the animation exporter sometimnes smoothed out your animations and you see nothing when uploading to SL. You can inform the exporter to keep animations unsmoothed as follows:
    • open the timeline
    • for each keyframe that you want to preserve add a timeline marker
    • Name all preserving markers “fix”
    • All so marked keyframes will be exported unchanged.

 

.bvh Export:

The BVH export is compliant to standard BVH, but it takes care about some conventions which are needed by the SL animation Importer. What these conventions are needs to be documented still.

 

  • fps: (Frames Per Sec)
  • Start Frame: The first frame to be exported
  • End Frame: the last frame to be exported
  • Synchronize: copy changes of start/end frame to the timeline
  • Prepend reference(*): Add the Reference Frame as initial frame
  • With Bone Lock: Keep bones in animation even when not animated
  • With Pelvis Offset(**): Experimental, will be removed soon
  • name:name of the animation. This is actually a name template. It can contain variables:
    • $action: Name of current action
    • $avatar: name of the Armature

(*): Prepend reference: Automatically add the Reference Frame as initial frame (the reference frame is needed by the animation system of SL, OpenSim and other compatible worlds)

(**): Since Avastar 2.5-17 this is set automatically

  • Apply Armature Scale: This is an advanced feature. Export non-Pelvis bone locations to the animation where they are keyframed. Note that if you move the bones (not just rotate them) then it’s easy to break your avatar in such a way that it could require logging out from SL and Relogin to fix. 
  • Export Animation Button: Clicking this button will open a file selection box and after you have specified the name of the export file, the data is exported to disk. If the button is marked red, then something prevents Avastar from exporting. In that case a short explanation appears on the Button.
  • With Bone translation: While rotation animation is always exported, the export of translation is optional. You will need to check this if you have enabled the option anim bone trans or vol bone trans in the Posing panel. You will keep this unchecked when you want to ensure that your animation does not contain any translation.
  • Bulk Export: Export multiple Actions into separate bvh files. Bulk export is only available when you have more than one action defined.

Note: During upload to your online world you can specify animation loops. The in and Out locations need to be specified in %. We have added a loop % calculator. Just enter the in frame and the Out frame. Avastar will calculate the percentage values as you need them for the animation importer.

Advanced feature: Priority per bone

You can set the priority for each bone separately. You find the setting in the bone properties editor:

Bone Section -> Custom properties -> Priority

By default this is set to -2 for each bone (see image)

You can change the value for each bone to:

  • -2 : use the priority specified in the export panel
  • -1 : ignore the joint in the animation (not sure if this is actually true, may be a rumour)
  • 0-5:  Bone priority used in BVH exports
  • 0-6: Bone priority used in .anim exports