Corona Renderer 7: cosa è il CoronaPhysicalMtl

Corona Physical Material: CHE COSA È?

(Traduzione autorizzata dell’articolo ufficiale presente sull’Helpdesk di Chaos Corona)

Autore: Chaos Corona team

Traduttore: Francesco Legrenzi

Il Corona Physical Material

Che cos'è?

Introdotto in Corona Renderer 7 per 3ds Max e Cinema 4D, questo shader è il nuovo materiale fisico di Corona (Fig. 01). E’ stato progettato da zero ed è destinato a sostituire il precedente CoronaMtl il quale, nella versione 7, è stato rinominato CoronaLegacyMtl. Alcuni dei vantaggi del CoronaPhysicalMtl sono la sua facilità d’uso e la sua capacità di ottenere risultati realistici, garantendo l’impossibilità di creare materiali “non corretti” (anche accidentalmente) che infrangono la legge della conservazione dell’energia: il risultato sarà sempre realistico.

CoronaPhysicalMtl cosa è: esempi
Fig. 01

Il CoronaPhysicalMtl include dei preset facilmente selezionabili da un menu a tendina. Questi includono materiali come alluminio, ottone, cromo, rame, diamante, vetro, oro, ferro, specchio, plastica, plexiglass, raso e persino velluti.

Il motivo per il quale è stato aggiunto

Il CoronaPhysicalMtl è stato aggiunto per sostituire il precedente CoronaMtl. Alcuni dei vantaggi del CoronaPhysicalMtl sono i seguenti.

  • Maggior facilità nell’ottenere risultati realistici.
  • Nuova e più semplice struttura a layer (Clearcoat e Sheen). Ora non è più necessario impostare complessi shader a layer multipli.
  • Compatibilità con altri software che seguono le linee guida basate sulla fisica (PBR).

Migliorie rispetto al CoronaMtl

Ci sono molti vantaggi rispetto al precedente CoronaMtl. Per cominciare, il CoronaPhysicalMtl offre un modo più naturale per impostare i materiali, rendendo il flusso di lavoro intuitivo e semplice. I suoi calcoli di diffusione sono passati dal modello Lambertian a quello Oren-Nayar: anche il più semplice dei materiali avrà ora un aspetto migliore e fisicamente più “corretto”.

Inoltre, non sarà più possibile creare shader dalle proprietà fisicamente non plausibili. Gli attuali parametri del CoronaPhysicalMtl sono progettati in modo da prevenirne la generazione.

Quando usare IL CoronaPhysicalMtl

Suggeriamo di usare il CoronaPhysicalMtl come materiale di default, salvo che non sia assolutamente necessario usare il CoronaLegacyMtl, come nel caso di re-rendering di vecchie scene usando Corona Renderer 7.

Metallicità: Metalli e Non-Metalli (Dielettrici) e come sono gestiti dal colore di base

Partendo dai parametri di base, il CoronaPhysicalMtl è impostato di default come Non-metal. E’ essenzialmente un materiale dielettrico (plastiche, legni ecc…) dove il suo colore di base gestisce il colore Diffuse (Fig. 02). In questa modalità, possono essere realizzati svariati tipi di materiali in modo fisicamente plausibile. I materiali non metallici possono anche essere anche trasparenti, come vetri, cristalli, polimeri o altri materiali organici.

CoronaPhysicalMtl cosa è: violino
Fig. 02 - Il corpo in legno e le perle in vetro sono considerati come materiali dielettrici, detti “Non-metal”, mentre le corde dello strumento e le chiavi metalliche nere sono impostate come “Metal”.

Nel caso di un livello di base in modalità metallica, lo shader sarà opaco e definito solo dal colore della riflessione, settabile dal parametro Base Color. Tuttavia, il colore della riflessione per i metalli (solo per i metalli!) per le aree parallele alla vista può essere modificato attraverso l’uso di Edge color (Fig. 03).

