Quale tecnica di animazione viene utilizzata in "Non morire di fame"? [chiuso]


12

Durante alcuni giochi nel mio tempo libero, mi sono imbattuto in un gioco di sopravvivenza 2D / 3D di sopravvivenza. Apparentemente il gioco è stato realizzato in SDL e GLUT (non morire di fame) ma ciò che mi ha davvero stupito sono state le animazioni del gioco.

Le animazioni sono estremamente fluide e fluide. Non vi è alcuna distorsione durante l'animazione, ciò che di solito accade nelle animazioni fatte a mano è che i pixel vengono rimossi, le animazioni sono irregolari e semplicemente non sono così fluide. Mi ha fatto pensare a come sono riusciti a realizzare una tale qualità di animazioni. Erano davvero fatti a mano (se lo fossero, allora doveva aver preso un artista di grande talento), è l'animazione delle ossa o stanno usando un'altra tecnica?


2
Suggerirei di contattare gli sviluppatori stessi per avere informazioni così precise sulle tecnologie utilizzate. Chiunque non abbia funzionato sul gioco può semplicemente stipulare senza essere sicuro.
DogDog,

2
Bene, quando ho posto questa domanda ho formulato alcune ipotesi, che sono: 1. Contattare gli stessi sviluppatori ha una probabilità molto bassa di successo (perché qualcuno dovrebbe condividere i propri segreti con una persona a caso e quanto tempo hanno a disposizione per controllare le loro e-mail ?) 2. Posso ottenere una risposta molto più veloce su questo sito Web, che consiste di persone che hanno anni di esperienza in background e di cui apprezzo le risposte, anche se sono solo speculazioni e per ultimo, gli sviluppatori stessi potrebbero utilizzare questo sito e potrebbe rispondere a questa domanda ma è molto lontano.
Bugster,

1
La maggior parte dei programmatori è davvero aperta a condividere le proprie conoscenze e non credo che il modo in cui rendono le loro animazioni 2D sia un segreto, penso che valga la pena provare. Forse se dici loro un po 'di te e perché vuoi che possano essere più interessanti nell'aiutarti o nel darti consigli.
DogDog,

1
Vedi le FAQ su " quale tecnologia ha utilizzato un determinato gioco " Chiedere come ottenere un effetto simile sarebbe una domanda molto migliore. (Anche se probabilmente un duplicato di qualcosa già sul sito.)
MichaelHouse

Questa domanda sembra fuori tema perché riguarda la tecnologia utilizzata da altri giochi.
MichaelHouse

Risposte:


40

Mi chiamo Kevin e sono programmatore / designer presso Klei. Ho scritto un sacco di cose di animazione che abbiamo usato nella serie Shank, Mark of the Ninja e Don't Starve.

I nostri animatori lavorano in Flash. Abbiamo un concetto di "costruzione" di un personaggio che è un insieme di simboli di parti del corpo con viste multiple. A seconda della fedeltà di un determinato gioco, ci sono più o meno parti del corpo con più o meno "vista". Penso che Shank avesse circa 30 parti del corpo con 1-2 dozzine di viste ciascuna, mentre Wilson di Don't Starve ne aveva circa una dozzina con solo lo stesso numero di viste. Gli script JSFL personalizzati vengono utilizzati per analizzare le linee temporali dei simboli flash, quindi creare le immagini pertinenti come una serie di file PNG ad alta risoluzione, insieme a un mucchio di metadati che vengono inseriti in un XML.

Data la creazione di un personaggio, i nostri animatori creano un nuovo simbolo radice in un altro file per contenere un pezzo di animazione per quel personaggio. In quella linea temporale, creano il personaggio fuori dai simboli di costruzione e lo spostano, lo interpolano, ecc. Per creare singole animazioni (che sono delimitate usando le etichette dei frame). Lo script esportatore esporta queste linee temporali in XML, prendendo nota della trasformazione 2d di ogni pezzo di costruzione e della vista che mostra.

Con tutte queste informazioni esportate in XML e PNG, eseguiamo una serie di script Python per convertirli in dati di runtime. Uno script ridimensiona, atlanti e taglia tutte le trame e le converte in (uno o più) formati compressi specifici della piattaforma. Un altro script elabora i dati di animazione XML in un formato binario più efficiente per il caricamento.

In fase di esecuzione, è davvero solo una questione di mostrare i giusti simboli di costruzione con le giuste trasformazioni e vista.

