Animazione auto...

Forum per: Modellazione, Texturing, Animazione, Composting e tutto quello che riguarda il normale utilizzo di Cinema4D.

Moderators: Arkimed, natas, visualtricks, cappellaiomatto

  • Advertising
filippo200
Posts: 21
Joined: Sat May 17, 2008 2:13 pm

Animazione auto...

Post by filippo200 »

Buongiorno geni :)

Vi scrivo perchè vorrei iniziare a studiare i fondamentali dell'animazione, e avrei deciso di partire da un'auto, visto che a prima vista potrebbe sembrare più semplice, e cmq mi affascina... ho visto l'audi nella sezione download, ma sinceramente non ho capito un granchè, non è che conoscete qualche tutorial dedicato all'argomento "rigging auto"? io ho trovato solo materiale per 3dstudio max e maya...

Grazie mille per l'aiuto :D
User avatar
tommix
Posts: 345
Joined: Thu Jan 13, 2005 8:17 pm
Location: Fondi (LT)

Re: Animazione auto...

Post by tommix »

Per 'animazione' intendi simulazione? nel senso che animi l'auto lungo una spline e l'auto reagisce in maniera automatica. Tempo fa ho fatto un test a scopo didattico
http://www.youtube.com/watch?v=kEkXTcHMe3s

se può essere utile vi descrivo il funzionamento
filippo200
Posts: 21
Joined: Sat May 17, 2008 2:13 pm

Re: Animazione auto...

Post by filippo200 »

tommix wrote:Per 'animazione' intendi simulazione? nel senso che animi l'auto lungo una spline e l'auto reagisce in maniera automatica. Tempo fa ho fatto un test a scopo didattico
http://www.youtube.com/watch?v=kEkXTcHMe3s

se può essere utile vi descrivo il funzionamento
E' proprio da quel filmato che mi è venuta voglia di animare un'auto (l'ho visto qualche giorno fà), è esattamente quello che cerco ti ringrazio per l'aiuto....

:D
User avatar
masterzone
Site Admin
Posts: 10542
Joined: Fri Sep 17, 2004 5:34 pm
Location: Verona

Re: Animazione auto...

Post by masterzone »

allucinante....non ho parole.....quando l'hai appoggiata spostando la base dei controller sotto la landa mi sono eccitato...fantastico.

mz :shock:
Polimar
Posts: 169
Joined: Sat Apr 11, 2009 6:00 pm

Re: Animazione auto...

Post by Polimar »

tommix wrote:Per 'animazione' intendi simulazione? nel senso che animi l'auto lungo una spline e l'auto reagisce in maniera automatica. Tempo fa ho fatto un test a scopo didattico
http://www.youtube.com/watch?v=kEkXTcHMe3s

se può essere utile vi descrivo il funzionamento
Si Si dai... :)
User avatar
happyman
Posts: 162
Joined: Sun May 18, 2008 12:23 am
Location: Genova

Re: Animazione auto...

Post by happyman »

tommix wrote: se può essere utile vi descrivo il funzionamento
Sei veramente un Grande.. e spettacolare... pendiamo dalle tue labbra....illuminaci.

Ciao
Happyman
User avatar
ste090
Posts: 1013
Joined: Tue Jul 04, 2006 1:00 pm
Location: Torino

Re: Animazione auto...

Post by ste090 »

mi aggiungo alla lista... spettacolare davvero!!
User avatar
tommix
Posts: 345
Joined: Thu Jan 13, 2005 8:17 pm
Location: Fondi (LT)

Re: Animazione auto...

Post by tommix »

Scusate la latitanza, ma sono stato molto impegnato in questi giorni..
Vi dico la soluzione in linea di massima.. ho in preventivo di farci una guida prima o poi, visto l'interesse al riguardo..

Una piccola premessa: il principio generale vincente per fare rig complessi è quello del divide-et-impera, cioè si risolvono i sottoproblemi separatamente e poi si assemblano le varie soluzioni. E' la filosofia che ho seguito anche qui.

Tralasciando le soluzioni banali per comandare l'apertura degli sportelli, i vari sottoproblemi sono:

1) Rotazione della ruota in base allo spostamento;

2) Rotazione delle ruote anteriori in base al cambio di direzione;

3) Calcolo della collisione con il terreno su ogni ruota;

4) Ammortizzazione delle ruote;

5) Angolazione ed ammortizzazione della carrozzeria.

Vi dò una descrizione di massima di come ho affrontato i sottoproblemi. Ovviamente si tratta di sviluppare tutto in Xpresso.
Gran parte delle funzoni sfruttano come input la differenza fra la posizione attuale e quella precedente:

DeltaP = Obj.GlobalPos - Obj.PreviousPos

1) Rotazione della ruota in base allo spostamento;

Se immaginiamo di muoverci lungo la direzione di rotazione di una ruota, l'angolo di rotazione della ruota in ogni momento segue questa legge: La distanza percorsa (DeltaP.Z) deve corrispondere all'arco di curva sulla circonferenza della ruota (di raggio 2*PI*raggioRuota). Quindi la ruota deve essere ruotata per un istante di tempo di un angolo pari a deltaAngolo. Sussiste questa proporzione:

