Il contesto World in Blender Cycles si presenta con qualche pannello in più rispetto a quello visto nel paragrafo 3.4
Disattivando la casella Diffuse nel pannello Ray Visibility, il world comparirà come sfondo ma non diffonderà il proprio colore sulle superfici. Possiamo anche evitare che lo sfondo venga riflesso disattivando Glossy, o che venga trasmesso disattivando Transmission. Infine senza la spunta a Volume Scatter lo sfondo non verrà diffuso dagli oggetti a cui abbiamo assegnato il relativo shader volumetrico. Per il resto continueremo a definire il world tramite lo Shader Editor in modo del tutto analogo a quanto visto nel capitolo dedicato ad Eevee, con l’importante differenza che nel motore grafico Cycles l’illuminazione HDR si diffonde tramite i rimbalzi diffuse glossy e transmission. L’HDR (High Dynamic Range) è un tipo di illuminazione ambientale che per il word impiega delle particolari immagini codificate in un formato che anziché trattare i dati sul colore dei pixel, come avviene per le comuni jpeg e png, memorizza i valori fisici di luminosità e radianza, cioè gli stessi parametri trattati dai moderni motori di rendering. L’HDR nasce da una tecnica fotografica che consiste nello scattare più foto dello stesso soggetto a diverse esposizioni, da sottoesposte a sovraesposte, in modo da ottenere un maggiore insieme di informazioni sia sulle zone d’ombra, sia su quelle illuminate. Tale tecnica è oggi molto diffusa tra gli appassionati di fotografia a causa dell’incredibile qualità di certe immagini che, se saggiamente sviluppate, ben riproducono la percezione umana del colore in diverse condizioni di luminosità, ciò grazie anche alla potenza dei computer moderni capaci di gestire un’elevata quantità di dati HDR ad alta definizione. L’HDR ha rapidamente trovato impiego anche nel rendering 3D, dove risulta utile per ottenere risultati fotorealistici in modo relativamente semplice e rapido. Il formato delle immagini è il Radiance HDR (.hdr) che ricorre a un numero maggiore di bit per pixel rispetto ai classici formati a 24 bit. Tali immagini godono inoltre di una particolare “forma” che consente l’osservazione in 3D della foto come se ci trovassimo nel punto esatto dov’era collocato l’apparecchio fotografico. Parliamo della proiezione equirettangolare (o geografica) di una vista a 360° orizzontale e 180° verticale, ottenuta componendo diversi scatti fotografici oppure ricorrendo a particolari obiettivi. Selezionando uno sfondo HDR come visto nel paragrafo 3.4, nello Shader Editor troveremo il nodo Environment Texture già impostato con le coordinate Equirectangular.
Blender mette a disposizione anche dei modelli per la simulazione del cielo, incluso un sole che diverrà visibile (sotto forma di alone luminoso) solo aumentando il parametro di torbidità atmosferica, rendendo così più realistici albe e tramonti. Potrete dunque cliccare sul cerchio giallo del selettore Color nel pannello Surface e quindi scegliere Sky Texture dal menù che apparirà su schermo e ritrovarvi con questo nel contesto world:
e questo nodo nello Shader Editor
I modelli d’illuminazione tra Hosek/Wilkie e Preetham funzionano sia con eevee che con Cycles. Tramite la sfera grigia potremo variare la posizione del sole. In H.Wilkie oltre al valore di torbidità (1-10) c’è anche il Ground Albedo per estendere in altezza l’orizzonte della luminosità (il realismo potrà essere migliorato inserendo nella scena una lamp Sun, coerentemente all’orientamento del sole scelto in sky texture). Segue un esempio di rendering Sky Texture + Sun.
Il modello Nishita oltre ad essere più evoluto è dedicato al solo Cycles.
L’orientamento del sole (incluso nel modello) in questo caso si gestisce con i parametri rotazione ed elevazione. In più troviamo Air, Dust e Ozone per regolare la composizione chimico fisica dell’atmosfera che influirà molto sui colori e sull’illuminazione.
In Cycles l’oggetto camera è del tutto analogo a quello visto in Eevee (par 3.10) anche per quel che riguarda la profondità di campo. L’unica differenza la riscontriamo nella modalità panoramica. Per una visione grandangolare ci basterà usare la modalità Perspective con dei focal length minori di 35mm. Tramite Panoramic attiveremo invece le interessanti modalità ultra grandangolari: Fisheye ed Equirettangolare, quest’ultima utile a generare sfondi HDR 360°x180° direttamente dalle nostre scene Cycles.
In modalità fisheye (letteralmente occhio di pesce) abbiamo un rendering circolare di un campo visivo che di default è pari a 180°. Nel contesto Object Data della camera potremo selezionare (pannello Lens) due modalità di fisheye: Equidistant ed Equisolid. Con Equidistant l’area del rendering si adatterà automaticamente alle proporzioni della camera (diventando una ellisse per le risoluzioni non quadrate).
Qui potremo anche variare l’angolo di campo agendo su Field of View (10° 360°), restringendo l’area visibile. Nella modalità Equisolid è possibile agire anche sulla lunghezza focale Lens (0.01-15.0). Diminuendo questo valore vedrete l’immagine allontanarsi. Nel successivo pannello Camera troviamo il valore Sensor Fit (1,0 100.0) espresso in millimetri; diminuendolo andremo a ingrandire l’area visibile. La scena utilizzata in questi esempi è quella visibile in basso, dove la camera è circondata da otto mesh suzanne di colore differente più una mesh che fa da pavimento con delle mura perimetrali; quindi un’illuminazione ambientale sky texture per il world e infine una fonte luminosa diretta di tipo Sun.
Tale scena è stata appositamente pensata per esaminare la modalità panoramica Equirectangular, con cui è molto semplice produrre degli sfondi HDR 360° da poter successivamente impiegare come mappe d’illuminazione ambientale per gli stessi Cycles ed Eevee (o altri software). Nel contesto Output delle properties dobbiamo fissare una risoluzione piuttosto elevata, con numero di pixel orizzontali doppio rispetto a quelli verticali (es: 6000 x 3000) dopodiché dovremo solo selezionare il formato grafico (tra cui il Radiance HDR) prima di procedere al rendering.
La proiezione equirettangolare è tipica delle textute da applicate a delle intere mesh sferiche, od esempio un pallone, la luna, oppure dei pianeti. In questo caso potremo utilizzare semplicemente il nodo image texture con le sue impostazioni di defaut. (8k_moon.jpg solarsystemscope.com – CC 4.0)
Analogamente a quanto visto in Eevee potremo assegnare uno shader volumetrico all’intero world.
Utilizzando ad esempio lo shader volume scatter con una densità maggiore di zero (basta un piccolo valore decimale) noteremo che sparirà sia l’effetto dell’illuminazione ambientale definita dall’eventuale shader surface, sia l’illuminazione data da qualsiasi lampada sun (direzionale) presente in scena, e lo sfondo diverrà completamente scuro. In altri termini sarà possibile osservare solo la presenza di lampade point spot ed area, più ovviamente le mesh da esse illuminate. Ciò accade perché l’illuminazione ambientale data dal background, o dalle lampade sun, dipende dalla direzione e non dalla distanza (matematicamente infinita) laddove lo shader volumetrico comporta la dispersione della luminosità fino al suo annullamento in funzione della distanza. Inevitabilmente gli shader volumetrici renderanno la scena piuttosto pesante da renderizzare, motivo per cui consiglio d’impostare un basso numero di bounces volume (non oltre 4) nel pannello light paths del contesto render, ed eventualmente aumentare in base alle proprie esigenze.
Paragrafo successivo
Paragrafo precedente
Torna all’Indice
Nell’augurarti un divertente e produttivo studio di Blender, ti ricordo che puoi supportare questo progetto in due diversi modi: con una piccola donazione (paypal) oppure acquistando la versione PDF (su lulu.com) impaginata in modo professionale e ottimizzata per la visione su Tablet.