REACTOR. ALTRI VINCOLI E FORZE.

 

PLANE.

Il Plane è un corpo rigido che si comporta come un piano infinito, nonsottoposto a gravità (Mass=0).
Il piano ha effetto soltanto su quegli oggetti che lo collidono dalla parte delle facce positive (indicate dal verso della freccia). Altrimenti gli oggetti passano attraverso di esso.

Ad esempio facciamo cadere dall'alto 3 oggetti e posizioniamo in basso un Plane.

Tutti gli oggetti, come sempre, devono essere inseriti in un RBCollector.
Il piano non viene renderizzato.

 

 

MOTOR.

 

Il MOTOR permette di applicare una forza di rotazione a un corpo rigido. Questi sono i suoi parametri:


Clicca sul pulsante RIGID BODY e selezione il corpo rigido a cui applicare il Motor. La freccia rossa indica l'asse di rotazione.

ANG SPEED.
Velocità angolare da raggiungere. E' specificata in rad/s. Per default è impostato 3.14 (pi-greco), ovvero 180 gradi. Significa che il Motor nel tempo cercherà di raggiungere una velocità di 180 gradi al secondo.

GAIN.
Impulso angolare applicato per raggiungere la Ang Speed. E' un indice della sua accelerazione.

 

 

TOY CAR.

Questo oggetto permette di simulare velocemente una macchinetta giocattolo.

Costruiamo una macchinetta. Ogni elemento deve avere un valore di Mass non nullo. Queti valori definiscono il comportamento della macchinetta. Generalemente la massa del telaio deve esserre maggiore rispetto alla massa totale delle ruote.

Crea un oggetto Toy Car. Questi sono i suoi parametri:

Clicca sul pulsante CHASSIS e selezione il telaio della macchinetta. nella finestre Wheels aggiungi le ruote.

Allinea correttamente l'icona.

Il suo orientameto è utilizzato per definire gli assi di rotazione delle ruote (asse X dell'icona), che passeranno per i Pivot Point delle ruote, e gli assi di sospensione (asse Z dell'icona), che passeranno anch'essi per i Pivot Point delle ruote.

ANGULAR STRENGHT.
Forza correttiva che serve a mantenere le ruote in piedi e orientate in avanti.

LINEAR STRENGHT.
Forza che mantiene le ruote in posizione rispetto al telaio.

SUSPENSION.
Al diminuire del valore la macchinetta rimbalza maggiormente.

INTERNAL SUBSTEPS.
Permette di appilcare un numero maggiore di substeps alla macchinetta rispetto a quelli usati per i restanti elementi della simulazione. Aumenta il valore per rendere maggiormente stabile la simulaizone per la macchinetta.

ICON ORIENTATION.
Quando è selezionata l'orientamento dell'icona è utilizzata per definire le direzioni degli assi di rotazione delle ruote e degli assi di sospensione.
Ogni asse di rotazione è allineato all'asse X dell'icona e passa per i Pivot Point delle ruote.
Ogni asse di sospensione è allineato all'asse Z dell-icona e passa per i Pivot Point delle ruote.

L' orientamento locale delle ruote non è importante per definire questi assi.

COMMON LOCAL ORIENTATION.
Permette di modificare l'orientamento degli assi di rotazione e sospensione.

ALLOW WHEEL PENETRATION.
Disattiva le collisioni fra ruote e telaio.

ANG SPEED.
Velocità angolare finale raggiunta dalle ruote. E' espressa in rad/s.

GAIN.
impulso angolare applicato alle ruote per raggiungere Ang Speed. E' un indice della loro accelerazione.

 

 

FRACTURE

Questo oggetto simula la frattura di un oggetto a causa di un impatto. Per realizzare questo occorre definire i pezzi incollati che formano l'oggetto sano. quando avverrà la frattura saranno questi pezzi a definire i frammenti.

I frammenti componenti l'oggetto sano si muovono insieme durante la simulazione. Quando avviene una collisione tra l'oggetto sano e un altro oggetto, se viene superata una soglia alcuni dei frammenti vengono rimossi dal Fracture. Da questo punto in poi i pezzi si muoveranno indipendentemente.

