Star Citizen Aggiornamento Audio – Star Citizen Audio Update

Star Citizen Aggiornamento Audio – Star Citizen Audio Update

Star Citizen Aggiornamento Audio

Ciao a tutti!

Siamo orgogliosi di presentare la nostra prima iterazione di Wwise audio per Star Citizen. Passare a Wwise ci prepara a sostenere l’espansiva portata e la grandezza del nostro gioco.

Abbiamo passato prima di tutto qualche mese a migrare i contenuti dalla nostra soluzione middleware precedente, quindi ricostruito e reingegnerizzato il modo in cui l’audio viene implementato all’interno del CryEngine. Abbiamo accennato nei precedenti aggiornamenti la sua lista di caratteristiche, ma vi illustrerò alcuni dei punti chiave e ciò che otterremo. (Attenzione, la lista non è composta esclusivamente da funzioni comuni, e potreste incappare nell’uso di termini tecnici come ‘pipeline’, ‘workflow’ e ‘iterazioni’!)

La ridotta dipendenza tra sound designer e programmatori audio è probabilmente la nostra prima grande vittoria. Abbiamo ancora bisogno di risorse di programmazione audio per integrare il nostro suono nel gioco, sicuramente. Ma c’è molto che si può fare all’interno Wwise che prima avremmo dovuto definire tramite codici relativamente difficili da comprendere.

All’interno Wwise possiamo:

  •  Strutturare l’audio per autore, e re-sequenziare e ri-levellare i suoni per dargli infinite variabili.
  •  Quindi utilizzare strumenti di simulazione per testare come si comporteranno in un contesto di gioco.
  •  Integrare questi suoni in banchi di strutture game-friendly, impostarne lo streaming da disco/disco o farli rimanere residenti nella RAM principale etc.
  •  Impostare gli “agganci di eventi” che vengono convertiti in trigger e parametri del CryEngine.
  •  Una volta implementato, siamo in grado di connetterci e profilare il gioco stesso, e monitorare come si sta comportando l’audio del gioco, verificare la presenza di bug o picchi di risorse. E mescolare, modificare le proprietà dei suoni, il tutto in tempo reale.

Sembra un po’ poco, forse, ma più abbiamo queste pipeline di base solide e in posizione, più tempo abbiamo per fare qualcosa di più emozionante; come realizzare suoni impressionanti, in primo luogo, gestire le loro iterazioni, e mettere più impegno e considerazione sull’unione dell’intero paesaggio sonoro.

  • Figura 1: Alcune schermate del profiler, editor di posizione e il layout di miscelazione. Wwise è molto grigio, ma ci si fa l’abitudine.

wwise

Per un gioco della scala di Star Citizen, soprattutto mentre ci muoviamo per caricare il grande mondo online, questo è particolarmente importante. La nostra tecnologia di base è il fondamento per tutto ciò che facciamo e non possiamo cominciare a guardare le caratteristiche più emozionanti finché non saremo al 100% soddisfatti di questa integrazione.

Molte di queste tuttavia sono gestite dal buon Wwise ogni giorno. Con un set di strumenti di questo tipo, così come la migrazione del nostro audio precedente, abbiamo già preparato schiere di nuovi suoni per moduli come quello FPS, per l’universo persistente, il tutto già dentro Wwise. Molti di questi saranno a loro volta utilizzati per Squadron 42, così come per l’universo più grande.

Con un ciclo di rilascio continuo, dobbiamo essere in grado di avere fiducia nel nostro mix mentre andiamo avanti. A tal fine, Stefan ha istituito una cosiddetta sessione Soundcaster – essenzialmente un pallet di eventi che si possono innescare – che funge da punto di riferimento per stabilire il volume relativo a tutti i tipi di suoni nel gioco.

Da qui si può determinare quanto forte il rumore delle armi dovrebbero essere, e anche la silenziosità, per esempio, dell’atmosfera in relazione ad essi. Avere ciò a cui riferirsi sembra banale, ma la semplicità di averlo a portata di mano, avere una prospettiva dell’intero progetto in qualsiasi momento, al di fuori dell’esecuzione del gioco, rende molto più possibile garantire che stiamo lavorando a uno standard del volume analogo; una cosa in meno di cui preoccuparsi e un altro passo verso un’esperienza di qualità superiore.

Ecco alcune parole da altri membri del team su quello che abbiamo ottenuto grazie al passaggio a Wwise e alcuni esempi di Wwise in azione!

Graham Phillipson, Programmatore Audio

