THINKING PARTICLES - CREAZIONE DI UN SISTEMA PIU' COMPLESSO.


Crea un sistema fatto così:

Nel DynamicSet "Generazione" crea un operatore Born.

Tra i parametri del Born specifichiamo il gruppo "Particelle" come quello di appartenenza per le particelle generate da questo operatore.

Se premi Play vedrai che c'è una sola particella nella scena.

La particella viene generata ma non si muove perchè non ha velocità nè forze esterne che agiscono su di essa.

Crea il DynamicSet "Movimento".

Aggiungi l'Operator "Particelle" nel DynamicSet "Movimento".

L'operatore Born ha il suo parametro Group impostato su "Particelle", perciò tutti gli operatori che verranno collegati al gruppo "Particelle" influenzeranno anche l'operatore Born.

Crea un operatore Velocity nel DynamicSet "Movimento".

Collega il gruppo "Particelle" all'operatore Velocity.

Il DynamicSet diventa valido. Premi Play e vedrai una singola particella che si muove verso l'alto.

Modifichiamo un po' di parametri dell'operatore Born.
Aumentiamo il Variation Angle del Velocity.

Seleziona i MasterDynamic. E' possibile osservare le modifiche dei parametri in tempo reale quando la modalità Edit On The Fly è attiva. In questo caso è possibile anche vaiare i parametri mentre l'animazione procede e osservare in tempo reale le variazioni.

Quando è disattiva invece occorre attendere un ciclo di animazione per vedere l'effetto della variazione.

Crea un Dynamicset per definire posizione, dimensione e forma delle particelle.

Inserisci un operatore Particelle all'interno del DynamicSet PosDimFor, e 2 operatori: un Position e un Size.

Collega così:

Imposta per il Position questi valori:

Adesso le particelle vengono generate nel punto (0,0,50), però non si muovono perchè l'operatore Position va a sovrascrivere l'operatore Velocity: qando le particele si muovono, subito dopo incontrano l'operatore Position che le riporta nel punto di partenza.

La soluzione consiste nel posizionare l'opertore Position sopra l'operatore Velocity. Tuttavia possiamo utilizzare anche una Condition per dire all'oepratore Position di agire soltanto nell'istante in cui una particella nasce.

Inserisci nel DynamicSet PosDimFor una condizione di tipo Particle Age.

Grazie al collegamento fra il gruppo "Particelle" e la condizione Particle Age, l'età delle particelle viene controllata. Quando l'età di una particella raggiunge quella specificata dalla condizione, questa assume valore "True", altrimenti valore "False".

Visualizza l'input ON dell'operatore Position. Serve ad attivare o disattivare l'operatore.

Per capire quale tipo di dati collegare a questo input, basta andarci sopra con il mouse.

In questo caso l'input riceve dati di tipo booleano, propio come i valori "True" o "False" generati dalla condizione Particle Age. Colleghiamo l'output del Particle Age all'input ON del Position.

Il Particle Age è impostato così:

Cioè sulla nascita delle particelle. Perciò l'operatore Position verrà attivato per ogni particella solo al momento della sua nascita.
Adesso le particella partono da Z=50 e si muovono in base alla loro Velocity.

Otteniamo lo stesso risultato con un metodo alternativo. Rimuovi il Particle Age cliccando sul pulsante Remove del DynamicSet View.....

 

....oppure selezionando il ParticleAge nella Wire Setup View e andando sul pulsante REMOVE.

Per ina maggiore coerenza, occorrerebbe spostare il Dynamic Set PosDimFor sopra al Dynamic Set Movimento. Ma anche così funziona.

Seleziona l'operatore Position, clicca col destro in un punto vuoto della Wire Setup View e taglialo con Cut.

Seleziona il Dynamic Set "Generazione" e incollalo là dentro.

Collegali così:

Il risultato è lo stesso.

Inserisci un operatore StdShape nel DynamicSet "PosDimFor".

Poi variamo qualche parametro dell'operatore Size.

Riprendiamo la situazione in cui facevamo uso del Particle Age.

Rendiamo sempre coerente la successione degli elementi nel Dynamic Set eventualmente collocandoli in posizione differente:

Crea nella scena un oggetto Dummy.
Seleziona questo DynamicSet:

 

 

 

 

Crea un oggetto helper di tipo Node al suo interno.

Questi sono i suoi parametri:

Da qui selezioniamo il Dummy. Poi collega così:

Adesso le particelle vengono emesse dal Pivot Point del Dummy.

Aggiungiamo delle forze alle particelle, tipo gravità e vento. Intanto creiamo gli space warps.

Linka il sistema particellare alle due forze con il Bind To Space Warp.

Crea un DynamicSet per le forze:

Crea un operatore StdForce in questo DynamicSet.

Inserisci anche il gruppo "Particelle" e collegalo.

I parametri dell'operatore StdForce sono questi:
Sono elencati tutti gli space warp a cui il sistema è linkato. Per attivarli selezionali e clicca sul pulsante Activate.

Poi crea un blocco per il gruppo di particelle e collegalo.