[UE5] Sound Wave versus Sound Cue: Giving Footsteps Natural Variation

Created: 2025-12-12Last updated: 2026-09-06

A Sound Wave is the audio material; a Sound Cue is the blueprint for playing it. Using footsteps, learn what Random and Modulator do, listen to the differences, then fire them on landing with an Animation Notify.

Step, step, step. The motion matches the feet, but when exactly the same sound repeats, the mechanical loop starts to grate.

When that happens, pick one of several footstep clips and vary the pitch and volume a little. In UE you handle a Sound Wave, which holds the audio material , separately from a Sound Cue, which assembles how it plays .

Even with the same clip, changing pitch and volume changes how it sounds

What You'll Learn

  • The difference between a Sound Wave (material) and a Sound Cue (playback)
  • Varying the same footstep every time with Random and Modulator
  • Firing it the moment the foot lands, using an Animation Notify
  • Why distance falloff and room reverb are tuned separately

We build footsteps inside a Sound Cue, listen and compare a few times, then fire them on the character's landing.

Sponsored

A Sound Wave is the audio material

Drag a footstep .wav into the Content Browser and a Sound Wave is created. It is a recorded sound turned into an asset UE can use.

Importing a footstep wav file and using it as a Sound Wave asset

A Sound Wave holds the audio data and playback settings, and can be played directly. Rules for combining, such as "pick one of three footsteps", are prepared separately.

To play from Blueprint, use nodes like these.

NodeHow it playsExample uses
Play Sound 2DPlays regardless of position in spaceButton clicks, BGM
Play Sound at LocationPlays at a specified positionFootsteps, explosions

Specifying a position is a separate setting from getting quieter with distance. To change volume by distance, also set up Attenuation, described later.

For a button click or a line of dialogue where you want one clip as-is, a Sound Wave is enough. Creating a Sound Cue does not by itself make audio better.

A Sound Cue is the blueprint for playback

A Sound Cue is an asset that takes Sound Waves as material and uses nodes to assemble "which one to pick" and "how much to vary it".

A Sound Cue picking one of three footstep clips with Random and passing it to Output

The "Sound" input on Blueprint's Play Sound 2D and Play Sound at Location accepts both a Sound Wave and a Sound Cue . Change a direct clip reference to SC_Footstep and the same play node fires the footstep Cue.

That way, adding more footsteps later or softening the pitch variation is a matter of opening the Cue. Keeping "when it plays" separate from "what plays" is the advantage.

Random picks, Modulator varies

Start with these two.

Random picks one of the connected clips to play. Prepare three footsteps for the same floor and you reduce the state where only one recording ever plays.

Modulator picks pitch and volume from a specified range each time it plays. Pitch is how high the sound is; Volume is loudness. It adds differences like "a bit lower" or "a bit quieter".

Random picks one clip and Modulator shifts pitch and volume slightly

The waveforms in this diagram illustrate the change in how it sounds. It does not mean Modulator keeps wobbling the value throughout one playback. Here we re-pick the values each time a footstep fires .

If Random simply picks at random, the same clip can repeat. We check the setting that adjusts repetition in the next steps.

Hands-On: build a footstep Cue and compare

Before wiring anything to a character, check the sound on its own. Prepare three short footstep .wav files. Clips with one step per file and no long silence at the start are easiest to work with.

Pick the same floor and the same shoe with slightly different steps. Matching the loudness of the clips prevents one step from suddenly jumping out. Three copies of the same file will not produce any variation.

1. First, play a single sound

  1. Drag the three audio files into the Content Browser to import them.
  2. Name them SW_Footstep_01 , SW_Footstep_02 , and SW_Footstep_03 , and audition each.
  3. Right-click in the Content Browser and create a "Sound Cue" from the audio category (Audio / Sounds). Name it SC_Footstep .
  4. Open the Cue and drag SW_Footstep_01 into the graph.
  5. Connect the Wave Player that plays the clip to the input of the Output node that is already there.

Output is this Cue's final destination. Press "Play Cue" in the toolbar, and if one step plays, the first stage worked. Leave the Wave Player's "Looping" off.

2. Change it to pick from three

Drag SW_Footstep_02 and 03 into the graph as well. Add a Random node from the graph's right-click menu and disconnect the direct Wave Player to Output link.

Connect the three Wave Player outputs to separate inputs on Random. If there are not enough inputs, add them with Random's "Add Input".

Select Random and set the following in the Details panel.

PropertySettingIntent
Weights1.0 on all threeDo not favor any one clip
Randomize Without ReplacementOnRun through all of them before the next round
Preselect at Level Load0Do not reduce the candidate pool here

Weights is the likelihood of being picked. Start with equal values so you compare the clips under the same conditions.

Randomize Without Replacement temporarily removes a picked clip from the pool. Once 01, 02, and 03 have all been picked, all three return. Distinguish that from a setting that "never picks the same clip twice in a row".

3. Vary pitch and volume a little

Add a Modulator and connect Random's output to Modulator's input, and Modulator's output to Output's input.

Three Wave Players into Random, through Modulator, out to Output

Select Modulator and set the Details panel as follows.

PropertyValueMeaning
Pitch Min0.92Slightly lower than the original
Pitch Max1.08Slightly higher than the original
Volume Min0.85Slightly quieter
Volume Max1.0The original volume

1.0 is the multiplier that leaves the original value unchanged. Pitch below 1 is lower, above 1 is higher. Here we use a range of 8 percent either side. The 0.85 volume is a multiplier applied to the original signal, not a guarantee that perceived loudness is exactly 85 percent.

Listen with this range first, and if the change is too big, move Pitch Min and Max closer to 1. Start with differences small enough that the clip's character survives.

