REACTOR. IL COOPERATIVE CONTRAINTS RAGDOLL.

 

 

Il Cooperative Constraint di tipo RAGDOLL permette di simulare i giunti di un corpo, come quello di un pupazzetto. Si stabiliscono i limiti per il movimento dei vari giunti rendendo l'oggetto Parent come riferimento ù8es.: la rotazione del braccio è limitata rispetto al torso).

Lo spazio del vincolo applicato al giunto è definito nello spazio locale del giunto. Lo spazio di vincolo è definito da 3 caratteristiche:

- L'origine del vincolo è posizionata tra l'oggetto Child e l'oggetto Parent.
- E' definto un asse di torsione del Child rispetto al Parent.
- E' definito un piano di limitazione nell'origine.

Creiamo un RagDoll.

Poi delle scatole linkate fra loro in fila. Quella blu scuro è la root.

Questi sono i parametri del RagDoll:

 

Clicca su CHILD e poi sulla seconda scatola della catena. Il vincolo viene posizionato sul suo Pivot Point (i Pivot Point dei vari componenti sono stati già spostati alle intersezioni fra le scatole).

L'asse di torsione è allineato all'asse X dell'oggetto, mentre il piano di vincolo è ortogonale all'asse Y.

Abilita l'opzione PARENT e clicca sulla scatola genitore (quella blu scuro). Gli spazio Child e Parent sono coincidenti. Come sempre il Child è individuato da frecce rosse, il Parent da frecce verdi.

Lo spazio del vincolo è rappresentato dall'asse di torsione per il Child. Per quanto riguarda il Parent sono presenti invece: asse di torsione, piano di rotazione e visualizzazione dei limiti. Questi spazi possono essere modificati agendo al livello sub-oggetto del RagDoll.

Gli spazi di vincolo sono linkati ai rispettivi oggetti. Se ad esempio ruoto l'oggetto Child lo spazio Child si orienterà di conseguenza.

Dopo avere trasformato uno spazio di vincolo, per ripristinare la sua configurazione puoi usare il pulsante Child Space, che riallinea gli spazi a quello del Child.

Diamo alla scatola Root Mass=0 e alle altre una massa non nulla. Poi avviamo la simulazione.

Anche se le scatole sono linkate fra loro, soltanto quella con il vincolo Rag Doll non cade verso il basso, ma ruota soltanto in base ai limiti di vincolo imposti (in questa animazione le collisioni sono disattivate).

Consideriamo la limitazione dei vincoli.

Con la sezione DISPLAY possiamo visulaizzare i vari componenti che definiscono la limitazione del vincolo.

TWIST.
Angolo di torsione del Child rispetto al Parent.

CONE.
Indica la zona in cui può muoversi l'asse di torsione del Child (asse rosso).

PLANE.

I limiti del Plane non cambiano visivamente la sua forma.

PLANE MIN.
Indica un angolo formato fra il piano e una riga invisibile nel range [-90...0]. Questa linea è ruotata intorno alla normale del piano per creare un cono. Il volume individuato da questo non può essere invaso dall'asse di torsione del Child. Per visualizzare questi limiti del Plane, attiva nella sezione Display la voce SHOW PLANE LIMITS.

Se i coni definiti dai limiti del Plane invadono il volume del CONE (zona in cui l'asse di torsione deil Child può muoversi), nei volumi di intersezione l'asse di torsione non può entrare, quindi i limiti del piano si comportano come dei volumi che vengono sottratti al CONE, quando lo intersecano.

PLANE MAX.
La stessa cosa di Plane Min, ma definisce un cono dall'altra parte del piano.

I due coni di limite del piano possno essere orientati ruotando il piano.

Per visualizzare il volume combinato del Cone + Plane Limits, attiva la voce Show Volume.

Se durante la simulazionenon vogliamo che le due scatole finale caschino nel vuoto, definiamo un RagDoll per ongi intersezione, prendendo come Parent e Child le scatole corrispondenti.