CoronaPhysicalMtl cosa è: Metal a Non-metal
Fig. 03 - Il parametro "IOR" è abilitato solo quando si usano materiali dielettrici (Non-metal).

L’esempio in Fig. 04 mostra le differenze che il parametro Metalness può generare su un materiale, semplicemente cambiandolo da Metal a Non-metal (dielettrico). A sinistra è rappresentato un corpo metallico con un rivestimento lucido; a destra un materiale plastico lucido.

CoronaPhysicalMtl cosa è: metallo plasticaCoronaPhysicalMtl cosa è: plastica

Fig. 04

Si può facilmente simulare l’effetto dei metalli regolando i parametri Base e Edge color, i quali sono utili per ottenere rapidamente il risultato che vogliamo ottenere. Suggeriamo l’uso di questi parametri per la maggior parte dei casi. Tuttavia, se si preferisce un risultato più realistico, si potrebbe pensare all’utilizzo dei parametri presenti nel gruppo Complex IOR for metals. Li incontreremo più avanti nell’articolo. In Fig. 05, la colorazione dei bordi nel render di sinistra è stata ottenuta attraverso l’uso di Complex IOR, mentre a destra è stato usato un Edge color verde (Fig. 06).

CoronaPhysicalMtl cosa è: complex iorCoronaPhysicalMtl cosa è: Edge color

Fig. 05

CoronaPhysicalMtl cosa è: Edge color UI
Fig. 06

Nota: il canale Metalness del CoronaPhysicalMtl può essere mappato usando una texture, la quale definirà il tipo di materiale del livello base. In tal caso, valori 0 (colore nero nella texture) corrispondono alle aree Non-metal, mentre valori 1 (colore bianco nella texture) corrispondono alle aree Metal. Valori intermedi creeranno un misto di aree Metal e Non-metal.

Chaos Corona: LA GUIDA COMPLETA

IOR per le riflessioni e rifrazioni (solo per i materiali Non-metal)

Il valore IOR è disponibile solo per i materiali Non-metal. Esso controlla come un raggio di luce viene piegato dal materiale quando penetra un oggetto (medium) e quanto esso viene riflesso. Il materiale, con un valore di IOR uguale a 1.0, non avrà nessuna rifrazione o riflessione. Per esempio, l’indice di rifrazione dell’aria è normalmente intorno a 1.0003, mentre un valore di 1.52 IOR è adatto per materiali vetrosi (Fig. 07).

CoronaPhysicalMtl cosa è: IOR 1.52
Fig. 07 - Il materiale per un bicchiere in vetro ha un "IOR" di 1.52.

Contrariamente al CoronaMtl (ora rinominato CoronaLegacyMtl), i valori di IOR del CoronaPhysicalMtl sono ristretti in un intervallo tra 1 e 3, mentre riflessione e rifrazione sono collegati in modo fisicamente corretto (Fig. 08).

CoronaPhysicalMtl cosa è: interfaccia utente
Fig. 08 - Lo “IOR” può essere controllato solo attraverso il “Base layer” e influenza sia la riflessione sia la rifrazione.

Il primo esempio a sinistra Fig. 09a mostra come lo IOR influenza sia la rifrazione sia la riflessione. Per motivi di realismo, il vetro dell’immagine di sinistra ha un valore di assorbimento leggermente scuro. Da sinistra a destra, in ordine, abbiamo un vetro generico con IOR=1.52, un vetro di selce puro IOR=1.62 e un vetro al piombo (cristallo) con IOR=1.8 (Fig. 09a – Fig. 09b).

CoronaPhysicalMtl cosa è: vari IOR
Fig. 09a
CoronaPhysicalMtl cosa è: bicchiere IOR aCoronaPhysicalMtl cosa è: bicchiere IOR b

Fig. 09b