Dal punto di vista del codice Wwise ci permette di attivare eventi che sono più potenti di un semplice “riprodurre l’audio” e “stop”. Ciò significa che in molti casi si possono aggiungere semplici “agganci audio” nel gioco ed il sound designer li può usare per attivare eventi audio complessi che riproducono / arrestano suoni, influiscono sulle modifiche al mixaggio e cambiano interruttori e parametri di stato. E’ anche molto utile per la profilazione e il debug; quando ci colleghiamo al gioco possiamo vedere i grafici con il numero di instanze, l’utilizzo della CPU, il numero di flussi di streaming e l’utilizzo di banda e della memoria, e possiamo mixarli tra loro. Anche le funzioni “Solo” e “mute” sono strumenti di debug utili. Il visualizzatore oggetti 3D ci dà una buona visione di quello che i suoni stanno riproducendo nel mondo di gioco, senza tutti quei fastidiosi grafici del gioco a intralciarci.

Luca Hatton, Senior Designer suono

Mi sono unito al team lo scorso luglio, quando usavamo la nostra precedente soluzione middleware audio e stavamo passando a questa versione, è bello finalmente esserci stabiliti in Wwise con i nostri contenuti audio migrati. E’ stato molto gratificante, proprio di recente, sentire di nuovo Betty nella cabina di guida e le parti meccaniche di entrata / uscita della nave che funzionavano ancora nel nuovo motore audio. Per noi, lavorando internamente, l’avvio del processo di conversione Wwise ha fatto sì che molti mesi fa abbiamo iniziato di nuovo con nessun suono nella nostra build interna, e lentamente è stata sonicamente restaurata. Quanto è fantastico essere a questo nuovo punto di partenza dove sono certo che l’aggiunta dei suoni filerà più liscia che mai!

La vittoria più importante secondo me è che ora abbiamo uno strumento pulito, ordinato e di facile manutenzione per tutti i nostri assets sonori e tutti i nostri processi real-time. Quello che voglio dire è che qualsiasi suono può essere rinominato, rimaneggiato, classificato in maniera diversa e questo non influirà sull’aggancio che abbiamo in gioco. Significa che possiamo cercare di strutturare i nostri dati in un modo, cambiare idea per qualsiasi motivo, e ciò non causerà un sacco di rielaborazione. Grazie a questo, ora la produzione di contenuti audio sta procedendo in un modo molto più sistematico rispetto al passato; stiamo creando sistemi robusti che si rivolgono a scenari generali, piuttosto che la lavorazione specifica di suoni una tantum che dipendono da specifiche animazioni / scripting.

Il rilascio Wwise è anche rappresentante di una squadra audio più grande e più snella rispetto a un anno fa. Con così tanti sound designer e assets che vengono aggiunti ogni giorno, le nostre nuove convenzioni di denominazione e workflow consentono decisioni più facili, che riescono a filtrare attraverso una visione di interezza del gioco. Se qualcosa che non ha senso è messo nel nostro progetto Wwise, o non è chiaro, basta solo avviare una rapida chat di gruppo e cambiarla. In questo modo, è più facile che il lavoro sia controllato, così possiamo verificare la sanità dei contenuti di ciascuno di noi o ascoltare nuovi suoni molto facilmente.

(Tutto questo ricapitolare mi ricorda, devo subito cambiare il nostro parametro dei propulsori “RPM” in “Spinta”. Al momento stiamo utilizzando un parametro denominato “RPM” in Wwise (lo stesso nome era utilizzato nel FMOD) per gestire i suoni dei propulsori, quindi devo cambiarlo in qualcosa che ha più senso. I nostri propulsori in realtà non “girano per minuto”. Ora posso farlo facilmente!)

Matteo Cerquone, Progettista Junior suono

Ho avuto la fortuna di far parte del team CIG Audio dopo la transizione da FMOD a Wwise, ho saltato la prima parte del processo di conversione degli assets al nuovo motore audio il che mi ha dato più libertà in termini di implementazione dell’audio.

Lavorare con Wwise è un esperienza fantastica in quanto ci consente di manipolare, modificare e mixare audio in tempo reale in base a ciò che sta accadendo in gioco.

Mi sono trovato a lavorare sul sound design per i missili, e l’implementazione di questi assets in gioco utilizzando Wwise mi ha permesso di aggiungere variazioni a seconda della distanza e della velocità: ogni missile, una volta lanciato, ha tre diversi cicli che descrivono in che misura questo oggetto è distante dalla prospettiva dell’ascoltatore, il primo ciclo è composto da uno livello-razzo e diversi suoni caratteristici che descrivono la marca e il tipo di missile (nella maggior parte dei casi questo sarebbe un segnale acustico specifico), il secondo ciclo è una prospettiva più lontana del razzo stesso e il terzo ciclo è un suono di un razzo lontano.