deltaAngolo : 2*PI = DeltaP.Z : 2*PI*raggioRuota

da cui:

deltaAngolo = (2*PI * DeltaP.Z) /2*PI*raggioRuota => DEltaP.Z / raggioRuota

Non finisce qui. Questa formula funziona se ci muoviamo in maniera concorde con la rotazione della ruota, ma ovviamente possiamo spostarci anche in altre direzioni. Quindi il movimento DeltaP deve corrispondere alla proiezione dello stesso sul versore dell'asse di rotazione della ruota. Si calcola con |DeltaP| * cos(alfa). Alfa corrisponde all'angolo fra il versore ed il vettore spostamento DeltaP.
Quindi se ci muoviamo in direzione concorde con l'asse di rotazione della ruota, cos(alfa) = 1, quindi deltaAngolo = |DeltaP| / raggioRuota. Se ci muoviamo in direzione perpendicolare, ovvero lateralmente, cos(alfa) = cos(90°) = 0. deltaAngolo = 0, quindi la ruota non gira.
Cosa ancora più interessante, se ci muoviamo all'indietro, cos(180°) = -1, quindi deltaAngolo = -|DeltaP| / raggioRuota, quindi la ruota gira in senso inverso.
La formula finale quindi è:

deltaAngolo = |DeltaP|/raggioRuota * cos(alfa)

Più tardi vi posto le soluzioni agli altri problemi..
Polimar
Posts: 169
Joined: Sat Apr 11, 2009 6:00 pm

Re: Animazione auto...

Post by Polimar »

tommix wrote:Scusate la latitanza, ma sono stato molto impegnato in questi giorni..
Vi dico la soluzione in linea di massima.. ho in preventivo di farci una guida prima o poi, visto l'interesse al riguardo..

Una piccola premessa: il principio generale vincente per fare rig complessi è quello del divide-et-impera, cioè si risolvono i sottoproblemi separatamente e poi si assemblano le varie soluzioni. E' la filosofia che ho seguito anche qui.

Tralasciando le soluzioni banali per comandare l'apertura degli sportelli, i vari sottoproblemi sono:

1) Rotazione della ruota in base allo spostamento;

2) Rotazione delle ruote anteriori in base al cambio di direzione;

3) Calcolo della collisione con il terreno su ogni ruota;

4) Ammortizzazione delle ruote;

5) Angolazione ed ammortizzazione della carrozzeria.

Vi dò una descrizione di massima di come ho affrontato i sottoproblemi. Ovviamente si tratta di sviluppare tutto in Xpresso.
Gran parte delle funzoni sfruttano come input la differenza fra la posizione attuale e quella precedente:

DeltaP = Obj.GlobalPos - Obj.PreviousPos

1) Rotazione della ruota in base allo spostamento;

Se immaginiamo di muoverci lungo la direzione di rotazione di una ruota, l'angolo di rotazione della ruota in ogni momento segue questa legge: La distanza percorsa (DeltaP.Z) deve corrispondere all'arco di curva sulla circonferenza della ruota (di raggio 2*PI*raggioRuota). Quindi la ruota deve essere ruotata per un istante di tempo di un angolo pari a deltaAngolo. Sussiste questa proporzione:

deltaAngolo : 2*PI = DeltaP.Z : 2*PI*raggioRuota

da cui:

deltaAngolo = (2*PI * DeltaP.Z) /2*PI*raggioRuota => DEltaP.Z / raggioRuota

Non finisce qui. Questa formula funziona se ci muoviamo in maniera concorde con la rotazione della ruota, ma ovviamente possiamo spostarci anche in altre direzioni. Quindi il movimento DeltaP deve corrispondere alla proiezione dello stesso sul versore dell'asse di rotazione della ruota. Si calcola con |DeltaP| * cos(alfa). Alfa corrisponde all'angolo fra il versore ed il vettore spostamento DeltaP.
Quindi se ci muoviamo in direzione concorde con l'asse di rotazione della ruota, cos(alfa) = 1, quindi deltaAngolo = |DeltaP| / raggioRuota. Se ci muoviamo in direzione perpendicolare, ovvero lateralmente, cos(alfa) = cos(90°) = 0. deltaAngolo = 0, quindi la ruota non gira.
Cosa ancora più interessante, se ci muoviamo all'indietro, cos(180°) = -1, quindi deltaAngolo = -|DeltaP| / raggioRuota, quindi la ruota gira in senso inverso.
La formula finale quindi è:

deltaAngolo = |DeltaP|/raggioRuota * cos(alfa)

Più tardi vi posto le soluzioni agli altri problemi..
Purtroppo io questa teoria non sono ancora in grado di metterla in pratica.. :(
User avatar
flowbox
Posts: 2545
Joined: Tue May 20, 2008 8:29 pm
Location: Repubblica Dominicana

Re: Animazione auto...

Post by flowbox »

certo che io sono proprio ignorante !!!! :( :( :(
Non ho piu freddo e NON PAGO PIU LE TASSE.... vivo qui:

http://www.infolasgaleras.com
________

http://www.websolutionsdf.com
______________________________
  • Advertising
Post Reply