Nota: con il nuovo CoronaPhysicalMtl è ora possibile ottenere rifrazioni anisotropiche in modo tale da essere coerenti con le riflessioni anisotropiche. Questo fenomeno era prima impossibile da ottenere.

Rugosità (Roughness)

Il parametro Roughness definisce quanto una superficie apparirà più o meno levigata (Fig. 10). Un valore di 0 (colore nero se si usa una texture) genererà una superficie perfettamente liscia con riflessi del Base layer netti. Al contrario, un valore di 1 (colore bianco se si usa una texture) restituirà una superficie ruvida generando riflessioni sfocate. Una superficie liscia influenzerà anche i riflessi diffusi, mentre una superficie ruvida darà alle geometrie un aspetto “piatto”.

CoronaPhysicalMtl cosa è: Rougnhess aCoronaPhysicalMtl cosa è: Rougnhess b

Fig. 10

Gli esempi in Fig. 11, Fig. 12, Fig. 13 e Fig. 14 mostrano come i valori di Roughness possono influenzare il risultato del rendering di un oggetto, agendo sia sui materiali trasparenti sia su quelli opachi. In Fig. 11 si osserva un tubo metallico con Roughness di 0.1 (sinistra) e Roughness di 0.5 (destra).

CoronaPhysicalMtl cosa è: Rougnhess bassoCoronaPhysicalMtl cosa è: Rougnhess alto

Fig. 11

In Fig. 12 vediamo due lampadine: una con finitura lucida e una in vetro trasparente. Entrambe hanno gli stessi valori IOR ma diverso Roughness. La lampada satinata ha un Roughness di 0.9, mentre quella trasparente di 0.02.

CoronaPhysicalMtl cosa è: RoughnessCoronaPhysicalMtl cosa è: Roughness

Fig. 12

Il parametro Roughness influenza sia la riflessione sia la rifrazione in modo simultaneo. Materiali ruvidi e rifrangenti come vetri acidati e sabbiati non restituiranno alcun riflesso lucido se il loro valore di Roughness è alto. Effetto che era già possibile anche con il CoronaMtl. Però ora si potrà anche rivestire tali vetri acidati con un film lucido utilizzando un nuovo strato chiamato Clearcoat (Fig. 13).

CoronaPhysicalMtl cosa è: RoughnessCoronaPhysicalMtl cosa è: Roughness

Fig. 13

Nota: la modalità Roughness può essere modificata in Glossiness (come nel precedente CoronaMtl) usando il menu a tendina presente nel rollout Advanced options nel CoronaPhysicalMtl. Se vogliamo cambiare quest’opzione globalmente, sarà necessario agire sul menu presente nella scheda System settings (F10 -> System TAB -> System Settings -> Material Editor).

I valori di Glossiness e Roughness sono intercambiabili: in effetti, uno è l’inverso dell’altro. Bisogna invece fare attenzione nel caso si voglia invertire delle texture da Glossiness in Roughness all’interno di 3ds Max. Si sconsiglia l’uso di funzioni di inversione lineari come quelle presenti nella mappa CoronaColorCorrect. Ricorrere invece all’uso dell’Output della Bitmap o di un nodo di output con funzione d’inversione.

In Fig. 15 si possono osservare dei render generati con una mappa di tipo Glossiness (sinistra) e Roughness invertita (destra). Il risultato è identico (Fig. 14).

CoronaPhysicalMtl cosa è: Roughness
Fig. 14
CoronaPhysicalMtl cosa è: RoughnessCoronaPhysicalMtl cosa è: Glossiness

Fig. 15

Chaos Corona: LA GUIDA COMPLETA

Verniciatura (Clearcoat)

