1. UDK Horizontal Music System using Kismet

    There is a need for a custom music solution when using the Unreal Development Kit. The default music system known as UTMapMusicInfo is limited and not completely functional as a complex music system. Using Kismet instead provides a strong visual scripting language with many possibilities for triggering sound.

    Horizontal and vertical arrangements are well used techniques for creating music systems for games. This article will focus specifically on a horizontal setup. We will explore the benefits of vertical arrangement in a future article.

    The best way to visualize a horizontal arrangement is to think of a single stereo track playing back in a DAW. This track can play only one file at a time, and each file has to contain the entire stereo mix intended to be heard. Each individual piece of music needs to be completely independent of the others because only one piece is heard at a time. For the purposes of a game the music needs to be able to loop endlessly, waiting for a specific player action to transition into the next piece.

    Horizontal arrangement techniques have been used since the dawn of game audio. The earliest gaming systems generated the musical score on the fly with limited number of polyphony and channels. Once music was sampled and streamed off a disc only one stream could play at a time, necessitating the use of a horizontal arrangement. A typical setup would have the music system changing according to different conditions or game states. Once a condition was met the music system would stop playing the first piece of music and move on to the next. Game states that are commonly used would be: health remaining, power-ups, time running out, ambient, action, death, winning, and losing.

    Horizontal music systems are still a very common approach to playing back music in games. Arcade games, casual games, and others with a linear style of gameplay often necessitate a horizontal setup. Mobile games are often limited by hardware restrictions and a horizontal setup can offer the best solution.

    When considering a horizontal music system it is important to determine how one piece of music will transition into the next. Transitions can happen immediately, at the end of the current musical loop, or after a certain number of beats. In addition the transitions either happen as a hard cut from one to the next or as a crossfade over time. For this example each musical transition happens immediately once the previous cue has finished. This maintains the linear nature of the music and keeps the everything on time and in sync.

    Looping music in Kismet

    In the UDK there are a couple of ways to loop a soundcue. The first is using a ‘Looping’ soundnode directly in the soundcue itself. This is best for ambient level sounds where you need a looping sound but don’t need the control of Kismet. The main problem with using ‘Looping’ node is you don’t have much control over how the file plays back dynamically in game.

    In Kismet you can set the ‘Finished’ output back to the ‘Play’ input on a PlaySound node. This triggers the soundcue to play over again once it reached the end of the file. You can then use other Gate node to stop playback. As the player triggers different events in the game it causes one Gate to close and another to open re-directing the ‘Finished’ output signal to reach the ‘Play’ input of the next PlaySound node.

    Description of project

    I am using the Racer Starter Kit (link here) provided by Epic Games to create and test my horizontal music system. It is one of their UDK Development Gems and contains everything needed to get started with a simple game project. It is a linear race course that uses a map based off of the EpicCitadel map provided with the UDK. There are a series of Touch Triggers placed throughout the race course. I used these as checkpoints and use the triggers to move the music system forward as the player drives through each one. You can use any number of checkpoints triggering the music system.

    This Horizontal music setup is not only limited to linear checkpoints or triggers. Any number of parameters or game states could drive the music system. Basically if it has an output in Kismet it can be hooked in to this system.

    Here is how the logic flows through the Horizontal music system:

    1. When player spawns in the level PlayerSpawned triggers the first PlaySound to start playing. It also sends a stop message to all other Playsounds in case they were still playing.

    2. When this first PlaySound is done playing it fires the FINISHED output.

    3. This feeds to the input of two Gates. The first defaults to open and triggers the first PlaySound again, and the second defaults to close and triggers the second PlaySound.

    4. The first Gate remains open, continually looping the first PlaySound, until the Touch Trigger is used and closes the gate preventing the first PlaySound from looping again.

    5. The second Gate is triggered to open by the Touch Trigger. This allow the first PlaySound, once finished, to trigger the second PlaySound to start playing. Thus transitioning seamlessly from once musical loop to the next.

    6. The second PlaySound is also connected to another similar chain of Gate and Triggers continuing though the musical progression as needed.

    Next time we will discuss a vertical Music System. If you have any questions contact me chris.at.engineaudio.com or post a comment below.

    Comments (1)

  2. Short Wave Image
  3. Audiokinetic adds Soundseed to WWISE

    Simon Ahsby and the team at Audiokinetic continue to push the boundaries of Game Audio integration with their amazing toolset WWISE.

    WWISE is an audio tool set that was developed with the sound designer and composer as its focus. Audiokinetic offers WWISE as a bridge between the world of Digital Audio Workstations (Pro Tools, Logic Audio) and the code driven world of a game audio pipeline.

    For those of us who are experienced with audio tools for Music and Media Postproduction, the introduction of WWISE onto the scene has been exciting to say the least. Keeping with this trend, the team at WWISE is proud to present a module (plug in) that will expand the power of WWISE as a sound design medium.

    The first module, SoundSeed Impact, can be used to create variations of resonant impact sounds, such as sword clings, footsteps, bells, etc. Audiokinetic promises to deliver Impact shortly and is already working on creating additional modules.

    “Too often, sound designers must set aside their creativity in order to comply with memory usage or recording costs constraints,” says Audiokinetic CEO and president André Nadeau. “SoundSeed breaks this paradigm.”

    Comments (0)

  4. Short Wave Image
  5. Sarcastic Gamer: Why Wii Music will Suck

    A very tongue in cheek look at Wii Music from SarcasticGamer.com. They crack on the limited music selection in the game, all songs are either from Nintendo or the public domain. How many different ways can you play the Super Mario Bros. theme? There is also the flailing that come naturally with any Wii game, there is no real instrument to play so the controls may take some getting used to. With game like Guitar Hero: World Tour and Rock Band 2 on the shelves it sounds like Wi Music might have a tough time competing with a popular mix of licensed music and plastic instruments.

    Comments (0)

  6. Short Wave Image
  7. Three new Engine Audio music tracks! Orchestral, Metal, Electronic

    We have a new mix of our Desert Conflict promo coming soon.  It features all new music and enhanced sound fx.  The music moves through many different genre’s from orchestral string and brass, through intense double kick drum metal, and finally some high energy drum and bass.  Here is a preview of the new music. Enjoy.

    Orchestral Demo Orchestral Brass and Strings

    Futuristic Drum n’ Bass Futuristic Drum n’ Bass

    Metal Demo Ass Kickin’ Metal


    Comments (0)

  8. Short Wave Image
  9. Lionhead Studio’s Video Diary 7: Sound for Fable 2

    The most recent developer video diary from Lionhead Studios deals with a behind the scenes look at the audio and soundtrack of Fable 2.  This free-roaming RPG requires a detailed soundtrack but they managed to fit 9,000 unique sound fx into 90mb on the disk.  Even modern console systems have a limited amount of memory dedicated to run audio, but 90mb leaves alot of room for dialog and music.

    Comments (0)

  10. Short Wave Image