Con Wwise possiamo mescolare questi tre livelli e aggiungere parametri in tempo reale, quali effetti di volume o Doppler secondo quanto lontano l’oggetto è dal giocatore. Quando sei inseguito da un missile ora sentirai chiaramente quanto è lontano (mix tra i vari cicli, il volume, filtro passa-basso, ecc…) e quanto velocemente (grazie all’effetto Doppler) si stia avvicinando, inoltre se un missile è sufficiente vicino si può riconoscere la marca e il tipo di missile prima di essere colpiti (o scappare se siete fortunati).

Un approccio simile è stato utilizzato per le esplosioni di tali missili, abbiamo creato diverse esplosioni dei suoni in base alla marca e al tipo di missile, se il missile ha colpito o no e se è successo lontano dal giocatore o vicino. Anche in questo caso Wwise ci fornisce gli strumenti non solo per innescare il suono corretto, ma anche di fonderli insieme e creare variazioni (se sei abbastanza vicino sarai anche in grado di sentire il suono detriti della nave che è stata colpita).

Un altro grande aiuto è la possibilità di avere un mix più pulito, quando lavoravo con i propulsori principali per alcune delle navi, volevo attutire il suono del motore principale quando l’overdrive veniva utilizzato, con Wwise potrei usare un metro che controlla il volume del motore principale secondo quanto è forte l’overdrive (side-chaining), così ora ogni volta che l’overdrive viene utilizzato, il suono del motore primario viene automaticamente attutito.

Darren Lambourne, Senior Designer suono

Wwise è uno strumento molto liberatorio e creativo. Essere in grado di muoversi rapidamente da un concetto, un’idea di alto livello, a qualcosa di funzionale nel motore di gioco è così cruciale per canalizzare l’ispirazione iniziale.

La parte diagnostica non è seconda a nessuno, ci permette di arrivare al cuore di un problema rapidamente e risolverlo, piuttosto che applicare solo una patch per mascherare il problema. Questo è importante in un progetto di queste dimensioni, ci sono già un numero sconcertante di sistemi audio nel nostro universo di gioco e il numero cresce ogni giorno. Stiamo cercando di creare qualcosa di veramente speciale per l’audio in Star Citizen. Tenere sott’occhio il progetto nel suo complesso e scavare in profondità le aree problematiche che possono influenzare sia la fedeltà e la scorrevolezza dei nostri sistemi audio è assolutamente essenziale per garantire l’esclusione di ciò che è venuto male sottolineando invece ciò che c’è di buono.

Jason Cobb, Senior Sound Designer:

Dal mio punto di vista il passaggio del middleware audio da Fmod a Wwise è stato un processo lungo un anno che ha avuto inizio con la prima ingenua aspirazione di un rapido cambio e si è concluso solo dopo un estenuante incremento di molti monumentali cambiamenti.

Da un punto di vista dei contenuti audio, prima e più velocemente avessimo eseguito la conversione, meno sarebbe stata la quantità di contenuti e implementazioni di Fmod che sarebbero dovuti essere rifatti. Sembrava un gioco da ragazzi, ma purtroppo la situazione non consentiva una commutazione veloce con tutti che si stavano concentrando su ogni prossima release o versione demo di quell’anno.

Nel maggio 2014 abbiamo esaminato una integrazione di Wwise in CryEngine che era stata fatta da una società esterna. Questo è stato prima che Crytek avesse rilasciato una integrazione ufficiale Wwise e non avevamo ancora alcun dettaglio su di esso o un idea di quando sarebbe stato disponibile che è stata aggravata dall’incertezza della loro situazione finanziaria al momento. Per un breve periodo sembrava che avessimo trovato un percorso veloce per integrare direttamente Wwise e minimizzare il lavoro di commutazione dei dati.

Di fatto a quel tempo non c’erano abbastanza ingegneri disponibili per dedicarsi all’integrare Wwise con l’esempio che ci era stato fornito, tuttavia il nostro ingegnere, da solo, ci ha provato. Anche se l’utilizzo di una integrazione di WWISE nostrana o di terze parti avrebbe reso molto più difficile le future integrazioni con l’SDK del CryEngine.

Scegliendo l’integrazione Crytek-Wwise anticipata, abbiamo ridotto al minimo la quantità di divergenza tra il motore di gioco Star Citizen e la base SDK del CryEngine. Anche dal punto di vista audio questo ha portato alla creazione e all’implementazione di molti più contenuti audio con Fmod, che ha reso il compito di convertire questi contenuti audio e implementazioni di Fmod, un lavoro molto più grande e più difficile.

