Real-Time Synthesis for Sound Creation in Peggle Blast!

게임 오디오 / 사운드 디자인

As a primer for their GDC 2015 talk, Peggle Blast! Big Concepts, Small Project, PopCap Team Audio has written a short blog series focusing on different aspects of the audio production, covering real-time synthesis, audio scripting, MIDI scoring, and more! 

Peggle Blast!  Peg-hits and the Music System - RJ Mattingly 

Scoring Peggle Blast! New Dog, Old Tricks - Guy Whitmore 

Realtime Synthesis for Sound Creation in Peggle Blast- Jaclyn Shumate  

Recently, on Peggle Blast, PopCap’s newest mobile addition to the Peggle Franchise, we were challenged by a directive from the team to keep all of our audio content under 5 MB.   Having little to no memory is an Audio Designer’s worst nightmare, and we were concerned that we wouldn’t be able to come close to hitting the quality bar we had achieved on our last Peggle project, Peggle 2.  To give some comparison, Peggle 2 shipped on Xbox One with 783 MB of audio. 

To work around the lack of available memory, we used a combination of MIDI and real-time synthesis for audio creation.  We built sounds using tone generators and Digital Signal Processors (DSP) within the audio engine (Wwise), while matching sounds directly to visuals, real-time, in the game engine (Unity).   We didn’t work in the traditional way of creating content, where you take game capture and then make sounds to picture within your Digital Audio Workstation (DAW).  This new workflow allowed for an immersive development experience, a tighter feedback loop, and a more dynamic product overall.   

maxresdefault.jpg

Inspiration came from classic games like Super Mario Bros., The Legend of Zelda, and Pac Man.  These games were able to achieve iconic audio despite having limitations.  In fact, these constraints contributed greatly to their signature styles and may have boosted creativity.   On Peggle blast, the constraints shaped our daily goal of creating sounds without using any memory.  Memory hogging .wav files were reserved for a few iconic Peggle sounds and specially curated .wav file building blocks that we could manipulate in varied ways to use as layered elements with our generated sounds.   In the end, we were able to ship Peggle Blast with only 1.3 MB of sound effects and 3.5 MB of music, yet it contained hundreds of sound effects and over 30 minutes of interactive music.

The Workflow

Let’s say I wanted to make a sound for a splashy visual effect that burst across the screen when the player achieves a high score, and I wanted it to sound like a sweeping bleep bloop with magic sparkle dust added in.  The first step I’d take would be to make an approximation of the sound within Wwise.  Let’s say in this case, to create the bleep bloop, it’s a square wave, pitched up over .5 seconds, created using Wwise’s tone generator with various delays added.  Then, to get some sparkle dust, I could add in a swooshy sound created in SoundSeed Air, with tremolo and more delay.   By taking generated sounds, experimenting with playback behaviors, DSP, and layering, very quickly a unique sound would be born.

Once I had the basic framework for a sound that I was happy with, I would connect Wwise to Unity via the Wwise profiler, view the visual effect real-time in game, and continue to tune the sound until it fit the gameplay sequence I was creating it for.   It was real-time sound creation with real-time sound generation!

We spent a lot of time exploring different methods to expand our pallet of sounds with our limited toolset.  There were a few of us working in the project at various times, and we borrowed liberally from each other’s tricks.  Someone would come up with a new way to get a different sound, and then that technique would proliferate into other sounds throughout the project.  Additionally, effects like escalating pitch over time on the same sound were a big win for creating sound variability and excitement, without requiring a new asset.

BA1-620x.jpg

The Results

There were a number of interesting outcomes of working this way, beyond the memory savings.   Artistically, creating sounds with such basic and pure elements was a fun and refreshing exercise in sound design.  I was entirely forced away from using real-world assets and literal sound design.  Technically speaking, not needing to use a DAW to create sounds made for a faster design process.  No time was spent creating game capture, importing it into the DAW, exporting your final asset, and repeating that process again if edits are needed.  The DAW was no longer an extra layer between the sound designer and the game, and it felt really good.  We were more closely integrated with the game than I have ever been able to work in the past. 

With real-time sound generation, the sky was the limit in terms of interactivity.  All sounds could be stretched, pulled, pitched, or delayed in whatever way worked best to match gameplay, and it was truly dynamic.  The audio content was a living, malleable, part of the gameplay.   With RJ Mattingly down the hall handling all of our scripting, it was quick work to add Real Time Parameter Controls or whatever else we wanted to use to push the interactivity.  Another enormous added benefit was that when art or design changed an asset, it was fast and easy to iterate on the sound and make it match the new timing.  You could just jump into the audio engine, change a few numbers that controlled the length of a sound, all while viewing the asset real-time in game to make sure it fit the visuals (can you imagine being able to do that on a large console project? It would be awesome).

