Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Proprietà del sistema di particelle 3D

Proprietà di un emettitore

../../../_images/particle_props_emitter.webp

La casella di spunta accanto alla proprietà Emitting attiva e disattiva il sistema di particelle. Le particelle saranno elaborate e renderizzate solo se la casella è spuntata. È possibile impostare questa proprietà in fase di esecuzione se si desidera attivare o disattivare i sistemi di particelle dinamicamente.

La proprietà Amount controlla il numero massimo di particelle visibili alla volta. Aumentando il valore, saranno generate più particelle a scapito delle prestazioni.

La proprietà Amount Ratio rappresenta il rapporto tra il numero di particelle e la quantità che sarà emessa. Se è inferiore a 1.0, la quantità di particelle emesse durante il tempo di vita sarà pari a Amount * Amount Ratio. Modificare questo valore durante l'emissione non influisce sulle particelle già create e non fa riavviare il sistema di particelle. È utile per creare effetti in cui il numero di particelle emesse varia nel tempo.

È possibile impostare un altro nodo di particelle come Sub Emitter, che sarà generato come figlio di ciascuna particella. Consultare la sezione Sotto-emettitori di questo manuale per una spiegazione dettagliata su come aggiungere un sotto-emettitore a un sistema di particelle.

Proprietà del tempo

../../../_images/particle_props_time.webp

La proprietà Lifetime controlla per quanto tempo ogni particella esiste prima di scomparire. È misurata in secondi. È possibile impostare molte proprietà delle particelle in modo da variare gradualmente nel corso della loro vita, passando gradualmente da un valore all'altro.

Lifetime e Amount sono correlate. Determinano la frequenza di emissione per il sistema di particelle. Ogni volta che si desidera sapere quante particelle sono generate al secondo, questa è la formula da utilizzare:

\[Particelle al secondo = \frac{Amount}{Lifetime}\]

Esempio: emettere 32 particelle con una durata di vita di 4 secondi ciascuna significherebbe che il sistema emette 8 particelle al secondo.

La proprietà Interp to End fa sì che tutte le particelle nel nodo interpolino verso la fine del loro tempo di vita.

Se la casella accanto alla proprietà One Shot è spuntata, il sistema di particelle emetterà la quantità definita in amount di particelle e poi si disattiverà. Sarà "eseguito" una sola volta. Questa proprietà non è spuntata normalmente, quindi il sistema continuerà a emettere particelle finché non sarà disattivato o distrutto manualmente. Le particelle a colpo singolo ("One Shot") sono adatte per effetti che reagiscono a un singolo evento, come la raccolta di oggetti o le schegge che esplodono quando una pallottola colpisce un muro.

La proprietà Preprocess permette di avanzare rapidamente fino a un punto intermedio del tempo di vita del sistema di particelle e di iniziare il rendering da lì. Il suo valore è espresso in secondi. Un valore di 1 significa che, all'avvio del sistema di particelle, sembrerà che sia già in esecuzione da un secondo.

Questo può essere utile se si desidera che il sistema di particelle sembri attivo da un po' di tempo, anche se è stato appena caricato nella scena. Si consideri l'esempio seguente. Entrambi i sistemi di particelle simulano la polvere che vola intorno l'area. Con un valore di pre-elaborazione pari a 0, non ci sarebbe polvere per i primi due secondi perché il sistema non ha ancora emesso abbastanza particelle affinché l'effetto diventi percettibile. Si può notare nel video a sinistra. Questo è in confronto con il video a destra, dove il sistema di particelle è pre-elaborato per 4 secondi. La polvere è completamente visibile sin dall'inizio perché abbiamo saltato i primi quattro secondi di "preparazione".

../../../_images/particle_preprocess.webp

Nessuna pre-elaborazione (a sinistra) vs. 4 secondi di pre-elaborazione (a destra)

È possibile rallentare o accelerare il sistema di particelle tramite la proprietà Speed Scale. Questa impostazione si applica sia all'elaborazione dei dati sia al rendering delle particelle. Impostandola su 0, il sistema di particelle sarà messo completamente in pausa, mentre impostandola su un valore tipo 2, si muoverà al doppio della velocità.

../../../_images/particle_speed_scale.webp

Diversi valori per la scala di velocità: 0,1 (sinistra), 0,5 (centro), 1,0 (destra)

La proprietà Explosiveness controlla se le particelle sono emesse in sequenza o simultaneamente. Un valore di 0 significa che le particelle sono emesse una dopo l'altra. Un valore di 1 significa che tutte le particelle specificate da amount sono emesse allo stesso tempo, dando all'effetto un aspetto più "esplosivo".

La proprietà Randomness aggiunge un elemento di casualità alla tempistica di emissione delle particelle. Se impostata su 0, non c'è alcuna casualità e l'intervallo tra l'emissione di una particella e la successiva è sempre lo stesso: le particelle sono emesse a intervalli regolari. Un valore di Randomness pari a 1 rende l'intervallo completamente casuale. È possibile utilizzare questa proprietà per rompere l'uniformità degli effetti. Quando Explosiveness è impostata su 1, questa proprietà non ha alcun effetto.

