Skip to content

How to author optional first-person body meshes and held pose animations

Use this optional guide for the native Motion first-person body and held pose system. It contains an artist brief, purchase criteria, and the Unreal import procedure.

By the end, you will have optional native first-person presentation assets:

  • a first-person upper-body mesh assigned to a component named FirstPersonUpperBody
  • a first-person lower-body mesh assigned to a component named FirstPersonLowerBody
  • a small held pose animation set that can drive a held item through MotionNativeFirstPersonItemConfig
  • a list of criteria for an artist or a Fab animation pack

Use this guide before adding a production native first-person item. If you already have compatible body meshes and held pose animations, continue with How to add a first-person item end to end.

Start with the Motion skeleton

  1. Open the character Blueprint that uses Motion.
  2. Select the primary character mesh from the components tab.
  3. Note the skeletal mesh, skeleton, and Animation Blueprint.
  4. Open the skeleton asset.
  5. Make sure that the skeleton has a socket or bone named weapon_r.
  6. Make sure that the full-body skeleton has MotionCamera for the Stable camera / Motion 1.6 camera.
  7. For Socket mode, make sure that the configured pivot socket exists.
  8. Make sure that the skeleton has the default Motion upper-body solve bones:
PurposeDefault names
HeldPose branchpelvis
Pitch distributionspine_01, spine_02, spine_03, spine_04, spine_05, neck_01, neck_02, head
Hand IKVB Hand_R to hand_r, VB Hand_L to hand_l

If the project skeleton uses different names, continue the procedure. Adjust UpperBodySolveSettings on each item config later.

Write the artist brief

Give the artist the exact character skeleton and item role. A separate viewmodel skeleton is not necessary. First-person body meshes and held pose animations must stay compatible with the full-body skeleton.

Use this brief:

text
Supply Motion-compatible first-person assets for Unreal Engine 5.6.

Use the supplied character skeleton without renaming bones, deleting bones, changing hierarchy, changing rest pose, or creating a viewmodel-only skeleton.

Deliver:
- first-person upper-body skeletal mesh, no head, no item geometry, with enough chest and shoulder coverage for the supported downward view range
- first-person lower-body skeletal mesh, no arms or head
- world/full-body item mesh and first-person item mesh as separate item assets
- loopable held pose animation for the basic held pose
- optional held pose variants for crouch, sprint, jump, ADS, or gameplay tags from your project

Attachment:
- held items attach to `weapon_r`
- keep the right-hand grip stable around `weapon_r`
- the left hand can use the supplied hand IK or virtual bones
- preserve the configured camera pivot socket only if the project uses Socket mode

Camera-facing mesh boundaries:
- do not leave open neck, shoulder, arm, or waist cross-sections visible from the supported first-person pitch and FOV range
- overlap upper- and lower-body geometry to prevent gaps during movement and held poses
- hide or cap interior cut surfaces
- Stable camera clearance uses the capsule as a body proxy and cannot identify custom mesh holes

Animation:
- use the same skeleton as the character body
- keep locomotion/root motion out of basic held pose clips
- make held pose clips loop cleanly
- keep the item hold readable at first-person camera distance
- do not bake weapon meshes into the character body mesh

Evaluate an animation pack before buying it

Before you buy an animation pack, compare it with this list:

  1. It must be retargetable to your character skeleton.
  2. It must include idle or held poses for the item type.
  3. It must include the applicable movement-state variants.
  4. The hands must hold a consistent item origin or grip point.
  5. The right hand must stay near the specified socket.
  6. The left hand must have a suitable pose or an IK reference.
  7. The animation must not depend on a separate first-person arm rig unless you can retarget it.

Export the source character mesh

INFO

Motion includes optional Blender source files. Open the Motion listing on Fab and find them in the Additional files section.

Use this procedure if you do not use the default mannequin or have character source files:

  1. In Unreal, find the full-body skeletal mesh used by Mesh.
  2. Right-click it and choose Asset Actions > Export.
  3. Save an FBX outside the project content folder, such as D:/MotionMeshWork/SKM_Character_SourceForFP.fbx.
  4. Export the skeletal mesh only.

You will split this FBX into meshes for the local player view. Keep the original Unreal asset unchanged.

Create the first-person upper body

  1. Open Blender.
  2. Import the exported FBX.
  3. Leave automatic bone reorientation disabled if your Blender version offers it.
  4. Duplicate the body mesh object.
  5. Rename the duplicate SKM_Character_FP_UpperBody.
  6. Delete the head, face, hair, eyes, helmet, legs, and feet from the duplicate.
  7. Keep shoulders, clavicles, arms, hands, and enough torso geometry for clean deformation.
  8. Remove loose vertices and hidden interior pieces.

Shape the mesh for first-person framing without changing the skeleton:

  1. Add a temporary camera near eye height.
  2. Add a simple blockout item near the right hand.
  3. Adjust mesh vertices for a good first-person silhouette.
  4. Keep the hands aligned with the original hand bones and weapon_r.
  5. Do not turn bones to force the final held pose.

Use mesh edits for the visible body silhouette. Use held pose animations, item transforms, and item solve settings for held-item posture.

