REACTOR. RIGID BODY
![]()
I corpi rigidi sono alla base della simulazione fisica. Appartengono a questa categoria tutti gli oggetti che non cambiano forma durante la simulazione. E' possibile creare un corpo rigido utilizzando qualsiasi geometria di Max. I corpi rigidi possono essere costituiti da singoli oggetti, oppure da più oggetti raggruppati insieme. In quest' ultimo caso si parla di Corpi Rigidi Composti. Poi Reactor si occupa di assegnare le propietà fisiche a questi oggetti e calcolare le collisioni in base alle leggi fisiche e ai vincoli imposti.
Ad
esempio selezioniamo un oggetto.

Per
assegnargli delle propietà fisiche vai al pannello Utility/Reactor e
apri la tendina PROPERTIES.
MASS.
Massa dell'oggetto. Se è impostata a 0 questo rimarrà fisso nello
spazio durante la simulazione. Manterrà comunque le sue propietà
di collisione con gli altri oggetti.
ELASTICITY.
Indica quanto l'oggetto fa rimbalzare un altro che lo collide. Intervallo realistico:
[0...1]
FRICTION.
Frizione della superficie. Indica quanto è rallentanto un oggetto che
struscia sulla superficie. Intervallo realistico: [0...1]
INACTIVE.
Indica che l'oggetto comincerà ad essere consideranto nella simulazione
soltanto dopo avere interagito con un altro oggetto o elemento del sistema dinamico.
DISABLE
ALL COLLISIONS.
L'oggetto non collide con altri, ma passa attraverso questi.
UNYIELDING.
Quando è attivo il corpo rigido eredita il movimento che già aveva
dalla preesistente animazione definita in 3DStudio. Si comporterà come
un elemento della simulazione, ma il suo movimento non sarà definito
dall' Havok, bensì dai keyframe già esistenti.
PHANTOM.
L'oggetto perde le sue propietà fisiche. Passa attraverso gli oggetti,
tuttavia memorizza le informazioni riguardanti le collisioni con gli oggetti.
Successivamente è possibile accedere a queste informazioni.
Nella sezione Simulation Geometry è possibile specificare la rappresentazione fisica che gli oggetti avranno nella simulazione.
E' possibile approssimare la forma di un oggetto, a scopi di calcolo della simulazione, in due maniere: Geometry Proxies e Display Proxies.
I
Geometry Proxies permettono di specificare una geometria semplificata per un
oggetto coinvolto nella simulazione. L'oggetto rimane comunque visualizzato
nella vista con la sua forma originale.
I Display Proxies sostituiscono un corpo rigido nella vista con un altro più
semplice per non appesantirla troppo durante le preview.
Un
corpo rigido è definito come convesso quando è possibile andare
da un punto a un altro della sua supeficie senza uscire dal suo volume. I concavi....be',
vale il contrario.
Gli oggetti convessi vengono simulati più velocemente di quelli concavi.
Nel dubbio, per sapere se un oggetto è concavo o convesso possiamo farlo
scoprire a Reactor con il comando Test Convexity, collocato nella tendina Utils.