Il layer Clearcoat può essere immaginato come uno strato trasparente di vernice impiegato per rivestire una superficie. Nel caso di pannelli metallici (carrozzerie), si è soliti iniziare applicando una mano di primer, aggiungendo il colore vero e proprio per terminare con uno strato vernice trasparente protettiva. Nel caso del CoronaPhysicalMtl, il colore di base sarà quasi sempre una superficie opaca che sarà ricoperta da un layer trasparente. Il Clearcoat può essere utile per:

  • coprire la superficie con una finitura protettiva;
  • modificare l’indice di riflessione o il tipo di lucentezza di una superficie;
  • variare la colorazione dal Base Color attraverso la proprietà di assorbimento del Clearcoat;
  • introdurre dettagli extra su una superficie attraverso il Bump del Clearcoat.
CoronaPhysicalMtl cosa è: Clearcoap pennarelli
Fig. 16 - Materiale plastico dalla superficie opaca (i pennarelli) con rivestimento lucido generato attraverso l'uso del “Clearcoat”.

Il Clearcoat può essere controllato attraverso il parametro Amount (0, 1), il quale definisce la intensità dell’effetto verniciatura (cioè quanto sarà visibile). Ci sono poi il Roughness (0, 1) simile al Roughness del colore di base, l’indice di rifrazione (1-3), una sua mappa Bump e il colore di assorbimento (Absorption Color).

Come si vede negli esempi in Fig. 17, Fig. 20, Fig. 21, Fig. 22 e Fig. 23, con il Clearcoat si possono generare una moltitudine di effetti aggiungendo un livello di realismo piuttosto elevato. Nel caso del manichino, lo shader è costituito dal livello base il quale possiede il classico Bump del legno grezzo (Fig. 18, immagine di sinistra). In seguito è stata applicata una verniciatura con Bump differenti (Fig. 18, immagine di destra).

CoronaPhysicalMtl cosa è: legnoCoronaPhysicalMtl cosa è: legno

Fig. 17

CoronaPhysicalMtl cosa è: Bump
Fig. 18

L’impiego del Clearcoat può variare notevolmente l’aspetto Diffuse del materiale. Nel caso del violino (Fig. 20), il legno grezzo è piuttosto chiaro e ha una superficie ruvida (Roughness Amount=0.7). L’IOR è di 1.35, con una mappa Bump che segue le venature del legno.
Come abbiamo già anticipato, attraverso l’uso del Clearcoat possiamo simulare uno strato di vernice. In questo particolare esempio (Fig. 19) abbiamo impostato l’IOR del Clearcoat a 1.4, con livelli di Roughness significativamente più bassi: il materiale ora appare lucido (Fig. 20 – Fig. 21).

CoronaPhysicalMtl cosa è: interfaccia del Clearcoat
Fig. 19 - Impostazioni del "Clearcoat".

Il colore nel canale Absorption del Clearcoat può essere pensato come una sorta di “spessore” della vernice. In realtà, tale strato trasparente protettivo consiste in numerose mani le quali tendono a scurire la colorazione chiara del legno di base (Fig. 20 – Fig. 21).

CoronaPhysicalMtl cosa è: no ClearcoatCoronaPhysicalMtl cosa è: si Clearcoat

Fig. 20

CoronaPhysicalMtl cosa è: no ClearcoatCoronaPhysicalMtl cosa è: Clearcoat

Fig. 21

La carrozzeria delle automobili è un altro tipico esempio di come il Clearcoat possa aiutare a ottenere risultati molto interessanti. Infatti, prima dell’introduzione del CoronaPhysicalMtl, si era soliti replicare tale shader utilizzando il CoronaLayerMtl. Simile al materiale del violino, per lo strato di base della carrozzeria useremo una superficie colorata ruvida, ricoperta poi da uno strato trasparente lucido. L’aggiunta del colore di assorbimento del Clearcoat aiuterà a creare quei piacevoli effetti colorati tipiche delle autovetture (Fig. 22 – Fig. 23).

CoronaPhysicalMtl cosa è: car paint baseCoronaPhysicalMtl cosa è: car paint Clearcoat

Fig. 22