Working on this game became an inspiration for what can be accomplished with truly generative, dynamic audio.  A tight feedback loop starting from sound creation through gameplay made for a great feeling workflow. The limited toolset forced us to hone in on how we could maximize the effectiveness of audio content without increasing the size.   Peggle Blast was a good reminder that creativity can flourish under constraints, and I can’t wait to keep exploring real-time sound generation techniques on future games, both large and small. 

This blog was originally published on Audio Gang

Jaclyn Shumate

Interactive Audio Director

Jaclyn Shumate

Interactive Audio Director

Jaclyn Shumate is an award-winning Game Audio Specialist that works across multiple platforms to create and implement AAA quality audio on casual games.

 @shujaxaudio

댓글

댓글 달기

이메일 주소는 공개되지 않습니다.


다른 글

ABZÛ - 도전! 물고기 10,000 마리의 게임 오디오 만들기

이 이미지를 가장 처음 봤을 때 여러분은 어떤 생각이 먼저 드나요? 저는 어떻게 하면 이 월드에 현실적이고 진짜 같은 사운드를 만들 수 있는지, 그리고 이 장면의 중심으로 헤엄을...

30.7.2019 - 작성자: 스티브 그린 (Steve Green)

합성 만으로 빗소리 만들기

몇 년 전 저는 원하는 모든 사운드를 합성할 수 있을까 하는 궁금증이 생겼습니다. 바람, 새의 노랫소리, 곤충 소리 등 다양한 자연 소리를 합성하기 시작했죠. 이런 작업에서는...

3.9.2020 - 작성자: 알렉산더 킬코(ALEKSANDR KHILKO)

가상 현실을 위한 훌륭한 잔향 제작하기

이 시리즈에서는 과거, 현재, 그리고 새로운 잔향 기술을 집중적으로 살펴보고 몰입적 공간적 관점에서 이 기술을 검토해봅니다. 이전 글에서 저희는 왜 가상 현실에서 몰입적인 잔향을...

17.2.2021 - 작성자: 브누아 알라리 (BENOIT ALARY)

텔 미 와이(Tell Me Why) | 오디오 다이어리 제 2부: 음악

Tell Me Why의 음악은 본질적으로 캐릭터의 서사와 감정을 뒷받침하도록 설계되었습니다. 게임의 이야기는 두 주인공에게 아주 자세하게 집중되어 있으며 생각에 잠기기 쉬운 느린...

22.6.2022 - 작성자: 루이 마르탱 (Louis Martin)

노 스트레이트 로드(No Straight Roads)의 음악적 게임 세계 설계하기

안녕하세요, 게임 오디오 여러분들! 저희가 Wwise와 Unreal Engine을 사용해서 '노 스트레이트 로드(No Straight Roads, NSR)'의 극도의 스타일링을...

29.3.2023 - 작성자: Imba Interactive (임바 인터랙티브)

Wwise로 게임 마스터링하기 | 제 1부: 게임 오디오 마스터링 접근 방법

게임은 다양한 구성에서 뛰어난 청각적 경험을 제공해야 합니다. 이것은 헤드폰의 3D Audio가 될 수도 있고, 스테레오 TV 스피커 혹은 광대한 7.1.4 Atmos 시스템이 될...

19.3.2025 - 작성자: 로익 쿠티에(Loïc Couthier) & 단제리 스켐브리(Danjeli Schembri)

다른 글

ABZÛ - 도전! 물고기 10,000 마리의 게임 오디오 만들기

이 이미지를 가장 처음 봤을 때 여러분은 어떤 생각이 먼저 드나요? 저는 어떻게 하면 이 월드에 현실적이고 진짜 같은 사운드를 만들 수 있는지, 그리고 이 장면의 중심으로 헤엄을...

합성 만으로 빗소리 만들기

몇 년 전 저는 원하는 모든 사운드를 합성할 수 있을까 하는 궁금증이 생겼습니다. 바람, 새의 노랫소리, 곤충 소리 등 다양한 자연 소리를 합성하기 시작했죠. 이런 작업에서는...

가상 현실을 위한 훌륭한 잔향 제작하기

이 시리즈에서는 과거, 현재, 그리고 새로운 잔향 기술을 집중적으로 살펴보고 몰입적 공간적 관점에서 이 기술을 검토해봅니다. 이전 글에서 저희는 왜 가상 현실에서 몰입적인 잔향을...