Skip to content

How to configure movement sounds

Use this guide to connect MotionMovementSoundComponent to surface-based footstep, jump, and landing sounds.

Create the DataTable

  1. Create a DataTable using the FMotionSurfaceSoundDataRow row structure.
  2. Add a Default row for fallback sounds.
  3. Add rows for project surfaces such as concrete, wood, grass, or metal.
  4. Assign MetaSound sources for the movement actions each surface supports.
  5. Set volume and pitch multipliers for each row.

Configure the movement sound profile

  1. Add MotionMovementSoundComponent to the character.
  2. Duplicate DA_MotionMovementSoundProfile_Default_v2_0_0 from Plugins/MotionCore/Content/Motion/Profiles/v2_0_0 into your project content.
  3. Assign your DataTable to SurfaceSoundDataTable on the duplicated profile.
  4. Set DefaultSurfaceSoundRowName to the fallback row, usually Default.
  5. Enable surface detection when physical materials should select sounds.
  6. Enable 3D audio for world-positioned footsteps.
  7. Assign the duplicated profile to the component's Profile property.

Trigger sounds from animation

Add Animation Notifiers at the frames where sounds should play:

Movement momentFunction
Foot contacts groundTriggerFootstepSound()
Jump startsTriggerJumpSound()
Landing impactTriggerLandingSound()
Custom movement actionTriggerMovementSound()

The component handles surface detection, speed modulation, and sound selection when the notifier fires.

Motion - Advanced First Person Character Controller