UDN
Search public documentation

AnimSetEditorUserGuide
Licensees can log in.

Red links require licensee log in.

Interested in the Unreal engine?
Check out the licensing page.

Questions about UDN itself?
Contact the UDN Staff

AnimSet Editor User Guide

Document Summary: Guide to using the Unreal Animation Set Editor.

Document Changelog: Created by Daniel Wright. Maintained by Richard Nalezynski, Josh Markiewicz, Lina Halper.

Introduction

This document describes how to use the skeletal mesh and animation setup functionality in UnrealEd's AnimSet Editor. For more information on the Unreal Engine Animation System, see the Animation System Overview? page and the Importing Animations Tutorial page.

Using the AnimSet Editor

Opening the AnimSet Editor

AnimSet Editor Overview

AnimSet Editor Layout

To open the AnimSet Editor, double-click on an animation set in the Generic Browser. The Editor is divided in to the following sections, as shown below:

AnimSet_Editor.jpg

1 Menu Bar? and Tool Bar?. Visualization and navigation tools.
2 Preview Pane?. Previews the animation on a skeletal mesh.
3 Browser Pane?. Browse the mesh; animation set and sequence; or morph target and sequence.
4 Properties Pane?. Properties of the mesh, animation set, or animation sequence.

Menu Bar

File

  • Import Mesh LOD...

  • New AnimSet

  • Import PSA

  • Import COLLADA Animation

  • New MorphTargetSet

  • Import MorphTarget

  • Import MorphTarget LOD

View

  • Show Skeleton

  • Show Bone Names

  • Show Reference Pose

  • Show Wireframe

  • Show Mirror

  • Show Floor

  • Show Grid

  • Show Sockets

  • Show Bounds

  • Show Collision

  • Show Uncompressed Animation

  • Show Soft Body Tetra

  • Alt. Bone Weighting Edit This menu is only available when alternate bone weight exists for current LOD.

  • Show Tangent

As Vector Show tangent of each vertex of selected material section and you can select vertex to see information
As Texture Map tangent vector to texture UV - helps to visualize direction of vectors

  • Show Normal

As Vector Show normal of each vertex of selected material section and you can select vertex to see information
As Texture Map normal vector to texture UV - helps to visualize direction of vectors

  • Show Mirror Show mirroring information for UV mapping

  • Show Material Section Choose which material section to see for Tangent/Normal/Mirror

Mesh

  • Set LOD Auto

  • Force LOD Base Mesh

  • Force LOD 1

  • Force LOD 2

  • Force LOD 3

  • Remove An LOD

  • Auto-build Mirror Table

  • Check Mirror Table

  • Copy Mirror Table to Clipboard

  • Copy Mirror Table From Selected SkelMesh

  • Update Bounds

  • Copy Bones Names To Clipboard

  • Merge Mesh Materials

  • Fixup Bone Names

  • Socket Manager

AnimSet

  • Reset AnimSet

  • Delete Track

AnimSequence

  • Rename Sequence

  • Delete Sequence

  • Copy Sequence Name to Clipboard

  • Copy Sequence Name List to Clipboard

  • Apply Rotation

  • ReZero On Current Position

  • Remove Before Current Position

  • Remove After Current Position

Notifies

  • New Notify

  • Sort Notifies

MorphSet

MorphTarget

  • Rename Morph Target

  • Delete Morph Target

Animation Compression

Alt. Bone Weighting

  • Import Mesh Weights... Import Alternate Mesh Weights.

  • Toggle Mesh WEights... Toggle Alternate Mesh Weights.

  • Show All Mesh Vertices... Show All Mesh Vertices.

  • Delete Bone Break Vert Weightings... Delete/Reset Bone Break Vert Weightings using [Calculate Bone Break Vert Weightings]. Clears BreakBoneNames and related data.

Window

  • Browser: Shows Browser Pane.

  • Properties: Shows Properties Pane.

Tool Bar

Icon Name Description
Icon1.jpg Show Skeleton  
Icon2.jpg Show Bone Names  
Icon3.jpg Wireframe  
Icon4.jpg Show Reference Pose  
Icon5.jpg Show Mirror This option shows the current animation mirrored on the mesh. You must have a valid mirroring table set up for this to work. More information on the AnimationMirroring page.
Icon6.jpg Socket Manager  
Icon7.jpg New Notify  
Icon8.jpg Toggle Cloth This option toggles simulation of vertex cloth.
Icon9.jpg Show Uncompressed Animation  
AnimCompressionDialogIcon.jpg Animation Compression... Opens the Animation Compression dialog.
  LOD These are the same settings from StaticMeshEditorReference?; choose from Auto, Base, or Force LOD 1, 2, or 3.
  Animation Speed Choose from Full Speed, 0.5 Speed, 0.25 Speed, 0.1 Speed, or 0.01 Speed.
GoreIcon.jpg Alt. Bone Weighting Edit Mode View and edit alternate bone weights of selected bones

Browser Pane

Mesh

  • Skeletal Mesh
  • Extra Mesh (1-3)

Anim

  • AnimSet
  • Animation Sequences

Morph

  • MorphTargetSet
  • MorphTargets

See the Morph Targets page for more information on using morph target resources.

Skeletal Hierarchy Pane

Under the Windows Menu, you will find an option to turn on the skeletal hierarchy.

SkelTree.jpg

Here you can see the hierarchical makeup of the skeleton related to the selected mesh.