Tutte le mesh aperte (es.: il piano) sono considerate concave.
Torniamo
ad analizzare i parametri Simulation Geometry.
Come dicevamo, qui si definisce come un oggetto sarà rappresentato nella
simulazione fisica. Per visualizzare la geometria di simulazione
BOUNDING
BOX.
Si utilizza il Bounding Box dell'oggetto.
BOUNDING
SPHERE.
Si utilizza una sfera centrata sul Pivot Point dell'oggetto e racchiude al suo
interno l'oggetto usando il raggio più piccolo possibile.
MESH
CONVEX HULL.
La geometria dell'oggetto è convertita in una convessa. Funziona tipo
uno Shrink Wrap.
PROXY
CONVEX HULL.
Il Convex Hull di un altro oggetto viene utilizzato come rappresentazione fisica
per l'oggetto corrente nella simulazione. (Es.: sipuò usare il Convex
Hull di una teiera a bassa risoluzione per una teiera a alta risoluzione).
...e questi sono i comandi dedicati agli oggetti convessi. Nel caso di oggetti concavi si possono utilizzare le approssimazioni sotto lavoce Concave.
MESH.
La mesh attuale è utilizzata come oggetto nella simulazione.
E' da notare che anche se il Convex Hull coincide con la geometria attuale,
viene calcolato nella simulazione comunque più velocemente rispetto alla
mesh di un oggetto concavo.
PROXY
MESH.
Si una una geometria concava approssimata per l'oggetto.
USE
DISPLAY PROXY.
Quando è attiva si seleziona una geometria che rimpiazza gli oggetti
durante la preview.
![]()
I
corpi rigidi possono essere composti da più geometrie primitive, e formare
così corpi rigidi composti. Per definie un oggetto di questo tipo occorre
prima creare un gruppo costituito dai vari componenti primitivi. I principali
vantaggi sono:
- Un corpo rigido composto che abbia forma concava può in realtà
essere costituito da componenti tutti convessi.
- Ai vari componenti può essere assegnata una massa differente. in ogni
caso non è possibile asegnare una valore Mass che valga per l'intero
oggetto composto: occorre definirla per ogni suo componente.
Quindi per definire le propietà fisiche di un oggetto composto occorre aprire il gruppo e selezionare uno alla volta i suoi componenti, e per ognuno definire i parametri.
![]()
Il
Rigid Body Collection è un helper di Reactor che funziona come contenitore
per i corpi rigidi.

Una volta creato nella scena, qualsiasi corpo rigido valido nella scena può esere aggiunto al RBCollection.
Quando la simulazione parte il RBCollection forniscei corpi rigidi che contiene alla simulazione. inoltre è possibile stabilire quale metodo matematico utilizzare per risolvere la simulazione riguardante questi corpoi rigidi.
Per
creare un Rigid Body Collection innanzitutto occorre definire l'icona nella
scena e alcuni oggetti che saranno trattati come corpi rigidi.
Seleziona
l'icona e vai al panello Modify.
....la finestra dice tutto da sola.
DISABLED.
Quando è attiva questa opzione gli oggetti nella lista non sono aggiunti
alla simulazione.
ODE
SOLVER.
Se è impostato Euler il RBC calcola il comportamento per gli oggetti
che contiene usando un Solver di tipo Euler; è un metodo veloce valido
nella maggior parte dei casi. Il metodo Runge-Kutta è più preciso
ma richiede più tempo. Va utilizzaot quando si hanno molti oggetti connessi
insieme usando vincoli semplici.
![]()
Ad
esempio, prendiamo questa scena:
Stabiliamo le propietà per i vari oggetti (per la ciambella impostiamo Inactive e il Simulation Geometry impostato su Use Mesh) e associamoli tutti al CBCollector.
Per
fare partire la simulazione, andiamo qui:
Clicca
su CREATE SIMULATION. Verrà generata automaticamente l'animazione di
questi oggetti.
![]()
OGGETTI RIGIDI COMPOSTI.
E' possibile unire più mesh insieme per comporre un corpo rigido complesso. I vari elementi hanno una propia massa; queste sommate insieme definiscono la massa del corpo rigido composto risultante.
Utilizzare corpi rigidi composti è utile quando si vogliono simulare oggetti con densità eterogenea, oppure per definire oggetti convavi utilizzando elementi convessi per velocizzare i tempi di simulazione (anche se poi la simulazione risulta meno accurata).
Per creare un oggetto composto occorre unire i vari elementi in un gruppo. Tutto qui. Basterà aggiungerlo nella lista dell' RBCollection per farlo considerare nella simulazione. Fra i vari elementi costituentiil gruppo non vengono calcolate le collisioni.
Ad esempio creiamo con un gruppo un pupazzetto.
Tutti
i suoi elementi hanno MASS=1. Facciamolo cadere sul pavimento.
![]()
Se
vogliamo farlo dondolare aggiungiamo una scatoletta sulla sua base, all'interno
della sfera grossa.
Poi assegnamo alla scatoletta una MASS superiore (ad esempio, 50 volte) rispetto a quella degli altri elementi del pupazzetto. Ovviamente la scatoletta dovrà essere inglobata nel gruppo.
![]()