4. Listen to one setting at a time

Save, then press "Play Cue" once and wait for the sound to finish before repeating. That reads more clearly than mashing the button and overlapping sounds.

Listening to clip differences and pitch differences separately, then combining both
  • Hear only the clip differences : set all four Modulator values to 1.0 and play.
  • Hear the pitch differences : return Pitch to 0.92–1.08 and leave both Volume values at 1.0.
  • Hear the finished result : return Volume Min to 0.85.

If you can tell the three sounds apart and it still sounds like walking on the same floor, the Cue side is ready.

Sponsored

Firing it the moment the foot lands

Next, match the Cue to walking. From here we assume your character can already play walk and run animations. If that foundation is missing, build it from Animation Blueprint Basics.

A Notify is a marker that calls work at a specific point in an animation. Place a sound notify where the foot meets the ground and the footstep fires along with the animation.

Matching the moment the foot lands in a one-step animation with the Play Sound notify position
  1. Open the Animation Sequence (one continuous animation clip) actually used for walking. If you use a Blend Space, open the walk clip it references.
  2. Pause the preview and step through time to find the moment one foot touches the ground.
  3. Right-click the child track under "Notifies" (initially named "1") at that point in the timeline.
  4. Add "Add Notify" → "Play Sound".
  5. Select the added notify and set SC_Footstep in the Details panel's "Sound".
  6. Leave Volume Multiplier and Pitch Multiplier at 1.0 and leave Follow off.
  7. Place an identical notify at the moment the other foot lands, and save.

With Follow off, the sound stays where it started playing. This example uses a short one-step clip to check the landing timing.

The frame number for the notify differs per clip. Rather than copying a fixed number, watch the foot contact in the preview and match it. Add the same way to the run Animation Sequence. If a footstep notify already exists, replace its Sound rather than layering a new one.

Play and try walking, running, and stopping. Confirm it fires on landing and that no new footsteps play after you stop. The Cue picks the sound and the Notify decides when it fires — that division comes together here.

Creating custom notifies is covered in the Animation Montage and Notify article. To change the sound by ground material, call work there, inspect the ground, and extend it to picking a Cue.

Distance and room reverb are tuned separately

With variation and timing done, tune the relationship with the surroundings. An enemy sounding quieter as they walk away and a cave echoing are separate mechanisms.

Attenuation is the setting for volume and more as a function of distance. Create a Sound Attenuation asset and set it in the Cue's "Attenuation Settings", and the same footstep sounds different near and far. Concrete distance and range settings continue in 3D sound and mixing.

Reverb is the lingering reflection you hear in a room or cave. Keep it separate from the Cue's random clip selection.

The Cue picks clips, a Submix processes gathered audio, and an Audio Volume handles reverb by place
MechanismRoleExample
SubmixA destination that gathers and processes soundsApply the same effect to gathered audio
Audio VolumePlaces a region in the level where audio settings changeReverb increases when you enter a cave
Sound ClassCategorizes sounds and adjusts volume in bulkLower the volume of all SFX

You do not wire a reverb node after Random in a normal Sound Cue graph. If you set reverb on a cave's Audio Volume, the sound side must also be configured to send to reverb. Placing a region does not automatically make every sound echo.

Splitting things this way lets the same footstep Cue work both outdoors and in a cave.

Sponsored

When it does not work

Checking in the order audition the clip → audition the Cue → animation → in game makes it easier to trace where the sound changed.

SymptomWhere to check
No sound from the CueDoes the clip play alone, is Wave Player connected through to Output
Only the same sound playsAre three different clips connected, Weights, and the clips themselves
Silent only in gameThe Sequence actually playing, the notify's Sound, the attenuation range
It fires later than the landingNot just the notify position, but silence at the head of the clip
It doubles on one stepOverlap with existing footstep logic, duplicate notifies, walk/run blending
Sounds pile up when runningWhether the one-step clip is too long, whether the notify fires twice

Midway through a blend between walk and run, notifies from both animations can be involved. First confirm one sound per step in the Sequence alone; if it doubles, check settings that decide which animation emits notifies, such as AnimBP Sync Groups. A Sync Group is a group that keeps several animations in step.

Bonus: Good to Know Up Front

Add other Cue nodes as you need them

To layer several sounds at once use Mixer ; to chain them in order use Concatenator . That extends to cases like layering an explosion body with debris sounds.

To loop ambience seamlessly, use a clip suited to looping and turn on the Wave Player's Looping inside the Cue. The Sound Cue "Looping" node repeats a block of work and does not guarantee a seamless audio join. Leave the footstep Wave Player off.

Tune volume and concurrency too

Volume Multiplier's 1.0 is the original multiplier, not a ceiling. Still, pushing it high or layering many sounds can distort. Adjust while playing alongside music and other effects, not in isolation.

Sound Concurrency decides how many sounds play at once and what happens when the limit is reached. Consider it when enemies multiply and footsteps get dense. Whether the new sound or the old one gets stopped depends on the setting.

When to move on to MetaSounds

If you want to synthesize sound itself, or control music transitions at fine timing, MetaSounds is a candidate. It is not a drop-in replacement for the same Sound Cue nodes; it uses a different graph for building audio.

The experience here of "pick a clip and vary it a little" carries over. Changing sound from runtime values is something you can try in MetaSounds Basics.

Summary

A Sound Wave is the audio material; a Sound Cue is the blueprint for playback. Here we picked one with Random, shifted pitch and volume with Modulator, and matched the foot landing with a Notify.

Start by playing one step, then listen to the clip differences and the pitch differences in turn. Look for the point where it feels varied but still like walking on the same floor, and footsteps get much easier to tune.

Further Reading

Unreal Engine Notes in this section98