CoronaPhysicalMtl cosa è: car paint esempi
Fig. 23 - Diversi colori di assorbimento del "Clearcoat".

Nota: nel caso si volesse simulare un materiale esposto alle intemperie, il suggerimento è di inserire una mappa nel canale Amount del Clearcoat. Questa aiuterà a generare una verniciatura dall’aspetto disomogeneo, con graffi e scrostature.

Chaos Corona: LA GUIDA COMPLETA

Lucentezza (Sheen)

Il layer lucentezza (Sheen) può essere usato per simulare l’effetto della diffusione sub-superficiale nelle microfibre per materiali come tessuti e velluti (Fig. 24). La sua intensità può essere controllata attraverso il parametro Amount, mentre con la ruvidità (Roughness) si possono controllare le alte luci speculari. Il colore Sheen Color può essere modificato per ottenere un risultato visivo personalizzato, anche se, nel mondo reale, Sheen è sempre bianco. Infine, facciamo notare come tutti i parametri del layer Sheen possono essere mappati offrendo così un elevato controllo.

CoronaPhysicalMtl cosa è: Sheen esempio
Fig. 24 - Esempio di lucentezza applicata a un tessuto.

Nota: se la modalità Roughness nel rollout Advanced options è impostata su Glossiness, il valore del parametro viene trattato come lucentezza (Glossiness).

IOR complessi per i metalli (Complex IOR for metals)

L’effetto Fresnel per i materiali dielettrici (Non-metal) può essere tranquillamente gestito dal solo parametro IOR. Per i metalli, invece, la curva di riflessione dipende da altri valori, i quali tendono a essere piuttosto complessi. Al fine di ottenere un preciso effetto Fresnel per un dato metallo (oro, rame, ecc.), è possibile utilizzare i parametri presenti nel gruppo Complex IOR for metals invece dei parametri Base Color e Edge color (Fig. 25). Per una spiegazione dettagliata ed esempi numerici si prega di consultare la guida.

CoronaPhysicalMtl cosa è: Complex IOR for metals
Fig. 25 - Metalli creati attraverso l'uso di "CoronaPhysical + Complex IOR".

Nota: I colori Base Color e Edge color offrono un controllo più flessibile del materiale e sono quelli che consigliamo. Vi suggeriamo di evitare di impostare i parametri del gruppo Complex IOR for metals senza conoscerne i valori esatti.

Diffusione volumetrica e sotto-superficiale (SSS)

Lo scattering volumetrico e quello sub-superficiale (Volumetric e Subsurface scattering) si trovano nel rollout Media options (nel CoronaMtl era chiamato Volumetrics and SSS) all’interno del CoronaPhysicalMtl. Queste due modalità (Volumetric scattering e SSS) ora non sono più divise (nel CoronaMtl c’era un menu a tendina). I parametri dello scattering volumetrico si abiliteranno automaticamente quando attiveremo la rifrazione (di default non sono attivi), mentre il SSS può essere sempre utilizzato, indipendentemente dalle proprietà del materiale. Facciamo notare che si potranno utilizzare i parametri di scattering volumetrico e SSS solo se il CoronaPhysicalMtl è impostato come Non-metal (plastiche, vetri ecc…) (Fig. 26).

CoronaPhysicalMtl cosa è: SSS
Fig. 26 - Render con "SSS".

Esempio: un materiale come il marmo può essere replicato utilizzando sia attraverso l’uso dello scattering volumetrico sia del SSS. In Fig. 27 troverete un esempio di una statua renderizzata con e senza SSS.

CoronaPhysicalMtl cosa è: SSSCoronaPhysicalMtl cosa è: volumetric

Fig. 27

Guscio sottile (Thin shell)

