Community Forum ArtWork Work in Progress TMNT the Last Ronin – progetto fan Rispondi a: TMNT the Last Ronin – progetto fan

#886341
Mauro Fanti
Partecipante
@maurof879

Lo shading NPR (Non-Photo-Realistic), un tema che mi è particolarmente caro, spesso definito genericamente (e superficialmente) “toon”, ricco di sfaccettature, declinazioni e complessità. Si tratta di una infinità di tecniche di shading che vanno dal classico “cel-shading” per arrivare a declinazioni più artistiche e pittoriche.
Nel caso dell’NPR si è soliti lavorare con Eevee (parlando dei motori di render canonici all’interno di Blender) in quanto ci consente di “giocare” con la luce, arrivando quasi a “imbrogliarla”.

Tuttavia così tanta libertà si porta dietro una importante complessità legata alla gestione delle luci colorate, cosa che mi ha spinto a studiare un nuovo shader. Ma prima vorrei aprire una piccola parentesi per capire meglio il problema.

Chiunque almeno una volta ha avuto a che fare con il cel-shading riconoscerà questa configurazione, che può avere tante varianti e declinazioni ma che in sostanza racchiude il concetto. In sostanza grazie ad un nodo ColorRamp o ad un Map Range posso suddividere le ombreggiature in zone, che possono essere nette o sfumate e successivamente colorate. Tuttavia cosa accade se io utilizzo più luci con diversi colori per dare un certo mood alla mia scena? Esistono svariati metodi e tecniche per trovare dei compromessi ma in questo caso ho voluto provare un metodo particolare, ossia tradire Eevee per passare a Cycles.

Non è una cosa consueta leggere le parole NPR e Cycles nella stessa frase, principalmente per l’assenza di due pilastri portanti dello shading di Eevee, ossia il nodo “shader to RGB” (che ci permette di convertire le informazioni di uno shader in immagine e quindi poter lavorare sulle sue informazioni) ed il concetto “backface culling” che si usa, ad esempio, per creare delle tecniche di outline.

Nonostante queste mancanze però Cycles mi permette di avere una risposta delle luci realistica e molto accurata e mette a disposizione un nodo molto interessante ed indirizzato all’NPR, che si chiama “Toon BSDF”, anche se piuttosto limitato.

 

per spiegare il concetto ho messo a confronto due versioni di Suzanne, una con uno shader Diffuse BSDF ed una con il Toon BSDF. La versione NPR ci mostra esattamente ciò che ci aspettiamo, ossia un forte cel-shading con l’aggiunta di illuminazioni secondarie date dalla Global Illumination. All’interno dello shader possiamo scegliere una versione opaca o una versione glossy e possiamo giocare con due slider, “Size” che controlla la dimensione del cel-shading e “Smooth” che controlla la sfumatura tra i due livelli.

 

le possibilità di modifica e controllo sono decisamente poche ma di default lo shader risponde benissimo alle luci colorate, senza bisogno di montagne russe all’interno dello shader, il che è una grande notizia e un eccezionale punto di partenza per qualcosa di originale. Si tratta ora di creare le variazioni allo shader in modo da conformarlo alle mie esigenze “fumettistiche”. Il primo limite che vorrei superare è dato dal numero di suddivisioni del cel-shading, sono solito usarne 2 più almeno un terzo che aggiunge le highlights, quindi l’unica suddivisione offerta dallo shader non va bene.

 

Ho risolto molto semplicemente aggiungendo un secondo shader Toon BSDF con una Size inferiore e sommandola con il nodo “Add Shader” (per semplicità di lettura ho dato un colore azzurro come colore base). Il nodo “Add Shader”, presente sia su Eevee che su Cycles, somma il risultato dei due shader esattamente come si comporta il nodo mix color con metodo di fusione Add nel caso di due textures o colori. Ne consegue che il risultato venga generalmente più chiaro, ma si può risolvere scurendo il primo Toon.

 

Giocando con i colori, i valori del Size ed aggiungendo un terzo Toon BSDF ho aggiunto il livello delle highlights

 

Aggiungendo un ulteriore Toon, stavolta più scuro, mixato al risultato dei precedenti con l’aiuto di un Layer Weight – Facing ho ottenuto una ombreggiatura dei bordi. L’aggiunta del denoise aggiunge poi un effetto quasi “spennellato” alla scena, senza particolari accorgimenti.

possiamo infine riscontrare come le luci colorate si comportino piuttosto bene dando un look particolare e originale, sempre nel campo del Non-Fotorealistico. Ho quindi creato lo shader base per la mia tartaruga e, con l’aggiunta di una lineart grease pencil, ho creato il render che ho messo in cima al post.

Raggiunto questo traguardo ho preso la malsana idea di dedicarmi all’animazione della tartaruga, ben conscio che l’utilizzo di Cycles potesse essere una scelta killer. Ma, come si dice “ormai siamo in ballo e balliamo”.