giovedì 4 giugno 2015
Come funziona la riflessione nei materiali VrayforC4D 1.9?
Pubblicato da
Angelo Ferretti
17 commenti:
in:
materiali vray,
realismo estremo,
tutorial,
VRayforC4D
Nel passaggio dalla versione 1.8 alla 1.9, i valori di default dello Specular Layer (il canale delle riflessioni) dei materiali Vray per Cinema 4D sono stati leggermente modificati, mandando in crisi molti utenti, specialmente quelli alle prime armi, abituati alla gestione della riflessione così come era proposta nelle versioni precedenti alla 1.9.
Questo post vuole offrire una panoramica chiara e semplice sulle impostazioni dello Specular Layer e su come le modifiche ai valori di default influiscono sul realismo finale del render, e allo stesso tempo chiarire tutti i dubbi che possono sorgere sulle differenze di funzionamento della riflessione tra le varie versioni di Vray.
AUGUSTIN JEAN FRESNEL
La differenza principale nell'impostazione dei parametri di default dello Specular Layer in VrayforC4D 1.9 è il Fresnel.
La logica con cui riflettono i materiali nella realtà ormai non è più un segreto: la riflessione di una qualsiasi superficie ci appare più intensa se la superficie è vista di taglio, e meno intensa se la superficie è osservata frontalmente.
Questo fenomeno ottico fu studiato e compreso a fondo da Augustin-Jean Fresnel, fisico francese vissuto a cavallo tra il 1700 e il 1800 da cui prende il nome il parametro.
(Per approfondire: Augustin-Jean Fresnel su Wikipedia)
Nelle versioni di Vray precedenti alla 1.9 il principio di Fresnel non era incluso automaticamente nello Specular Layer, rendendo da un lato più facile la gestione della riflessione, dall'altro impossibile il raggiungimento del realismo perfetto, a cui ci si poteva avvicinare solo intenzionalmente - ad esempio inserendo manualmente lo shader Fresnel (uno shader di Cinema 4D) nel campo Texture dedicato alla mappa di riflessione (quello che si trova nel gruppo di parametri Specular Layer Transparency).
Dalla versione 1.9 invece, la riflessione viene automaticamente regolata dal principio di Fresnel e, per aumentare o diminuire la quantità di riflessione globale, l'unico parametro su cui ci viene proposto di agire è l'IOR.
Se si sceglie di usare l'IOR per determinare il livello di riflessione di un materiale, la strada è molto semplice (e altrettanto limitata), basta seguire una tabella:
Questa tabella è composta dai valori di IOR che lo shader Fresnel di Cinema 4D associa ai vari materiali. E' possibile verificare questi valori attivando l'opzione "Fisico" (all'interno dei parametri di dettaglio dello shader) e cambiando il tipo di Presettaggio dal menu a tendina corrispondente: l'IOR cambia automaticamente a seconda del materiale selezionato.
FRESNEL vs. FRESNEL
Molti dei test condotti nel tempo sulle mie immagini hanno dimostrato tuttavia come un approccio così rigoroso non sempre porta ai risultati più realistici.
A questo link potete vedere il mio test più eclatante, confrontare le due versioni dell'immagine prodotte con due metodi diversi di gestione della riflessione e giudicare voi stessi quale delle due vi sembra più realistica.
L'IOR limita molto il controllo della variazione della riflessione e di conseguenza limita il livello di corrispondenza con la realtà che le riflessioni possono raggiungere, ma - per fortuna - non è la nostra unica possibilità di azione.
Se si desidera avere un maggior controllo sulla variazione di visibilità della riflessione, e quindi una maggiore libertà nell'inseguire il risultato più corrispondente alle foto di riferimento, è possibile anche disattivare “Use Fresnel” e seguire un approccio più intuitivo/visivo.
La gestione della riflessione una volta disattivato Use Fresnel cambia (ritornando nella sua configurazione classica, quella delle versioni precedenti alla 1.9), e per regolare la sua intensità - in modo realistico - sarà necessario inserire nel campo Texture Map dedicato alla mappa di riflessione (quello subito sotto “Amount”) uno shader Fresnel.
Nella sua configurazione di default, il Fresnel riproduce l'effetto contrario a quello che si verifica nella realtà, ragion per cui è necessario attivare l'opzione Invert.
In alternativa sarebbe possibile anche lasciare Invert disattivato e invertire manualmente i colori dei due nodi del Fresnel (per invertire il verso della sfumatura e quindi l'effetto in fase di render).
In questo modo però la gestione della riflessione ci costringerebbe a lavorare con i colori invertiti rispetto a tutti gli altri software di 3D diffusi nel mondo (che interpretano il bianco come riflessione massima e il nero come riflessione minima), il ché ci impedirebbe ad esempio di usufruire delle splendide mappe di riflessione, create e condivise dagli utenti di altri software nei vari blog e forum presenti su internet.
Attivando Invert cambia il modo in cui Vray per Cinema 4D interpreta i colori bianco e nero nella mappa di riflessione, allineando il suo linguaggio al linguaggio di tutti gli altri software di 3D e aprendoci le porte non solo all'uso delle mappe di riflessione in circolazione, ma anche e soprattutto alla comprensione di tecniche e strumenti talvolta condivisi da altri utenti ma illustrati sui vari blog e forum con interfacce diverse dalla nostra.
Impostare la riflessione in questo modo tuttavia non basterà per raggiungere un risultato corretto perché i colori di default del Fresnel sono inizialmente troppo estremi: nero RGB 0,0,0 – bianco RGB 255,255,255.
Se il bianco significa riflessione al 100% e il nero riflessione allo 0%, il materiale di partenza così ottenuto rifletterà come uno specchio se guardato di taglio, e non rifletterà affatto se guardato frontalmente, condizione molto rara in natura (forse inesistente).
Oltretutto lasciare i due colori nei loro valori iniziali fa comparire un'anomalia riscontrabile già nell'anteprima del materiale, dovuta al fatto che le superfici frontali all'occhio dell'osservatore perdono totalmente la riflessione, e il passaggio tra l'1% di riflessione e lo 0% viene visualizzato come uno “scalino” netto e poco credibile.
Per risolvere questa anomalia basta modificare il colore del nodo di destra del Fresnel da nero RGB 0,0,0 a nero RGB 10,10,10, e il nodo di sinistra da bianco RGB 255,255,255 a grigio al 50%.
Questa anomalia potrebbe essere corretta anche diminuendo il parametro Cutoff a 0.001, ma così facendo rimarrebbe comunque il problema della riflessione totalmente annullata nelle superfici frontali ai nostri occhi.
Corretta quest'anomalia, è consigliabile fare un test iniziale per visualizzare la resa di partenza di quella riflessione, e soprattutto valutare come le condizioni al contorno (luci, forma del modello, altri oggetti e materiali nella scena, esposizione della camera) influiscano sul risultato finale.
E' importante infatti ricordare che un qualsiasi materiale potrebbe risultare molto bello e realistico in determinate condizioni di illuminazione e se applicato ad un oggetto di una data forma, ma non risultare altrettanto efficiente in condizioni di luce diverse e su un oggetto ad esempio di forma più schematica.
Valutando il primo test sarà più facile decidere se diminuire o aumentare il livello globale di riflessione per avvicinarci maggiormente al risultato ricercato.
Per aumentare o diminuire la quantità di riflessione in uno dei due punti, basterà rendere il colore del singolo nodo più chiaro (= più riflettente) o più scuro (= meno riflettente).
La finestra di dialogo che compare facendo doppio clic sul nodo del Fresnel che si desidera modificare, ci fornisce un'opzione molto comoda per definire il livello di riflessione in quel punto: il valore V.
V = 100% significa 100% di riflessione
V = 0% significa 0% di riflessione
NB.: Questa affermazione è valida solo se è attivato INVERT.
Nel caso dei metalli (lucidi), la riflessione più realistica si ottiene impostando un Diffuse Layer NERO (RGB 10,10,10), aumentando al massimo (o quasi) la riflessione del nodo di destra (100%) e tenendo intorno al 75% quella del nodo di sinistra.
Per una riflessione realistica è quindi importante seguire il principio fisico di Fresnel ma non è necessario accettare l'IOR automatico come unico spazio di manovra all'interno del quale poter cercare il livello di riflessione perfetto per il materiale che si sta cercando di riprodurre.
Dal mio punto di vista l'IOR è un binario troppo stringente, da cui non è possibile uscire e che talvolta impedisce di raggiungere il risultato cercato.
Usando un Fresnel manuale invece si ha accesso diretto alla curva di variazione della riflessione (normalmente blindata nell'IOR e non modificabile dall'utente), che in Cinema 4D viene tradotta in una sfumatura, una traduzione grafica più accessibile dell’IOR.
Questo metodo alternativo permette di controllare più direttamente la riflessione del materiale, e quindi di avvicinarsi più velocemente al risultato cercato, scegliendo manualmente il livello di riflessione nel suo valore massimo (superficie guardata di taglio) e nel suo valore minimo (superficie guardata frontalmente), assecondando comunque il principio di Fresnel.
Magari controllare la riflessione in questo modo risulterà più lungo e faticoso, ma fatica e tempo sono il prezzo da pagare se si vuole raggiungere risultati fuori dal comune.
"Glossiness", "Specular Color" e Mappe di riflessione complesse saranno i temi trattati nella seconda parte.
Altri tutorial che potrebbero interessarti:
Come funziona la riflessione nei materiali VrayforC4D 1.9 (parte 2)
Riflessioni avanzate con VrayforC4D
Metalli usurati con l’Ambient Occlusion
Vetro satinato e serigrafie
Multipass Manager di Vray
Iscriviti a:
Commenti sul post (Atom)
Grande Angelo! Sempre molto utile ed essenziale! ;)
RispondiEliminaGrandissimo Angelo! Sei un maestro...Grazie mille!
RispondiEliminaSempre chiarissimo!!!!! Grazie Angelo !
RispondiEliminaAngelo ciao e grazie. Grandezze!
RispondiEliminaNon hai minimamente idea di quanto tempo abbia speso su Internet alla ricerca di un articolo come quello che finalmente hai pubblicato tu.
Solo una domanda se ,mi permetti prima di passare alla seconda parte che bramo dal desiderio di vedere: quando si decide di usare "IOR" con "Use Fresnel" attivato si presentano due campi "Reflectange 90 Degree etc." e "Reflectange 0 Degree etc.".
A cosa servirebbero qualora dovessimo optare per soluzioni veloci seppur limitanti?
Grazie e ancora... Grandeeeee :)
Quelli sono i punti di controllo per la riflessione massima e la riflessione minima nel caso in cui si decide di usare l'IOR automatico: 90 degree è la riflessione di taglio, 0 degree quella frontale.
EliminaGrazie Angelo per la risposta ma a questo punto la domanda nasce spontanea come direbbe Lubrano: dunque anche l'IOR venisse applicato in automatico un minimo di "personalizzazione" la permetterebbe?!! Puoi spiegarci come usare questi CAMPI?
EliminaIl colore in "Reflectance 90 Degree" controlla la riflessione nel punto di riflessione massima, ovvero nei punti in cui la superficie è vista di taglio. "Reflectance 0 Degree" controlla invece la riflessione minima, quella nei punti in cui la superficie è vista frontalmente.
EliminaSe non si attiva l'opzione "Invert", il nero significa riflessione al 100%, e bianco significa riflessione allo 0%.
Con L'IOR si definisce il tipo di materiale che si vuole riprodurre: il numero inserito stabilisce, per così dire, la quantità globale di riflessione (Es. Diamante, Vetro, Acqua, Olio, Plastica, etc).
"Reflectance 90 Degree" è inizialmente NERO, quindi la riflessione massima di quel materiale può essere soltanto attenuata e non incrementata (se non modificando l'IOR), perché NERO è il valore massimo, colori più scuri del nero non ne esistono.
"Reflectance 0 Degree" invece inizialmente è impostato su BIANCO, quindi minimizza la riflessione frontale, ma può essere anche portato su valori più scuri per aumentare la riflessione frontalmente qualora se ne sentisse la necessità, per avvicinarsi di più al risultato cercato.
Non può essere personalizzata invece la curva con cui varia l'intensità della riflessione (dal punto massimo al punto minimo), proprio perché lasciando attivo "Use Fresnel", tra le opzioni personalizzabili non c'è la curva, che invece usando il Fresnel di Cinema 4D è modificabile e tradotta in una sfumatura, e l'utente non solo può decidere i due colori (riflessione massima e minima), ma può anche restringere la sfumatura o renderla omogenea e lineare, o addirittura aggiungere uno o più nodi intermedi per controllare più precisamente la variazione di riflessione. Tutte opzioni che invece con il Fresnel automatico non sono accessibili, e che - secondo il mio parere, che ho maturato grazie ai test che io ho condotto nel tempo - sono proprio quelle che permettono di spingere il realismo finale verso i livelli più alti.
Ciao Angelo! Ti volevo chiedere, se l' opzione USE FRESNEL è attiva, una volta scelto un IOR, mi confermi che non serve a NIENTE spuntare o meno INVERT (poichè funziona solamente con una texture)?
EliminaCiao
Se "Use Fresnel" è attivo, di "Invert" ce ne sono due: si riferiscono alle rispettive Texture map che possono essere inserite come mappe di riflessione nei due campi "Reflectance" (90/0 Degree). Questi "Invert" servono per invertire l'interpretazione dei colori da parte di Vray delle immagini presenti nei campi Texture map, ma se i campi sono vuoti non influiscono sul risultato.
Eliminamitico!!!
RispondiEliminaCiao Angelo, complimenti per tutto quello che fai e grazie di condividere il tuo sapere con noi! Volevo chiederti, hai notato qualche sostanziale miglioramento dalla versione 1.8 alla 1.9 di vRay? Consigli il passaggio alla 1.9?
RispondiEliminaGrazie mille ancora
Sì, consiglio il passaggio alla 1.9, qualche miglioramento c'è. Quello che io ho apprezzato di più è nella gestione della riflessione con Glossiness minore di 1, dove ora specularità e Glossiness sono legate da una funzione che permette di raggiungere risultati migliori specialmente nei metalli satinati e nei materiali riflettenti non lucidi come legno, pelle, plastica (sarà illustrato meglio nella seconda parte). E poi sono stati risolti un paio di bug, tra cui la texture del Luminosity Layer, che prima veniva ignorata invece adesso funziona.
Eliminaciao Angelo ho un problema di visualizzazione con vray 1.9 - non riesco in nessun modo a visualizzare il canale material weight nel viewport mentre nel render é presente. Hai qualche suggerimento? grazie mille, il tuo lavoro é sempre impeccabile e professionale.
RispondiEliminaIl Material Weight non può essere visualizzato nella viewport prima di lanciare il render. L'unica cosa che viene visualizzata in viewport è il Diffuse Layer. Infatti un modo per verificare la proiezione delle texture inserite negli altri canali (ad esempio Bump, Specular, Refraction...) prima del render, è inserirle temporaneamente nel Diffuse Layer.
Eliminaquindi l'unico modo per visualizzare la texture del material weight nel viewport é applicarla sul diffuse? Comunque peccato perché col vecchio vray non c'erano questi problemi. Grazie mille come sempre
EliminaCiao Angelo...utile come sempre continua così! ;) volevo sapere tu che versione di cinema usi per questo tutorial?...Io uso vray 1.2 su cinema r14 ma il problema è che l' anteprima del materiale (cioè la sfera) è tutta sballata ad esempio le riflessioni non somigliano affatto a quelle che visualizzi tu anche se poi quando renderizzo non ho problemi...te lo dico perchè possa rendermi conto sul momento più o meno come verrà fuori in fase di render il materiale applicato senza dover fare ogni volta una miriade di prove di render...grazie mille!!!!!!!!!
RispondiEliminaPer questo tutorial uso Cinema 4D 16 con Vray 1.9. La 1.2 inizia ad essere abbastanza datata come versione (è addirittura in uscita la 3.25)! Risolvi alla radice i problemi passando alle versioni più aggiornate.
Elimina