View Full Version : [Curiosità] Animazioni
Stavo riflettendo sul fatto di quanto sia complicato creare un videogioco di basket realistico, poi mi sono bloccato perchè mi sono reso conto di non sapere alcune cose fondamentali.
Premetto che di grafica non so niente quindi mi scuso per eventuali eresie.
Supponiamo di aver creato l'oggetto palla e di avere anche un giocatore.
La palla può avere degli spostamenti non previsti durante il gioco, nel senso: se il giocatore palleggia la palla segue approssimativamente una retta dalla sua mano al terreno e poi torna indietro e per questo si crea una animazione specifica, supponiamo però che il palleggio venga sporcato il giocatore deve "sapere" dove andare a prendere la palla che magari nel percorso di ritorno dal terreno si è spostata di 10 centimetri a sinistra.
Lasciando perdere le approssimazioni che potrebbero decidere che 10 centimetri non sono una variazione significativa e potrebbero utilizzare la stessa animazione, ci vuole una animazione che muova il braccio leggermente più a sinistra con conseguente adeguamento del corpo alla necessità.
Quello che mi chiedo allora è quanto segue:
Quando viene creato un giocatore immagino gli venga attribuito un bagaglio di animazioni, ma queste animazioni devono essere tutte create e preregistrate oppure esiste un modo dinamico di generarle a seconda delle necessità magari dividendo l'oggetto giocatore in oggetto braccio, gamba, testa?
Nel primo caso penso sarebbe impossibile creare un gioco realistico, nel secondo caso la quantità di calcoli se fatta come si deve ha una mole mostruosa.
Non sono un super esperto e credo la tua domanda sconfini nella programmazione 3d... ma penso i giocatori abbiano delle animazioni preregistrate!
Infatti se non sbaglio nei giochi sportivi usano il motion capture, se non sapessi cosè... è quel sistema di sensori che collegate al corpo di un uomo in movimento vengono registrate dal pc e quindi assegnate allo scheletro del disegno che vogliamo muovere, si riesce ad ottenere dei movimenti di base estremamente realistici, spesso chiamano ad interpretarli veri atleti!
Se non sbaglio anche gollum è stato animato con il motion capture!
Nell'animazione con la computergrafica si associa al disegno in 3d uno scheletro, muovendo i punti di controllo dello scheletro si muove il personaggio a cui è vincolato, un po come una marionetta, si riesce ad ottenere degli spostamenti estremamente precisi inserendo delle chiavi, che controllano la posizione di ogni singolo punto nello spazio!
Ora credo un pc molto potente possa gestire queste chiavi in maniera dinamica, certo in numero limitato, anche perchè non sono poi così tante quelle da rendere interattive... insomma sarebbero due per le mani , due per i piedi e una per il corpo... i personaggi diventerebbero un po come gli avversari di hl2 che sembrano avere un corpo senza animazioni predefinite!
Ora è possibile applicarlo ad un gioco?dovresti chiedere ad un programmatore... secondo me col motion capture si riesce ad ottenere un discreto livello di realismo e movimenti "caratteristici" con l'altro sistema avresti dei movimenti meno prevedibili, piu precisi(prenderanno esattamente la palla) ma decisamente meno somiglianti alle movenze tipiche dei giocatori di basket :)
EDIT Ho detto una caxata, dubito i programmatori usino le stesse chiavi che si usano in animazione, perchè ogni chiave puo registrare gli spostamenti di diversi punti!
Probabilmente i programmatori controllano direttamente l'ossatura dei personaggi, e muovono i singoli punti nello spazio... ripensandoci credo non sia impossibile ricorrere ad un mix tra motion capture e movimenti dinamici!
Per me dovresti provare a porre la stessa domanda in programmazione...
...girava qualche settimana fa un filmato di Indiana Jhones(o come cappero si chiama), in piedi in equilibrio su un ponte di corda sospeso...dall'alto cadevano enormi massi che colpivano lui e il ponte ed entrambi avevano movimenti di reazione nn preordinati ma calcolati dal computer in base alla fisica assegnata(quindi un comportamento molto realistico). Nn chiedetemi che sistema sia(nome e cognome), perchè nn lo so ma è stato fatto e credo "presto" verrà integrato nei software specifici.
Possibile si tratti di un demo delle nuove schede che gestiscono la fisica :O
x_Master_x
02-08-2006, 08:31
...girava qualche settimana fa un filmato di Indiana Jhones(o come cappero si chiama), in piedi in equilibrio su un ponte di corda sospeso...dall'alto cadevano enormi massi che colpivano lui e il ponte ed entrambi avevano movimenti di reazione nn preordinati ma calcolati dal computer in base alla fisica assegnata(quindi un comportamento molto realistico). Nn chiedetemi che sistema sia(nome e cognome), perchè nn lo so ma è stato fatto e credo "presto" verrà integrato nei software specifici.
Il software di cui parli è Endorphin, lo utilizzo da quasi un anno :)
Più o meno è come dici tu, un misto di motion capture + una serie di "events" che modificano la scena. Il carachter interagisce con i vari oggetti della scena in base a delle chiavi di animazione prestabilite, ma l'animazione cambia se vengono aggiunti degli eventi non definiti. Se vuoi posso essere più preciso... :)
Il software di cui parli è Endorphin, lo utilizzo da quasi un anno :)
Più o meno è come dici tu, un misto di motion capture + una serie di "events" che modificano la scena. Il carachter interagisce con i vari oggetti della scena in base a delle chiavi di animazione prestabilite, ma l'animazione cambia se vengono aggiunti degli eventi non definiti. Se vuoi posso essere più preciso... :)
...Interessante, vai, vai,...sii preciso :D
Poi dicci in che ambito lo usi ovviamente... :)
Intanto ho trovato un filmato interessante direttamente dal sito...
http://www.naturalmotion.com/files/Sig_05_Reel_Web_Large.avi
sangueimpazzito
03-08-2006, 15:20
...Interessante, vai, vai,...sii preciso :D
Poi dicci in che ambito lo usi ovviamente... :)
Intanto ho trovato un filmato interessante direttamente dal sito...
http://www.naturalmotion.com/files/Sig_05_Reel_Web_Large.avi
Io personalmente non ne capisco una cippa... però mi pare parecchio una figata.
:eek:
la_piaga
03-08-2006, 16:53
Quando viene creato un giocatore immagino gli venga attribuito un bagaglio di animazioni, ma queste animazioni devono essere tutte create e preregistrate oppure esiste un modo dinamico di generarle a seconda delle necessità magari dividendo l'oggetto giocatore in oggetto braccio, gamba, testa?
Nel primo caso penso sarebbe impossibile creare un gioco realistico, nel secondo caso la quantità di calcoli se fatta come si deve ha una mole mostruosa.
Dipende strttamente dalle politiche implementative, ma in linea di massima la cosa migliore e' miscelare le due tecniche, diciamo avere una base specifica, magari catturata ed applicare le correzioni del caso in real time.
Zimmemme
04-08-2006, 14:44
Allora, lasciando perdere la motion capture che è una cosa da ricconi il procedimento è il seguente.
Si realizzano delle animazioni del giocatore e si memorizzano su determinati frames.
Quindi avremo...
dal frame 0 al 100 animazione soggetto a riposo,
101-200 soggetto che palleggia
201-300 soggetto che corre
301-400 soggetto che salta
e via discorrendo.
Poi si impacchetta il tutto e lo si fornisce al programmatore il quale sa che se deve far correre ilgiocatore allora dovrà animare il soggetto dal frame 201 al 300 ecc. ecc.
Ciao.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.