Create the first-person lower body

  1. Duplicate the original body mesh again.
  2. Rename the duplicate SKM_Character_FP_LowerBody.
  3. Delete the head, arms, hands, and upper torso.
  4. Keep pelvis, hips, legs, knees, ankles, feet, and enough waist geometry to hide the body split.
  5. Remove loose vertices and geometry the owner camera will never see.

The lower-body mesh shows the body during a downward view. It must not include item geometry, gameplay collision, or extra hitboxes.

Examine skinning before export

  1. Select SKM_Character_FP_UpperBody.
  2. Make sure that it has an Armature modifier that targets the imported armature.
  3. Make sure that its vertex groups use the original bone names.
  4. Do these steps again for SKM_Character_FP_LowerBody.
  5. Enter Pose Mode on the armature.
  6. Turn spine, arm, hand, hip, knee, and ankle bones to examine deformation.
  7. Reset the pose.

If you created cap faces or changed large mesh areas, weight paint them to nearby existing bones. Do not add a first-person-only skeleton.

Export the two body meshes

Export each body mesh as a separate FBX.

For the upper body:

  1. Select the armature and SKM_Character_FP_UpperBody.
  2. Choose File > Export > FBX.
  3. Enable Selected Objects.
  4. Export only Armature and Mesh object types.
  5. Disable Add Leaf Bones.
  6. Disable animation export.
  7. Save SKM_Character_FP_UpperBody.fbx.

For the lower body:

  1. Select the same armature and SKM_Character_FP_LowerBody.
  2. Use the same export settings.
  3. Save SKM_Character_FP_LowerBody.fbx.

Import the body meshes into Unreal

  1. Create a folder for first-person body assets.
  2. Import SKM_Character_FP_UpperBody.fbx.
  3. Enable skeletal mesh import.
  4. Set Skeleton to the same skeleton used by Mesh.
  5. Leave animation import disabled.
  6. Import the asset.
  7. Do these steps again for SKM_Character_FP_LowerBody.fbx.

Open each imported mesh and make sure that:

  1. The Skeleton field points to the full-body character skeleton.
  2. A full-body preview animation animates the visible mesh parts.
  3. The upper-body mesh has no head.
  4. The lower-body mesh is readable when viewed from the camera angle.
  5. The skeleton has weapon_r and the configured Socket mode camera pivot.

Assign the meshes to the Motion character

  1. Open the Motion character Blueprint.
  2. Keep the standard character mesh as the full-body Mesh representation.
  3. Add or select a skeletal mesh component named exactly FirstPersonUpperBody.
  4. Assign your imported upper-body mesh.
  5. Add or select a skeletal mesh component named exactly FirstPersonLowerBody.
  6. Assign your imported lower-body mesh.
  7. Reset the two component transforms to align them with the full-body mesh.
  8. Disable collision on the two first-person body components.
  9. Do not put item meshes on either body component.

On the local character, MotionCameraComponent marks the two body components as native FirstPerson primitives. It marks the full-body mesh as WorldSpaceRepresentation. The first-person body meshes then get the full-body pose.

Prepare the first held pose animations

Create or retarget a small held pose set on the same character skeleton. Start with one item, such as a pistol or scanner, and make these clips:

ClipUsed for
Baseline held poseFallback held pose when no specific gameplay tag wins
Crouch held poseOptional entry for Motion.State.Crouching
Sprint held poseOptional entry for Motion.State.Sprinting
Jump held poseOptional entry for Motion.State.Jumping
Project-specific held posesOptional entries for ADS, injured, swimming, or other project tags

Each held pose animation can be a short loop or pose-like sequence. Keep the pose stable. Motion layers it with the host locomotion graph through the overlay node.

Before importing or accepting the clips:

  1. Make sure that the clips use the same skeleton as the first-person body meshes.
  2. Make sure that the right hand holds the item consistently around weapon_r.
  3. Make sure that the host Animation Blueprint continues to control locomotion.
  4. Make sure that the clips loop without hand movement at the boundary.
  5. Make sure that the configured solve bones exist on the animation skeleton.

Validate in PIE

  1. Open a map that uses your Motion character.
  2. Select Play as the local player.
  3. Watch the Output Log for native first-person warnings.
  4. Make sure that no warning identifies a missing first-person body component.
  5. Move, sprint, crouch, and jump.
  6. Look down and make sure that the lower body is visible.
  7. Equip a test native first-person item.
  8. Make sure that the first-person item attaches to FirstPersonUpperBody.weapon_r.
  9. Make sure that the world item attaches to Mesh.weapon_r.
  10. Move the camera up and down.
  11. Make sure that Stable clearance keeps the view outside the body proxy.
  12. Make sure that the two body meshes keep their authored transforms.
  13. Examine the steepest supported pitch in all item and movement states.
  14. Make sure that no open cut surface or missing torso geometry becomes visible.

If the item position is incorrect, adjust FirstPersonRelativeTransform on the item config. If attachment fails, examine the shared skeleton and weapon_r.

What you have ready

You have first-person body assets and a starter held pose animation set for the native Motion item presentation path:

  • body meshes share the full-body skeleton
  • item attachment uses weapon_r
  • basic held pose comes from item config AutomaticHeldPoseSettings
  • movement-state held pose variants are selected by gameplay tags
  • custom graphs and linked layers remain optional advanced paths

Next, turn these assets into a finished item presentation.

Motion - Advanced First Person Character Controller