Partendo dalle funzionalità delle interfacce di programmazione si è arrivati ad avere dei middleware che spostano il lavoro dal programmatore all'audio designer, permettendo la realizzazione di contenuti interattivi complessi senza dover ricorrere al supporto via codice. Questo processo non può comunque prescindere dalla collaborazione tra Audio Designer e Audio Programmer, ma sposta la complessità rendendo più efficiente il processo.
6. “Audio production is only half the final product.
How it is implemented is the other half.”
7. Audio API
● Interfaccia tra applicazione e driver del sistema
audio
● Astrazione tra sistema audio e programmatore
● Funzioni che permettono all'ambiente di gioco di
comunicare con i dispositivi audio in tempo reale
8. Funzionalità base dell'Audio API
● Inizializzazione
● Loading (static, streaming)
● Play, Pause
● Stop
● Suoni loop e one-shot
● Volume
● Pan
● Canali Audio
9. ● Audio 3D
● Surround
● Fade
● Pitch
● Environmental Audio
● Scripting
Funzionalità avanzate dell'Audio API
10. Audio API principali
Su PCMac la scelta è limitata a:
● Windows: Xaudio2
● MacOS: Core Audio
Sulle console vi sono audio API proprietarie:
● Nintendo fornisce ATK per SWITCH e 3DS
● Microsoft fornisce Xaudio2 per Xbox ONE
● Sony fornisce Scream per PS4
● Iphone fornisce Core Audio
11. Audio API Low Level
https://docs.microsoft.com/en-us/windows/desktop/api/_xaudio2/
12. Audio Wrapper
● interfacce di programmazione che si appoggiano alle
API vere e proprie per creare una propria interfaccia
di più alto livello spesso crossplatform
● Façade pattern
● Tipicamente ogni videogioco ha un audio wrapper
creato internamente o acquistato come middleware
Game
Engine
API PC
API 3DS
API PS4
Game
Engine
API PC
API 3DS
API PS4
Wrapper
13. FMOD API Low Level
https://www.fmod.com/resources/documentation-api?page=content/generated/lowlevel_api_interfaces.html#/
System
Sound
ChannelControl
Channel
ChannelGroup
SoundGroup
DSP
DSPConnection
Geometry
Reverb3D
14. Audio Middleware
● GUI: applicazione indipendente, permette
all'audio designer di importare, configurare
e testare l'audio del gioco.
● API: audio wrapper