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

评论

留下回复

您的电子邮件地址将不会被公布。

更多文章

常用智能手机的声音响度和频响

29.7.2019 - 作者:杨杰 (Digimonk)

如何利用Wwise实现耳机监听条件下的3D环绕立体声效果

24.2.2020 - 作者:王润琦

如何以音频为职业谋求发展

与其他行业相比,通往音频行业的成功之路可能更为曲折。那么问题来了,如何在音频行业谋求发展?面对众多职业选择,到底从哪里做起呢?...

21.9.2020 - 作者:A Sound Effect

Waapi 批处理工具:CA_Waapi_Tools

引子 相信很多声音设计师在使用 Wwise设计软件进行音频整合的时候,会遇到一些重复性很强的工作,比如:大量的导入/替换样本,生成事件,设定 Switch...

23.12.2020 - 作者:楼哲文

Wwise Unity 速查表

今天我们来说说 Wwise Unity Integration。这些年来,相关学习资源越来越丰富,随时都可以拿来参考。就拿 Audiokinetic 官方资源来说,YouTube...

19.1.2021 - 作者:麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup)

Wwise Tour 2022 中国 - 视频回放

《哈利波特: 魔法觉醒-魔法世界的风格化音频设计》 《哈利波特:...

9.12.2022 - 作者:Audiokinetic (音频动能)

更多文章

常用智能手机的声音响度和频响

如何利用Wwise实现耳机监听条件下的3D环绕立体声效果

如何以音频为职业谋求发展

与其他行业相比,通往音频行业的成功之路可能更为曲折。那么问题来了,如何在音频行业谋求发展?面对众多职业选择,到底从哪里做起呢?...