Footstep Sounds¶
Game Creator's characters can mix and play multiple sound effects depending on the type of ground it's stepping on.
Humanoid and Non-Humanoid
This system works for humanoid and non-humanoid characters alike. Though humanoids don't require any kind of setup and work out of the box.
Detecting Steps¶
The Footstep System (also known as Phases system) uses Animation Curves to detect when a Character has one of its limbs in contact with the ground and when it does not.
This system plays a role in other systems, such as correctly aligning the feet when standing on uneven terrain, or detecting when the character takes a step, and plays a tiny dust particle and sound effect.
The Phases system supports up to 4 different phases, although humanoids only require 2 (one for reach leg).
By default, a Humanoid character has the following curve names assigned to each leg:
Phase-0
to the Left LegPhase-1
to the Right Leg
A non-humanoid character can also define the Phase-2
and Phase-3
if necessary.
Using custom animations
Game Creator animations contain the phase curves already set up for you. However, if you plan on using your own animations, you'll need to set them up by editing the Animation Clip and adding the Phase-0
and Phase-1
curves.
The phase curves are evaluated at runtime depending on the animation(s) being played at that time. If the value of a phase is zero means the limb is currently not touching the ground and is high up in the air. On the other hand, if the curve has a value of one, it means the limb is currently planted on the ground.
Playing Footstep Sounds¶
The Footstep Sounds system comes with a built-in tool for playing different sounds and sound variations depending on the surface the character is stepping onto. To create a material sound library, right click on the Project Panel and select Create - Game Creator - Common - Material Sounds
.
The Material Sounds asset allows to define which textures produce which sound effects. Each texture can have multiple sound effects, which will be picked up randomly every time the character takes a step.
Pseudo-Random Sound Picking
Note that although it's completely random, two sound effects will never be played in succession in order to avoid repetition.
The Material Sounds asset also allows to instantiate a game object from a pool of prefabs at the impact position. The instantiated object is aligned with the incision angle. This is very useful when spawning particle effects of dust.
The human hearing quickly recognizes sound patterns. To avoid hearing the same sound effects over and over again, the Footstep Sound System intelligently shifts the pitch and speed of each audio clip every time it's played. By doing so, a single clip can be played hundreds of times with various nuances that tricks the human hearing into perceiving each clip as a different sound effect.
Gradient Footstep Sounds
Floors are not always composed of discreet materials. For example, there might be a sound effect for when the player steps on shallow water and another one when steps on sand. However, if the character runs along the shore, where there's a blend between the water and sand textures, the resulting sound effect is a proportional mix between the two audio clips and their pitch is shifted to fit how real-life audio blending occur.
Drop the Material Sounds asset onto the Character's Sound Asset
to link them.
Reacting to Footsteps¶
The Footstep system also allows Characters to react every time a step is taken. Using the On Step Trigger, which is executed every time a defined Character takes a step. This is useful for things like leaving footsteps behind.