In questo quinto tutorial della serie su fuoco e fumo con il simulatore Fluid in Blender 4.5, vedremo alcuni dei parametri principali del Domain, in particolare quelli delle sezioni Settings, Gas, Fire e Collections.


Questo tutorial fa parte di una miniserie di 10 puntate sulle basi di Fuoco e Fumo in Blender 4.5. Per l'elenco completo delle puntate, clicca qui.

La versione video di questo tutorial non è attualmente disponibile in questa lingua.


Trascrizione del video

Salve a tutti! In questo quinto tutorial della serie su fuoco e fumo con il simulatore Fluid in Blender 4.5, vedremo alcuni dei parametri principali del Domain, in particolare quelli delle sezioni Settings, Gas, Fire e Collections. Tra le altre cose, alcuni dei parametri di queste sezioni ci consentiranno di realizzare fiamme e fumo più vivaci, meno regolari.

Iniziamo con gli elementi principali della sezione Settings. Ormai conosciamo bene il parametro Resolution Divisions e sappiamo che se la dimensione dei Voxel, indicata dal cubo in basso nel Domain, è molto piccola, ma il Domain è grande, ci vorranno più calcoli e memoria per realizzare la simulazione. L'opzione Adaptive Domain, in basso nella sezione Settings, consente di far modificare dinamicamente a Blender la dimensione del Domain, nel corso della simulazione.

Anche con la modalità Adaptive, comunque, il Domain crescerà in altezza fino ad un certo punto, dopodiché il fumo inizierà a sparire a contatto col soffitto del Domain, considerandolo come un elemento Outflow. È possibile far dissolvere più velocemente il fumo mediante un'apposita opzione della sezione Gas, che vedremo tra poco. Prima, però, disattiviamo Adaptive Domain e diamo un'occhiata alla sezione Border Collisions.

I parametri del gruppo Border Collisions, quando attivati, fanno sì che i vari lati del bounding box vengano visti come ostacoli, deviando quindi fiamme e fumo, anziché come degli Outflow come avviene di default, quando sono disattivati e lì fuoco e fumo semplicemente svaniscono all'istante. Attivando Border Collision per il soffitto del Domain, il fumo si addenserà lì e, allargandosi verso i bordi, sparirà al contatto con questi ultimi, in quanto Border Collision è disattivato ai lati.

Attivando Border Collision anche per gli altri lati, il Domain si comporterà come una scatola chiusa e fuoco e fumo continueranno ad accumularsi anziché dissolversi al contatto con le pareti.

Tornando nella parte alta della scheda settings notiamo Time Scale e Adaptive Time Steps. Time Scale consente semplicemente di rallentare o al contrario accelerare la simulazione.

La checkbox Adaptive Time Steps, che di default è selezionata, fa sì che sia l'algoritmo a decidere quando fare più calcoli intermedi, detti Steps, per ogni frame dell'animazione. I tre parametri posti sotto questa checkbox sono relativi proprio all'algoritmo utilizzato per determinare gli Steps da effettuare di volta in volta. Maximum e Minimum hanno significati chiari, mentre per CFL Number la questione è un po' più complicata. Tralasciando i dettagli implementativi, ci serve sapere che un valore alto per CFL Number richiederà meno Steps e quindi meno tempo, ma il risultato sarà meno accurato. In simulazioni dove le fiamme e il fumo sono particolarmente veloci, conviene utilizzare un valore CFL Number più basso per migliorare la qualità della simulazione.

I parametri del gruppo Gravity sono disattivati di default perché vengono utilizzate le impostazioni globali della scena, nella scheda Scene. Disattivando Gravity a livello globale nella scheda Scene, questi parametri torneranno ad essere disponibili in Physics e sarà possibile modificarli.

Empty Space funziona solo con gli elementi Smoke. In particolare, Voxels pieni per meno di questo valore verranno considerati vuoti e ignorati nella simulazione, risparmiando tempo di calcolo.