Il precedente parametro del CoronaMtl chiamato Thin (no refraction) è ancora presente nel CoronaPhysicalMtl, ma è stato rinominato in Thin shell (no inside). L’attivazione del parametro Thin shell simula la presenza di un guscio sottile senza volume, quindi vuoto. Tale materiale non genererà rifrazioni, effetti volumetrici o SSS. La rifrazione sarà quindi sostituita dall’opacità, mentre il SSS dal Diffuse e dal Translucency. Questo parametro è utile per simulare i vetri delle finestre o materiali sottili come foglie o paralumi che sono stati modellati con un singolo piano geometrico senza spessore.

CoronaPhysicalMtl cosa è: Thin shell (no inside)
Fig. 28 - Una foglia è un chiaro esempio di utilizzo del parametro "Thin shell (no inside)".

I preset

Il CoronaPhysicalMtl viene fornito con 34 preset (Fig. 29). Questi settaggi pre-impostati non includono mappe, ma sono “solamente” una sapiente combinazione dei suoi parametri atti a ottenere un solido punto di partenza per la generazione di shader più complessi.

CoronaPhysicalMtl cosa è: Preset
Fig. 29 - Anteprima di alcuni preset e il relativo menu a tendina.

La maggior parte dei preset metallici sono divisi in tre categorie.

  • Un preset spazzolato (brushed) con un elevato valore di rugosità associato a un certo valore di anisotropia che ne simula il classico effetto “striato” (Fig. 30).
  • Un preset laminato (foil), utile per simulare superfici metalliche piatte e  lisce come un foglio sottile, una foglia, una lamina di rame o di alluminio. Generalmente il parametro Roughness è impostato con valori piuttosto bassi: la superficie apparirà lucida e con minor quantità di anisotropia (Fig. 30).
  • Un preset ruvido (rough) che si trova a metà strada tra il preset spazzolato e laminato, con valori medi di Roughness e bassa anisotropia (Fig. 30).
CoronaPhysicalMtl cosa è: Preset esempi
Fig. 30 - Alcuni dei preset “CoronaPhysicalMtl” disponibili.

Per i preset dielettrici (con l’eccezione del preset Iron) non c’è una particolare organicazione. Di seguito alcuni esempi.

  • Il preset Diamond possiede un IOR elevato, con attivazione della dispersione.
  • Il preset Glass Architectural differisce dal normale preset Glass per l’aggiunta del colore di assorbimento (Absorption color).
  • Il preset Velvet simula un materiale tipo seta utilizzando l’anisotropia e sfruttando i parametri nel nuovo gruppo Sheen Layer.
  • Con il preset Plastic PVC opaque abbiamo un generico esempio di plastica rivestita con uno strato di materiale trasparente dallo spessore ridotto (Clearcoat Amount=0.5).

Informazioni varie

Mappatura da speculare a IOR (Specular to IOR mapping)

La modalità IOR può ora essere impostata su Specular. In questo caso, il valore di IOR sarà trattato come un valore speculare il quale sarà poi convertito internamente in IOR usando una formula matematica ben precisa. Questo parametro si trova nel rollout Advanced options del CoronaPhysicalMtl. Può anche essere cambiato globalmente con il menu a tendina presente nella scheda Corona System Settings (F10 -> System -> Corona System Settings -> Material Editor: Default IOR mode).

In Fig. 31, il materiale sulla sinistra utilizza una mappa speculare. Sul lato destro, lo stesso materiale ha l’IOR non mappato con valore di default di 1.5. La modalità IOR mode è impostata di default in IOR.

CoronaPhysicalMtl cosa è: IOR mappingCoronaPhysicalMtl cosa è: Specular

Fig. 31

Fig. 32

Il convertitore

Con il rilascio della versione 7.0 di Corona, il suo Converter è stato aggiornato alla versione 2.0. Ora è possibile convertire intere scene realizzate con il precedente CoronaMtl conservando l’aspetto originale.

SCARICA LA DEMO

50 pagine su CoronaLightMtl, CoronaSelectMtl, CoronaVolumeMtl e CoronaRoundEdges

Lascia un commento