Particelle in esecuzione a FPS bassi

Interpolazione disabilitata (a sinistra) vs. abilitata (a destra)

La proprietà Fixed FPS limita la frequenza di elaborazione del sistema di particelle. Questo include gli aggiornamenti delle proprietà, le collisioni e gli attrattori. Ciò può migliorare notevolmente le prestazioni, soprattutto in scene che fanno molto uso delle collisioni tra particelle. Si noti che questa impostazione non modifica la velocità con cui le particelle si muovono o ruotano. Per tale scopo sarebbe necessario utilizzare la proprietà Speed Scale.

Quando si imposta Fixed FPS su valori molto bassi, si noterà che l'animazione delle particelle inizia ad apparire scattosa. Questo può talvolta essere desiderabile se si adatta alla direzione artistica, ma molto più spesso si desidera che i sistemi di particelle siano animati fluidamente. Questo è ciò che fa la proprietà Interpolate. Essa fonde le proprietà delle particelle tra un aggiornamento e l'altro in modo che anche un sistema di particelle che funziona a 10 FPS appaia fluido come se funzionasse a 60 FPS.

Nota

Quando si utilizza la collisione di particelle, può verificarsi un effetto tunnel se le particelle si muovono velocemente e i collisori sono sottili. Sì può rimediare aumentando Fixed FPS (a scapito delle prestazioni).

Proprietà di collisione

Vedi anche

Per configurare la collisione di particelle è necessario seguire ulteriori passaggi descritti in Collisioni di particelle 3D.

La proprietà Base Size definisce la dimensione di collisione predefinita di ciascuna particella, utilizzata per verificare se una particella sta entrando in collisione con l'ambiente. In genere, si desidera che questo valore sia più o meno uguale alle dimensioni della particella. Può essere opportuno aumentarlo per le particelle molto piccole e che si muovono molto velocemente, per evitare che attraversino la geometria di collisione.

Proprietà di disegno

Proprietà di disegno di particelle

The Visibility AABB property defines a box around the particle system's origin. As long as any part of this box is in the camera's field of view, the particle system is visible. As soon as it leaves the camera's field of view, the particle system stops being rendered at all. You can use this property to boost performance by keeping the box as small as possible.

Una cosa da tenere a mente quando imposti le dimensioni per il Visibility AABB è che le particelle che stanno fuori dai suoi limiti scompaiono istantaneamente quando esce dal campo visivo della telecamera. Inoltre, le collisioni tra particelle non avverranno fuori dal Visibility AABB. Sebbene non sia tecnicamente un bug, questo può avere un effetto negativo sull'esperienza visiva.

Quando la proprietà Local Coords è selezionata, tutti i calcoli delle particelle utilizzano il sistema di coordinate locale per determinare cose come l'alto e il basso, la gravità e la direzione del movimento. L'alto e il basso, ad esempio, seguiranno la rotazione del sistema di particelle o del suo nodo genitore. Quando la proprietà non è selezionata, per questi calcoli è utilizzato lo spazio mondiale: il basso sarà sempre -Y nello spazio mondiale, a prescindere dalla rotazione del sistema di particelle.

../../../_images/particle_coords.webp

Coordinate dello spazio locale (a sinistra), rispetto alle coordinate dello spazio mondiale (a destra)

La proprietà Draw Order controlla l'ordine in cui sono disegnate le singole particelle. Index indica che sono disegnate nell'ordine di emissione: le particelle generate dopo sono disegnate sopra quelle di prima. Lifetime indica che sono disegnate nell'ordine della loro durata rimasta. Reverse Lifetime inverte l'ordine di disegno di Lifetime. View Depth indica che le particelle sono disegnate in base alla loro distanza dalla telecamera: quelle più vicine alla telecamera sono disegnate sopra quelle più lontane.

La proprietà Transform Align controlla la rotazione predefinita delle particelle. Disabled significa che non si allineano in alcun modo particolare. Invece, la loro rotazione è determinata dai valori impostati nel materiale di processo. Z-Billboard significa che le particelle saranno sempre rivolte verso la telecamera. Questo è simile alla proprietà Billboard nel materiale standard. Y to Velocity significa che l'asse Y di ciascuna particella si allinea con la sua direzione di movimento. Può essere utile per cose come proiettili o frecce, dove si desidera che le particelle puntino sempre "in avanti". Z-Billboard + Y to Velocity combina le due modalità precedenti. L'asse Z di ciascuna particella punterà verso la telecamera mentre il suo asse Y si allineerà con la sua velocità.

Proprietà di scie

Scie di particelle

Proprietà di scie di particelle

La proprietà Enabled controlla se le particelle sono renderizzate come scie. La casella deve essere selezionata se si desidera utilizzare le scie delle particelle.

La proprietà Length Secs controlla la durata di emissione di una scia. Maggiore è questa durata, più lunga sarà la scia.

Consultare la sezione Scie di particelle di questo manuale per una spiegazione dettagliata di come funzionano le scie di particelle e di come configurarle.