Segreti tecnologici dietro il cast di personaggi interattivi di "Cosmonious High" PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Segreti tecnologici dietro il cast di personaggi interattivi di "Cosmonious High's".

Segreti tecnologici dietro il cast di personaggi interattivi di "Cosmonious High" PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Cosmonissimo contiene 18 personaggi di sei specie, tutti creati da un team con zero animatori dedicati. Ciò significa tantissimo codice per creare comportamenti realistici e interattività di qualità Owlchemy! Il “sistema di caratteri” in Cosmonissimo è un gruppo di circa 150 script che insieme rispondono a molti problemi di progettazione e animazione relativi ai personaggi. Che si tratti del modo in cui si muovono, guardano le cose, interagiscono con gli oggetti o reagiscono al giocatore, è tutto altamente modulare e quasi completamente procedurale.

Questa modularità ha consentito a un team di content designer di creare e animare ogni singola riga di dialogo del gioco e di far sì che i personaggi si sentissero vivi e coinvolgenti anche quando non erano nel mezzo di una conversazione. Ecco come funziona.

Articolo ospite di Sean Flanagan ed Emma Atkinson

Cosmonissimo è un gioco del veterano studio VR Owlchemy Labs di frequentare una scuola superiore aliena che è assolutamente priva di malfunzionamenti! Sean Flanagan, uno degli artisti tecnici di Owlchemy, ha creato il sistema di personaggi principali di Cosmonious High tra molti altri sforzi. Emma Atkinson fa parte del team di Content Engineering, collettivamente responsabile dell'implementazione di ogni sequenza narrativa che vedi e ascolti durante il gioco.

Il lato del codice

Quasi tutto il codice nel sistema dei caratteri è riutilizzabile e condiviso tra tutte le specie. I personaggi dentro Cosmonissimo sono un po' come pupazzi modulari: costruiti con molte delle stesse parti nella parte inferiore, ma con grafica e contenuti unici nella parte superiore che li individualizzano.

Dall'alto, il codice del sistema di caratteri può essere suddiviso in moduli ed driver.

moduli

Ogni personaggio in Cosmonissimo ottiene il suo comportamento dal suo insieme di moduli di carattere. Ogni modulo del personaggio è responsabile di uno specifico dominio di problemi, come muoversi o parlare. Nel codice, ciò significa che ogni tipo di carattere è definito dai moduli che gli assegniamo. I personaggi non sono tenuti a implementare ciascun modulo nello stesso modo, o a implementarlo affatto (ad esempio, l'Interfono non può agitare).

Alcuni dei nostri moduli utilizzati più frequentemente sono stati:

CarattereLocomozione – Responsabile della locomozione. Specifica il comportamento di locomozione di alto livello comune a tutti i personaggi. Il movimento effettivo deriva da ciascuna implementazione. Tutti i personaggi "radicati", Bipid e Flan, utilizzano CharacterNavLocomotion, che li sposta sulla scena Nav Mesh.

CaratterePersonalità – Responsabile del modo in cui i personaggi reagiscono al giocatore. Questo modulo ha un piede nella progettazione dei contenuti: la sua responsabilità principale è ospitare le risposte che i personaggi hanno quando i giocatori li salutano, insieme a qualsiasi opzione di conversazione. Ospita anche alcune risposte "automatiche" comuni a tutto il cast, come la ricezione automatica (catturare tutto ciò che lanci) e lo sguardo automatico (restituire il contatto visivo).

CarattereEmozione – Tiene traccia delle emozioni attuali del personaggio. Altri componenti possono aggiungere e rimuovere richieste di emozioni da uno stack interno.

CharacterVision – Tiene traccia degli attuali bersagli visivi del personaggio. Altri componenti possono aggiungere e rimuovere richieste di visione da uno stack interno.

Carattere Discorso – Come parlano i personaggi. Questo modulo si interfaccia con Seret, il nostro strumento di dialogo interno, direttamente per mettere in coda e riprodurre clip audio VO, inclusi eventuali sottotitoli associati. Espone alcuni eventi per la riproduzione VO, l'interruzione, il completamento, ecc.

È importante notare che l’animazione è una preoccupazione separata. Il modulo Emozione non fa sorridere un personaggio e il modulo Visione non fa girare la testa al personaggio: memorizza semplicemente le emozioni attuali e gli obiettivi visivi del personaggio. Script di animazione riferimento questi moduli e sono responsabili di trasformare i loro dati in una performance visibile.

Guidatori

I moduli che un personaggio utilizza collettivamente delineano ciò che quel personaggio può fare e possono persino implementare quel comportamento se è sufficientemente universale (come Discorso e Personalità). Tuttavia, la maggior parte del comportamento del personaggio non è catturabile a un livello così alto. Il lavoro sporco viene affidato ad altri script, collettivamente noti come autisti-che costituiscono la vera “carne” del sistema caratteriale.

Nonostante il loro obiettivo più limitato, i driver sono comunque scritti per essere il più riutilizzabili possibile. Alcuni dei driver più importanti, come CharacterHead e CharacterLimb, rappresentano in modo invisibile alcune parti di un personaggio in modo separato da qualsiasi tipo di carattere specifico. Quando afferri la testa di un personaggio con Telecinesi, chiedi a un personaggio di lanciare qualcosa o digli di riprodurre una clip mocap, questi due script stanno facendo il lavoro vero e proprio di spostare e ruotare ogni fotogramma secondo necessità.

I driver possono essere liberamente suddivisi in driver logici ed driver di animazione.

I driver logici sono come la testa e gli arti: non fanno nulla di visibile, ma catturano ed eseguono alcune parti riutilizzabili del comportamento del personaggio ed espongono informazioni importanti. Driver di animazione riferimento driver logici e utilizza i loro dati per creare animazioni di personaggi: spostare le ossa, scambiare mesh, risolvere IK, ecc.

Anche i driver dell'animazione tendono ad essere più specifici per ciascun tipo di personaggio. Ad esempio, chiunque abbia gli occhi usa alcune istanze di CharacterEye (un driver logico), ma un Bipid in realtà anima il proprio eye shader con BipedAnimationEyes, un Flan con FlanAnimationEyes, ecc. Dividere il lavoro di "un occhio" in due parti in questo modo consente per animazioni uniche per specie, tutte supportate dalla stessa logica.

Continua a pagina 2: Il lato contenuti »

Il post Segreti tecnologici dietro il cast di personaggi interattivi di "Cosmonious High's". apparve prima Strada per VR.

Timestamp:

Di più da Strada per VR