La costruzione di questo sistema ha richiesto molto tempo ed è stata perfezionata quando lo abbiamo spostato da un gioco all'altro. Ci sono molti dettagli che sto esaminando (come il modo in cui gestiamo la stratificazione e lo scambio di costumi runtime), ma questo è il contorno generale.

Naturalmente, la tecnologia che utilizziamo è probabilmente l'aspetto meno importante del "Klei Look". La parte più importante è che abbiamo un sacco di animatori davvero bravissimi. :)

Spero comunque che questo aiuti. Se hai altre domande su Don't Starve, puoi fermarti ai nostri forum, dove di solito sono abbastanza felice di parlare con il negozio.


1
grazie per l'approfondimento. Penso che il sistema che hai davvero aiuta a facilitare personaggi fantastici e altamente fluidi, che la maggior parte dei team di budget ridotto (e alcuni team di budget elevato) potevano solo immaginare. È certamente sicuro dire che se stessi facendo l'arte dello sprite, senza interpolazione / trasformazioni di parti del corpo, o semplicemente trasformazioni e senza stati / viste, non sarebbe altrettanto incredibile. Come hai detto, però, uno strumento sta facendo un buon lavoro quando si fa da parte e fa brillare l'artista, cosa che Klei fa molto. Devo dire che ho adorato tutte le tue cose e grazie per le porte del PC.
Norguard,

2
Sono contento di poterti aiutare! Penso che i nostri artisti preferirebbero effettivamente lavorare con un sistema in cui abbiamo appena realizzato ogni frame come uno sprite, ma poi non saremmo in grado di fare lo scambio di costumi e le dimensioni della trama sarebbero proibitive.
Kevin,

1
Incredibile, non avrei mai pensato di ottenere una risposta da uno sviluppatore del gioco reale. Ti ringrazio per il tempo dedicato a rispondere a questa domanda. +1
Bugster

7

Klei di solito usa una combinazione davvero bella di animazioni scheletriche e cambiamenti di sprite.
Preparano uno scheletro, applicano sprite alle ossa e poi scambiano sprite come richiesto da un frame di animazione.

L'esatto "come" (flusso di lavoro / strumenti / ecc.) Può davvero provenire da loro, tuttavia, lo hanno detto loro stessi quando pubblicizzano "Shank", pre-release.

E se guardi Shank / ShankII, Mark of the Ninja e Don't Starve, noterai che l'animazione assomiglia molto alle cose che potrebbero uscire da Nickelodeon.

Immagino che stiano lavorando con i grafici delle scene per mantenere tutto sano di mente, ma, ancora una volta, è più un presupposto basato sulla complessità e ciò che funziona per l'animazione (2d / 3d) che una garanzia.


Dal momento che questa è davvero solo una supposizione, probabilmente funzionerebbe meglio come commento. Non è davvero colpa tua, non c'è modo di non indovinare se non sei lo sviluppatore. (problema con la domanda non con la risposta)
MichaelHouse

Questo risponde praticamente alla domanda che ho posto, avevo in mente qualcosa di simile, ma sembra che tu abbia ragione.
Bugster,

2

Penso che utilizzino sicuramente l'animazione delle ossa. Usano anche sprite ad alta risoluzione (per prevenire la fluttuazione) o usano una qualche forma di grafica vettoriale. È del tutto possibile, hanno pre-renderizzato la grafica vettoriale in sprite ad alta risoluzione. Sicuramente non hanno usato la pixel art per questo. :)


2
Più un commento che una risposta non diresti?
MichaelHouse

grafica vettoriale in openGL? È possibile ma dubito davvero che uno sviluppatore indipendente farebbe di tutto.
Eric B,

1
@EricB Va bene, potrebbe essere pre-renderizzato in sprite o potrebbe essere disegnato a mano e reso in alta risoluzione. Non è sicuramente sprite nel "senso classico" (cioè pixel art) come Spelunky e Cave Story.
AturSams,

@ Byte56 Sono d'accordo con te. Sto rispondendo di più su come realizzare effetti visivi simili a quello che il loro artista ha fatto su questo.
AturSams,

@ Byte56 poiché alla domanda è così difficile rispondere, le uniche risposte possibili sono ipotesi, ma questa risposta potrebbe benissimo essere una possibilità, grazie.
Bugster,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.