C’è voluto fino alla fine di settembre 2014 per dare il via ad un’integrazione di CryEngine che comprendeva un’integrazione di Wwise. Invece di sostituire direttamente le chiamte di Fmod con le chiamate di Wwise nel loro codice di gioco come l’altra integrazione d’esempio che abbiamo visto, la loro versione convertiva le chiamate audio di gioco al nuovo “Livello di traduzione Audio” di nuova concezione, come un’astrazione per consentire differenti middleware audio di essere scambiati dietro le quinte – una grande caratteristica, se si vende un motore di gioco che ha bisogno di un sacco di opzioni per una varietà di clienti, ma forse un po’ troppe per ciò che avevamo bisogno in Star Citizen in quel momento. Ad ogni modo, è sempre bene avere opzioni future e abbiamo da allora fatto maggior ricorso a questo livello audio di traduzione / astrazione per memorizzare i metadati degli eventi.

Purtroppo l’esistenza di questo livello di astrazione e dei suoi file di dati associati, ha creato un nuovo passo nel flusso di lavoro dei contenuti audio che ha richiesto ai sound designer di prendere il lavoro che avevano appena fatto nello strumento di progettazione di Wwise e manualmente creare nuovi oggetti in riferimento a questi stessi eventi, parametri, interruttori, stati e banchi sonori, salvati in file ATL e gestiti nel browser dei controlli audio. I primi giorni di questo flusso di lavoro sono stati un po’ primitivi e lenti e molto differenti dalla liscia esperienza d’uso che ho avuto con Wwise in qualsiasi altro motore di gioco che ho spedito in passato. Per questo motivo ho deciso di realizzare uno script per una soluzione di workflow che semplicemente crea in automatico i file ATL a noi necessari quando costruiamo banchi sonori nello strumento di progettazione di Wwise. Dopo di che i sound designer non avranno passaggi aggiuntivi per creare manualmente e gestire questi file ATL in CryEngine se non assicurarsi che vengano selezionati ad ogni aggiornamento. Possiamo utilizzare immediatamente i nostri suoni nel motore di gioco non appena li costruiamo in un banca dati sonora.

Nel frattempo, il team audio stava ancora lavorando in Fmod per la serie di release del gioco e della demo, con un sacco di nuovi ed eccitanti contenuti di gioco e suoni andando avanti così per il resto dell’anno. Il ramo di integrazione Wwise continuava a fare progressi, ma la sfida di completare tutto il lavoro lato codice in collaborazione con dipendenze da altre integrazioni di sviluppo e rilasci del gioco, ha fatto sì che la finestra di rilascio di WWISE in cui potesse essere integrato “live” e in modo sicuro nel principale flusso di sviluppo del gioco fosse possibile solo un paio di mesi prima.

Assieme alla linea dedicata di tecnici audio ed ulteriori sound designer che sono stati portati a bordo, siamo stati in grado di iniziare sul serio il compito di convertire i contenuti audio e l’implementazione. In tutti i file del gioco abbiamo estratto dati per le stringhe degli eventi fmod e messo a punto una tabella di conversione per inserire le nuove stringhe evento WWISE / innesco ATL, che sono stati poi convertiti per l’automazione di scripting di ricerca e sostituzione attraverso lotti di centinaia di file di dati alla volta.

Per tagliare corto, dal momento che abbiamo impacchettato tutto il codice audio e le implementazione delle conversioni dei dati ad oggi, abbiamo toccato innumerevoli migliaia di file di dati di gioco e creato quasi 10000 nuovi eventi Wwise e oltre 1000 banchi di suoni. E’ una bella sensazione finalmente essere riusciti a finire questo compito e ora di andare avanti con la parte veramente divertente di realizzare nuovi contenuti, ancora una volta, per non parlare del fatto che ora abbiamo gli strumenti necessari per meglio perfezionare, modulare, mixare e ottimizzare, i suoni del gioco con le caratteristiche fornite da Wwise e dall’ATL.

In ultima analisi, non abbiamo ancora finito, ma abbiamo fatto parecchia strada – Ci sentiamo in una posizione molto migliore per continuare a migliorare e continuare a costruire. Anche se siamo orgogliosi di ciò che stiamo ottenendo insieme, non siamo soddisfatti ancora al 100%, ci rendiamo conto di avere davanti un sacco di lavoro da fare e ora abbiamo più strumenti in mano per farlo.

Come sempre apprezziamo le vostre risposte e segnalazioni di eventuali problemi con l’audio del nostro gioco. Nella sezione ‘Chiedi a uno sviluppatore’ del forum, c’è un topic “audio” che è dove ci riuniamo e rispondiamo alle richieste sull’audio. Grazie per averci ascoltati!

fonte: https://robertsspaceindustries.com/comm-link/transmission/14853-Star-Citizen-Audio-Update

Traduzione a cura di: BinoX

Lascia un commento