Questi sono i suoi parametri:

 

PIECES.
Lista degli oggetti che costituiscono i pezzi dell'oggetto sano (chiamato oggetto Fracture).

Nella sezione SELECTED PIECES si assegnano le caratteristiche ai pezzi dell'oggetto sano.

BROKEN.
Questa opzione è disponibile se il pezzo selezionato è rotto al tempo corrente. Il pezzo viene ripristinato come sano (e quindi facente parte dell'oggetto intero) con il pulsante RESET.

NORMAL.
Comportamento standard.

UNBREAKABLE.
Il pezzo non si rompe mai.

KEYSTONE.
Se questo pezzo viene rotto, tutti gli altri pezzi si rompono.

BREAK AT TIME.
Il pezzo si rompe al tempo specificato.

USE CONNECTIVITY.
Quando è attivo i grupi di pezzi che sono connessi fra di loro si muoveranno indipendentemente dai pezzi a cui non sono connessi. E' come avere più oggetti Fracture contenuti all'ìinterno di un oggetto Fracture più grande. Due pezzi vengono considerati connessi fra di loro se la loro ditanza è inferiore alla soglia di collisione.

BREAK ON IMPULSE.
Se èattiva quando un pezzo dell'oggetto Fracture subisce una collisione dove l'impulso è maggiore della soglia qui specificata, si rompe.
L'impulso aumenta con la massa del proiettile.

BREAK ON VELOCITY.
Se l'opzione è selezionata, quando un pezzo dell'oggetto Fracture subisce una collisione, si rompe se la sua velocità è superiore alla soglia qui indicata. La massa del pezzo non viene presa in considerazione.

ENERGY LOSS.
Definisce quanta energia cinetica è persa durante la collisione che provoca la frattura. Al diminuire del valore i frammenti aumentano velocità.

SHOW BOUNDING BOX.
Viene visualizzato un Bounding Box contenente tutti i pezzi dell'oggetto Fracture.

Oltre a questi parametro occorre considerarne anche alcuni che si trovano nella tendina World del Reactor. In particolare questi:

Per rendere il sistema più stabile, e meno propenso a esplodere, riduci la SCALE TOLERANCE.

Per simulare esplosioni riduci SEPARATION TIME e VELOCITY CAP.

 

Ad esempio, creiamo un tavolino che cade per terra e si rompe.

Ogni elemento ha la propia massa, ma questi non devono essere uniti in un gruppo per formare un corpo rigido composto. I pezzi del Fracture devono essere lasciati distinti.

Aggiungi i pezzi del tavolino al Fracture. Questi pezzi dovranno essere inseriti anche nell' RBCollection.

Il fatto che tra i vari elementi esistano dei link è indifferente.

Selezioniamo dalla lista del Fracture il piano del tavolini e impostiamo l'opzione UNBREAKABLE. La configurazione dei pezzi che si rompono varia a seconda delle propietà assegnate a ogni pezzo.

Se i pezzi non dovessero rompersi abbassa il valore VELOCITY.

Impostiamo come UNBREAKABLE anche una zampa del tavolino.

 

Definiamo una scena con una sfera e un piano. La sfera dovrà frantumarsi quando toccherà il piano.

Convertiamo la sfera in un oggetto mesh oppure polymesh. Selezioniamo i vari frammenti in cui la sfera dovrà rompersi uno alla volta.

Poi con il comando Detach distacchiamoli.


 

 

L'unico problema è che in casi come questo si vedono i confini tra i frammenti anche quando l'oggetto è sano.

Il problema si risolve creando un clone dell'oggetto iniziale non suddiviso linkato a uno dei pezzi, coincidente con la versione da frammentare. Prima della collisione sarà visibile soltanto la versione originale, mentre quella da frammentare sarà invisibile. All'istante della collisione i ruoli vengono invertiti: la versione originale è nascosta e quella da frammentare appare. Nessuno se ne accorgerà. ;)