Cover
Copyright
Credits
About the Author
About the Reviewers
www.PacktPub.com
Table of Contents
Preface
Chapter 1: Audio Concepts
Sound waves
Analog and digital audio
Multi-channel audio
Audio file formats
Summary
Chapter 2: Audio Playback
Understanding FMOD
Installing FMOD Ex Programmer's API
Creating and managing the audio system
Loading and streaming audio files
Playing sounds
Checking for errors
Project 1 – building a simple audio manager
Class definition
Initialization and destruction
Loading or streaming sounds
Playing sounds
A note about the code samples
Summary
Chapter 3: Audio Control
The channel handle
Controlling playback
Controlling the volume
Controlling the pitch
Controlling the panning
Grouping channels together
Controlling groups of channels
Project 2 – improving the audio manager
Class definition
Initialization and destruction
Loading songs and sound effects
Playing and stopping sound effects
Playing and stopping songs
Controlling the master volume of each category
Summary
Chapter 4: 3D Audio
Positional audio
Positional audio in FMOD
Creating an audio source
Setting the audio source position and velocity
Setting the audio source direction
Setting the audio source range
Setting the audio listener properties
Integration with a game
Reverb
Reverb in FMOD
Creating a reverb object
Setting reverb properties
Setting reverb position and radius
Setting the default ambient reverb
Obstruction and occlusion
Obstruction and occlusion in FMOD
Effects
Effects in FMOD
Example 1 – time stretching
Example 2 – simple radio effect
Summary
Chapter 5: Intelligent Audio
Audio files versus sound events
Introducing the FMOD Designer
Simple events
Examples of simple events
Avoiding repetitive sound effects
Creating a footsteps sound loop
Creating a breaking glass sound effect
Creating an ambient track of singing birds
Multi-track events
Examples of multi-track events
Creating an interactive footsteps sound loop
Simulating the sound of a car engine
Creating a complex ambient track of a forest
Interactive music
The vertical approach (re-orchestration)
The horizontal approach (re-sequencing)
Calling sound events from the game code
Summary
Chapter 6: Low-level Audio
Representing audio data
Playing audio data
Loading a sound
Playing a sound
Pausing a sound
Looping a sound
Changing volume
Changing pitch
Changing panning
Mixing multiple sounds
Implementing a delay effect
Synthesizing a sound
Summary
Index