In questo primo tutorial della serie su fuoco e fumo con il simulatore Fluid in Blender 4.5, vedremo quali sono i due ingredienti di base necessari per realizzare una simulazione in Blender.
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 primo tutorial della serie su fuoco e fumo con il simulatore Fluid in Blender 4.5, vedremo quali sono i due ingredienti di base necessari per realizzare una simulazione in Blender.
Iniziamo da una scena vuota di Blender. Per poter inserire del fuoco o del fumo nella scena, penserete che sia necessario, per prima cosa, inserire un oggetto che emetta questo tipo di elementi. La supposizione è esatta, ma costituisce solo metà degli elementi di base necessari per realizzare una simulazione in Blender. Iniziamo, comunque, inserendo nella scena l'oggetto che farà da emettitore.
Gli strumenti relativi alla simulazione di fuoco e fumo di Blender si trovano nella scheda Physics di ciascun oggetto. Il tipo di componente che dobbiamo aggiungere è Fluid, che gestisce le simulazioni sia dei liquidi che delle fiamme e dei gas. All'inizio, sarà presente solo un menù chiamato Type, che però non conterrà la distinzione tra fluidi o altro, ma solo un elenco dei possibili tipi di attori della simulazione.
I tooltip dei vari tipi di elementi ci danno già qualche indicazione sulle loro funzioni. Notiamo, in particolare, che il tipo Flow serve ad inserire o rimuovere gli elementi dalla scena. Abbiamo creato il primo oggetto per farlo diventare un emettitore di fuoco e fumo, quindi scegliamo proprio questo tipo di elemento.

Adesso sono apparse varie voci nella scheda del componente. La prima è Flow Type, che di default è impostata su Smoke. Aprendo il menù, notiamo che al tipo Liquid è destinata solo una voce di menù, mentre per quanto riguarda fuoco e fumo abbiamo tre possibili opzioni, date dai due soli elementi separati e dalla loro combinazione. L'opzione Fire And Smoke conterrà i parametri e le opzioni per entrambi i tipi, quindi inizialmente selezionerò questa, per buona parte della serie di tutorial.

Se avete dimestichezza con altri tipi di simulazioni fisiche in Blender, come ad esempio Cloth o Collision, a questo punto probabilmente penserete sia sufficiente portarvi al primo fotogramma della Timeline e cliccare sul pulsante Play per avviare la simulazione di fuoco e fumo. Tuttavia, effettuando queste operazioni, non succede nulla. Ritorniamo quindi al primo fotogramma della Timeline e introduciamo il secondo attore fondamentale per realizzare una simulazione di tipo Fluid, ossia il Domain.
Ogni simulazione di tipo Fluid deve avvenire all'interno di una porzione di spazio 3D, detto anche volume, definito mediante una mesh. In Blender, questo volume prende il nome di Domain della simulazione. Ciò è necessario soprattutto per motivi di performance, visto che queste simulazioni richiedono molta memoria e molti calcoli, come vedremo. Il Domain può essere un oggetto di qualsiasi forma, ma alla fine Blender ne prenderà il Bounding Box, che è sempre un parallelepipedo, per cui la scelta più ovvia è quella di un Cube opportunamente ridimensionato.
Dopo aver inglobato l'oggetto emettitore all'interno del Cube che farà da Domain, selezioniamo appunto il Cube e dotiamolo di un componente Fluid di tipo Domain, con sottotipo Gas. Il Cube diventerà subito trasparente, lasciando vedere la struttura. Apparirà inoltre un cubo più piccolo, in uno degli angoli in basso, e presto vedremo di cosa si tratta. Il cambiamento più rilevante riguarda però l'oggetto Inflow all'interno del Domain, che adesso ci appare avvolto dalle fiamme!