Simply clicking on a bone will highlight the bone on the model and provide a widget to manipulate the bone. Pressing spacebar while in the viewport will alternate between the translation and rotation widgets. As you manipulate the widget, it will show you the movement delta from the current animation/skeletal pose. Clicking on another bone during manipulation will reset the previous bone.

BoneManip.jpg

Right clicking on a bone will give you a pop-up menu of choices.

BlendWeight.jpg
Here you can:

  • Show the selected bone
  • Hide the selected bone
  • Set a render color for the selected bone
  • Show the selected bone's children
  • Hide the selected bone's children
  • Copy the entire bone hierarchy as text to the clipboard
  • Calculate the bone influence breaks for alternate bone weights between this bone and its parent : This will be available during Alt. Bone Weighting Edit Mode.
  • Delete/Reset the bone influence breaks for alternate bone weights for all bones: This will be available during Alt. Bone Weighting Edit Mode.
  • Enable and disable vertex blend weight rendering

While in vertex blend weight rendering, the viewport will switch to a wireframe overlay mode and use a blend weight shader to detail bone influences. Select on or more bones to see the contributions from the given bones. Multiple bones will sum their influences. Purple to red indicates zero to full influence respectively. This feature uses CPU skinning at the moment, but shouldn't change how it will look in game.

BlendWeightRender.jpg

Alt. Bone Weighting Edit Mode (Bone Influence Editing)

The engine supports a notion of storing alternate bone weight / influence "tracks" per skeletal mesh. At runtime these tracks can be swapped per bone pair allowing a clean break from the main skeletal mesh. Each vertex influenced by the specified bone is swapped with a new set of bone weights on the alternate track. Possible effects include gore and gibbing by separating a limb from a character body.

To set this up, artists first create multiple meshes in the DCT, one with the bone influences during normal movement and another with all appropriate limbs or mesh sections weighted differently to support separation from the main body.

After the first mesh is imported, the alternate weight mesh is imported through Alt. Bone Weighting:Import Mesh Weights. Select desired LOD you'd like to import for. It will ask for the original mesh again of the LOD, followed by the new alternate mesh. It assumes and therefore requires that vertex indices match between the meshes. From this mesh it will store a new list of bone influences and their weights for the LOD.

Now that the mesh has an alternate influence track, the bone breaks must be specified. First enable alternate bone weighting editing(bone influence editing) via the toolbar. Make sure you're in the right LOD to be able to select. The menu will be disabled if the current LOD does not have alternate bone weights. Also during editing mode, you wouldn't be able to change LOD.

In the skeleton tree, click on all the bones where a break between it and its parent will occur. They can be selected one at a time, or via multi-select. Notice that red vertices will show up in the view for each bone selected. These represent all vertices influenced by the selected bone or its parent.

UnBrokenArm.jpg

Right click and select "Calculate Bone Break Vert Weightings". If there are any vertices influenced by BOTH the selected bone and its parent, the vertex will turn white.

BrokenArm.jpg

These white vertices will swap influence when that bone break occurs in game. Use the translation/rotation widget to see the results of the influence swap. Notice in the example above that the separation is complete, without any vertex stretching back to the main body. The algorithm for calculating the break is fairly simple, if some vertices are not found because they aren't weighted to both bones, they can still be added to the break manually. Simply double click a red vertex and it will turn white, adding itself to the list and removing the stretch. You can remove a vertex in the same fashion.

Every time a break is made, the bone name is added to the SkeletalMesh's BoneBreakNames variable. This array is maintained across re-imports of the mesh and the break calculations will automatically be redone. This does NOT include any manual manipulation made the vertex list during last import.

BreakNames.jpg

Properties Pane

Mesh

SkeletalMesh Properties:

  • Materials
  • Origin
  • RotOrigin
  • SkelMirrorTable
  • SkelMirrorAxis
  • bAnimRotationOnly
  • BoneBreakNames
  • LODInfo
  • bForceCPUSkinning
  • bUseFullPrecisionUVs
  • FaceFXAsset
  • BoundsPreviewAsset
  • StartDisplayBoneName

Cloth Properties:

  • ClothBones
  • bEnableClothBendConstraints
  • bEnableClothDamping
  • ClothStretchStiffness
  • ClothBendStiffness
  • ClothDensity
  • ClothThickness
  • ClothDamping
  • ClothIterations
  • ClothFriction

AnimSet

AnimSet Properties:

  • bAnimRotationOnly
  • UseTranslationBoneNames

AnimSequence

AnimSequence Properties:

  • Notifies - A notify is an event that is fired at a specific time on an AnimSequence. There are a few available:
    • AnimNotify_Sound - Trigger a SoundCue
    • AnimNotify_Footstep - Calls the event PlayFootStepSound() in your Pawn class that is playing this AnimSequence
    • AnimNotify_Script
    • AnimNotify_PlayFaceFXAnim
    • AnimNotify_ViewShake
    • AnimNotify_PlayParticleEffect - NEW IN JULY 2008 QA BUILD
    • AnimNotify_CameraEffect - NEW IN JULY 2008 QA BUILD
    • AnimNotify_Rumble - NEW IN JULY 2008 QA BUILD
  • RateScale
  • CompressionScheme

NOTE: The animation compression properties that are visible in the AnimSequence tab are not meant to be edited directly. Rather, the correct way to modify a sequence's compression settings is through the AnimationCompressionDialog.

Controls

Mouse Controls

Keyboard Controls

Hot Keys

Spacebar: Toggle between translation and rotation while operating on bones and sockets in the socket manager

Working with Animation Sets