4.8.5.4.1 Fare
una Nuvola
Le halo attenuanti sono perfette per
creare nuvole e fumo. Negli esempi seguenti cercheremo di fare una nuvoletta.
Ripartiamo da una sfera di dimensione unitaria, riempita con una semplice
halo attenuante (vedi halo21.pov).
camera {
location <0, 0, -2.5>
look_at <0, 0, 0>
}
light_source { <10, 10, -10> color rgb 1 shadowless }
plane { z, 2
pigment { checker color rgb 0, color rgb 1 }
finish { ambient 1 diffuse 0 }
scale 0.5
hollow
}
sphere { 0, 1
pigment { color rgbt <1, 1, 1, 1> }
halo {
attenuating
spherical_mapping
linear
color_map {
[ 0 color rgbt <1, 0, 0, 1> ]
[ 1 color rgbt <1, 0, 0, 0> ]
}
samples 10
}
hollow
}
Fig. 148-Primo elemento: alone semplice
Sebbene le nuvole siano normalmente bianche,
o grigie, ma non rosse, faremo questa nuvola rossa per renderla più
visibile contro lo sfondo a scacchi bianchi e neri.
Il colore della halo attenuante, è calcolato dalla densità
totale accumulata dopo che un raggio ha 'viaggiato' attraverso tutto il
campo di particelle. Dobbiamo ricordarci di questo quando creiamo la mappa
dei colori. Vogliamo che le zone a bassa densità della nuvola siano
altamente trasparenti, per cui usiamo un colore rgbt <1,0,0,1> e
vogliamo altresì che le zone ad alta densità siano opache
e quindi scegliamo rgbt <1,0,0,0>.