In realtà ci sono alcuni approcci abbastanza standard per progettare la riproduzione di musica in un gioco. Quando si progetta un sistema di riproduzione musicale, i problemi che si incontrano riguardano la creazione di transizioni fluide, la garanzia di una varietà sufficiente e la creazione di un senso di interattività con la musica. Il titolo della tua domanda, "cambiare la musica di sottofondo senza intoppi", mi dice che la tua principale preoccupazione sono le transizioni, quindi è quello che mi rivolgerò principalmente per ciascun metodo.
Metodo 1: strati e gambi
Un approccio per la creazione di sistemi di riproduzione musicale fluidi nei giochi, quello che Patrick Hughes chiamava "il modo AAA", è quello di costruire la tua musica in strati (a volte anche chiamati stem) in modo che non ci sia una versione definitiva della traccia. Invece, potresti avere una singola traccia di base in esecuzione in modo coerente, con variazioni melodiche, ritmiche, armoniche che vengono riprodotte su di essa.
Di solito (di nuovo il merito a Patrick Hughes) costruisci questi attorno a un motivo comune che attraversa ogni strato di elemento in un brano musicale, o addirittura attraverso tutta la musica del gioco. Un buon esempio di motivo non melodico è l'uso della scala frigia di Martin O'Donnell nei giochi di Halo ( http://www.1up.com/features/music-halo-reach ). Normalmente, ciascuna di queste tracce musicali componenti è allineata per essere riprodotta in sincronia su una linea temporale tra loro. Sebbene sia possibile creare livelli musicali che non dipendono necessariamente da un tempo coerente e da una timeline sincronizzata, o che possono funzionare bene in più contesti di tempo e timeline.
Poiché ogni strato è progettato per funzionare insieme, è del tutto possibile avere un'unica traccia musicale a più livelli che viene riprodotta durante l'intero gioco, facendo lievi transizioni tra i livelli all'interno di se stesso per indicare i cambiamenti dello stato del gioco.
Metodo 2: ramificazione
Dici di avere già prodotto brani musicali, quindi questo implica che hai già in mente una direzione specifica: ramificare la musica. Con la musica ramificata, la tua preoccupazione principale è la transizione tra i brani musicali che sono stati specificati per essere riprodotti in particolari sezioni del gioco. Puoi ottenere varietà dividendo i tuoi singoli segmenti musicali in loop che hanno un paio di versioni diverse, in modo che la stessa versione non suoni mai due volte in due iterazioni e non inizi sempre allo stesso modo.
Un modo per gestire le transizioni nella semplice musica ramificata è quello di scrivere più musica che agisce semplicemente come una transizione da queste tracce musicali esistenti ad altre. Anche se non è possibile coprire tutte le possibili transizioni musicali, puoi anche utilizzare le "tracce del connettore" per far terminare una traccia musicale all'inizio del caso in cui stai cercando di evitare semplici cambi di musica in dissolvenza in entrata e in uscita.
Metodo 3: CCC-Combo
È anche importante notare che i due principali approcci discussi qui (strati e ramificazioni sono quelli che vengono comunemente chiamati) possono coesistere concettualmente. "Branching" è un termine e una descrizione così semplici di ciò che sta accadendo che potresti benissimo ramificarti tra sistemi musicali a più livelli. Ciò richiede spesso un sistema di riproduzione semi sofisticato, quindi devi bilanciare ciò che vale la pena dedicare al tuo tempo per l'implementazione.
Metodo 4: Pragmatismo e riproduzione musicale più semplice
E, naturalmente, puoi sempre solo sfumare e sfumare la tua musica, se necessario. Nessuna vergogna se è quello che sembra giusto, o non è possibile scrivere tracce connettore. Meglio di così dei tagli duri a un brano musicale completamente estraneo - sembrerebbe piuttosto terribile.
Vorrei anche rivolgermi alla tua idea di "canzoni silenziose". Non è male, ma cosa succede quando inizi a riprodurre una traccia di 300 secondi per 5 secondi, quindi entri immediatamente in uno stato in cui devi passare a un'altra traccia? Aspettare che passino i restanti 295 secondi sembra poco pratico se ti interessa davvero fare quella transizione musicale.
Tuttavia, se la musica è puramente musica di sottofondo e il suo scopo fondamentale è quello di fornire semplicemente uno stato d'animo generale, allora la "semplice lista di musica di sottofondo" è un modo perfettamente legittimo di pensarci. A questo punto stai parlando di una playlist musicale come quella che avresti creato su iTunes o Windows Media Player (è ancora vero?), Quindi dovresti implementarla pensando a quello.
Ulteriori letture
Per saperne di più sugli approcci standard per la progettazione della riproduzione musicale nei giochi, dovresti dare un'occhiata ai materiali di apprendimento per due dei più grandi strumenti di middleware audio interattivi che vedono un uso comune nel settore, FMOD e Wwise.
Wwise ha un buon materiale di riferimento in questa pagina . L'articolo "Making Interactive Music for Games" è particolarmente utile in quanto approfondisce le informazioni che ho scritto qui. Il canale Youtube di FMODTV contiene video con Stephan Schutze che coprono FMOD Studio nel suo insieme, incluse le parti che possono essere utilizzate per progettare sistemi di riproduzione musicale. Imparare come questi strumenti affrontano questo problema può aiutarti a pensare a come affrontare le esigenze del tuo gioco.