Con il primo fotogramma dell'animazione impostato come fotogramma corrente nella Timeline, facciamo click su Play per avviare la simulazione. Qualcosa è successo, è evidente, ma come prima simulazione di fuoco e fumo ci sembra alquanto deludente, perché il fuoco c'è solo per i primi fotogrammi, dopodiché resta solo il fumo.

Il motivo di questo comportamento risiede in un'impostazione dell'oggetto emettitore, per cui per prima cosa lo seleziono. Il parametro del componente Fluid che ci interessa è Flow Behavior, che di default è impostato su Geometry. Il tooltip ci dice che Geometry fa utilizzare la geometria corrente per produrre il fuoco, mentre la modalità Inflow aggiunge fuoco alla scena. Cambiamo quindi la modalità in Inflow, torniamo al primo fotogramma della Timeline e clicchiamo su Play.
L'espressione "aggiunge fuoco", nel tooltip della modalità Infow, è quindi la chiave di tutto, perché gli oggetti Inflow producono continuamente, ad ogni fotogramma, nuovi elementi della simulazione a partire dalla geometria. La modalità Geometry considera invece la geometria solo al primo fotogramma, consumandola subito, per così dire. In un certo senso, utilizzare la modalità Geometry è come far bruciare un pezzettino di carta o far emettere un singolo sbuffo di gas ad una macchina del fumo, mentre Inflow è il fornello della cucina o una macchina del fumo che emette continuamente del fumo.
Avrete notato che le fiamme, soprattutto nella parte bassa dell'oggetto, appaiono un po' troppo squadrate, o per meglio dire cubiche, visto che siamo nel 3D. Il motivo di questo aspetto risiede in un parametro del Domain, chiamato Resolution, ed ha a che fare con la suddivisione del volume del Domain in tanti cubetti. Questa risoluzione è mostrata a video dal cubetto presente in un angolo in basso del Domain. In effetti, soprattutto con valori bassi di Resolution potete vedere facilmente come fiamme e fumo vengano suddivisi in cubetti di quella dimensione.

Le simulazioni di tipo Fluid avvengono suddividendo il volume del Domain in piccoli cubetti, chiamati Voxel. Si tratta dell'unità minima per calcolare la simulazione, per cui un Voxel è l'equivalente 3D di un pixel delle immagini 2D. Come per i pixel, ad un maggior numero di Voxel per un dato volume corrisponderà una migliore qualità, tuttavia questo comporterà l'utilizzo di più risorse sia per il calcolo della simulazione che per la memoria occupata su disco. Il consiglio è quindi quello di iniziare con il valore di default per il campo Resolution, ossia 32, per poi impostare gli altri parametri fino ad ottenere la forma desiderata per fuoco e fumo, aumentando poi il valore di Resolution per fare altre prove e, infine, portarlo ad un valore molto alto per il risultato finale.
Parlando di memoria occupata, vediamo dove vengono salvati i dati della simulazione Fluid, considerando soprattutto che io non ho ancora salvato il file del progetto. Questa informazione si trova nella sezione Cache dell'oggetto Domain, e già dal percorso specificato in quella sezione scopriamo che Blender ha creato una cartella su disco nella quale memorizzare i file della simulazione. Questa cartella si trova in un percorso temporaneo perché io non ho salvato il file di progetto corrente. Ricordatevi quindi di non fare come ho fatto io, ma di salvare invece il file del progetto Blender prima di creare Domain e altri elementi della simulazione Fluid, così questa cartella verrà creata nella stessa cartella del file del progetto e non dovrete andare a cercarla su disco!
Se a questo punto cambiamo la modalità di visualizzazione o avviamo un rendering ad un frame intermedio della Timeline, non vedremo né il fuoco né il fumo. Ciò è dovuto al fatto che quello che vediamo nella 3D Viewport in modalità Solid la visualizzazione dei Voxel che costituiscono fuoco e fumo nello spazio 3D, ma non abbiamo ancora definito i loro Materials per il Rendering. Tratteremo questo argomento nella prossima puntata!