Per quanto riguarda la sezione Gas, abbiamo innanzitutto i parametri Buoyancy Density e Heat, che rappresentano una spinta verso l'alto dei gas, il primo basandosi sulla densità dei gas e il secondo sulla loro temperatura. Questi due valori non rappresentano direttamente la temperatura e la densità, ma le forze di spinta dovute a temperatura e densità. Per fortuna, i tooltip di questi due parametri sono molto chiari e ci informano che, all'aumentare di questi valori, i gas saliranno più velocemente. Buoyancy Heat, in particolare, è la spinta dovuta al calore del fumo. La differenza iniziale tra la temperatura del fumo e quella dell'ambiente circostante va definita per ciascun oggetto Inflow, mediante il parametro Initial Temperature. Nella scheda dell'oggetto Inflow troviamo anche il parametro Density, che quindi è collegato a Buoyancy Density del Domain.

Vorticity regola la turbolenza del fumo, che avrà effetti indiretti anche sulle fiamme. Maggiore sarà il valore di Vorticity, più sarà perturbato il fumo. Attenzione, perché bastano dei valori bassi per questo parametro per realizzare turbolenze molto intense! A video sto mostrando anche come varia il risultato al variare della spinta data da Buoyancy Density, che fa salire il fumo più velocemente.

Per evitare che i gas si accumulino sul soffitto, e in generale per farli sparire velocemente, possiamo attivare Dissolve e regolare il parametro Dissolve Time, che è espresso in fotogrammi. Va da sé quindi che più basso sarà il valore di Dissolve Time più velocemente sparirà il fumo, perché resterà per un numero minore di fotogrammi. L'opzione Dissolve Slow consente di dissolvere i gas in maniera logaritmica ossia velocemente all'inizio e poi sempre più lentamente.

Della sezione Gas fanno parte anche Noise e Fire, che ci danno la possibilità di perturbare le fiamme. Noise, in particolare, agisce soprattutto sui contorni delle fiamme, aggiungendo molti dettagli lì, per cui può essere utile per fare ad esempio un fuoco da campo o da caminetto più turbolento, per rendere la fiamma meno regolare. I parametri Strength e Scale consentono intuitivamente di regolare l'intensità del disturbo. Il parametro Upres Factor si riferisce ad un fattore di suddivisione aggiuntiva, da applicare al valore di suddivisione del Domain, utilizzato per realizzare i dettagli del rumore. Questo spiega anche il perché del rallentamento nel calcolo della simulazione, in quanto le zone soggette a rumore vengono calcolate con una risoluzione maggiore.

Per quanto riguarda i parametri della sezione Fire, notiamo subito che anche qui c'è un parametro Vorticity, come nella sezione Gas. Come per il fumo, Vorticity introduce della turbolenza, in questo caso per le fiamme. Anche le fiamme hanno una temperatura e, come per il fumo, a valori maggiori corrisponderà una maggiore velocità di salita. Combinando i due parametri si ottengono fiamme più alte e vivaci.

La sezione Collections contiene due campi nei quali specificare delle Collections, chiamati Flow ed Effector. Consentono, intuitivamente, di prendere in considerazione nella simulazione solo gli oggetti Flow ed Effector che fanno parte delle Collections specificate nei rispettivi campi, se specificate. Gli Effector sono particolari elementi che consentono di definire oggetti in grado di deviare il percorso di fuoco e fumo. Tratteremo i due tipi di Effectors, che sono Colliders e Guides, tra qualche puntata. Di default non ci sono Collections specificate, per cui tutti gli oggetti di tipo Flow e tutti quelli di tipo Effector vengono presi in considerazione nella simulazione.

Questo sito ha il solo scopo di mostrare alcuni dei miei lavori senza alcuna intenzione promozionale. Si prega di notare che attualmente non sto cercando (né risponderò a) richieste di lavori personalizzati, consulenze o altre collaborazioni lavorative, di qualsiasi tipo.


INFORMATIVA ESTESA SULL'UTILIZZO DEI COOKIES