Grafica – UV mapping – parte 1

Inizio questo articolo post vacanze con una premessa : spiegherò i vari strumenti che Blender mette a disposizione per l’UV mapping e per i tutorial a seguire man mano che li utilizzerò nelle spiegazioni, perché sono tanti e servirebbero un paio di articoli per spiegarli tutti. Altra nota che tengo a precisare è che continuerò i tutorial con la versione 2.77 di Blender fino a quando non verrà rilasciata una versione stabile aggiornata, anche se ho visto che non hanno effettuato modifiche corpose al Game Engine, ma solo qualche bugfix. Detto questo iniziamo.

UV Mapping

Per dirla in breve la Mappatura UV è il processo che permette di creare la rappresentazione in 2D di un modello 3D, il motivo è semplice perché le Texture sono delle immagini bidimensionali. Le lettere U e V indicano rispettivamente la X e la Y di un piano cartesiano, quindi i poligoni verranno stesi nello spazio UV (XY) partendo dall’angolo in basso a sinistra che rappresenta l’origine del piano cartesiano. 

Creare la mappa della mesh

Il metodo per la creazione della mappatura è l’unwrap (aprire), Blender ci offre diverse opzioni a seconda delle nostre esigenze, si può anche creare una mappatura personalizzata ‘tagliando’ la mesh a nostro piacimento in modo da ottenere una mappatura consona al tipo di texture che applicheremo. Su questo ultimo punto ci sarebbe parecchio da scrivere, perché i modelli di un gioco non sono tutti uguali e ogni modello necessita della creazione di una texture a se, ma questo processo verrà automatico dopo che avrai capito come unwrappare una mesh al meglio.

Opzioni unwrap

Il primo passo per poter aprire (unwrap) una mesh è passare in Edit Mode (tasto Tab), le opzioni di trovano sulla barra del menù della finestra 3D view alla voce Mesh/UV Unwrap oppure premendo il tasto U appare un menù di scelta con le stesse opzioni, il seguente

Le opzioni sono : 

  • Unwrap – taglia la mesh e la distribuisce sul piano, se non sono presenti seams (vedrai più avanti cosa sono) Blender stenderà i poligoni su tutta l’area della texture.
  • Smart UV Project – è un sistema di seams automatico, Blender usa delle opzioni aggiuntive per tagliare la mesh e disporla sul piano, le opzioni sono :
    • Angle Limit – controlla come sono raggruppate le facce, un limite alto creerà dei piccoli gruppi con minore distorsione nella texture.
    • Island Margin – questa opzione controlla lo spazio tra i vari poligoni.
    • Area Weight – proietta il vettore utilizzando un peso per ogni area (di solito si lascia a 0.0).
    • Correct Aspect – mantiene l’aspetto dei poligoni nel area della texture.
    • Stretch to UV Bounds – allunga le il risultato finale sul bordo della texture, queste due opzioni finali di solito si lasciano di default.
  • Lightmap Pack – come dice la parola stessa è usata per lo più per creare mappature per luci e ombre, è possibile anche selezionare più oggetti in Object Mode e poi in Edit Mode assegnare una sola Texture per tutti gli oggetti, spiegherà in specifico questa opzione quando parlerò di come fare il Bake delle Texture.
  • Follow Active Quads – prende i poligoni e li stende usando un loop continuo attaccando le facce una alle altre, ha tre opzioni :
    • Even – distribuisce tutte le UV in modo uguale.
    • Length e Length Average – posiziona le UV adiacenti per ogni loop.

Una nota prima di proseguire, l’opzione Follow Active Quads non rispetta lo spazio della Texture.

Le opzioni di proiezione delle mesh che seguono Cube, Cylinder e Sphere Projection sono sconsigliate, perché di solito non rispecchiano le aspettative, se vuoi fai qualche prova.

Le opzioni Project From View e Project From View (Bounds) creano una UV dal punto di vista, cioè dall’inquadratura che si ha in quel momento, fai una prova, l’unica differenza tra le due è che la seconda utilizza tutto lo spazio della texture. Infine c’è Reset che appiattisce la mappatura, ponendo ogni singola faccia su tutto lo spazio della Texture.

Quale opzione scegliere ? Dipende dal risultato che si vuole ottenere, per esempio se si vuole il cubo di default aperto a croce, che è una mappatura standard, si scegli Follow Active Quads (una qualsiasi opzione), poi si deve scalare l’UV ma il risultato è quello voluto. Prova. Naturalmente per poter visualizzare la mappatura, anche se non hai una texture, devi avere una finestra UV/Image Editor aperta. 

Per tagliare una mesh e poterla aprire come si vuole bisogna selezionare i bordi delle facce, quindi usare l’opzione edge selection dalla barra del menù della 3d View oppure premere CTRL+Tab e scegliere l’opzione dal menù che appare. Una volta selezionati i bordi desiderati si preme CTRL+E (per attivare il menù delle edge) e si scegli la voce Mark Seam, fatto questo i bordi vengono contrassegnati con il colore rosso (se usi il layout di default), a questo punto si può utilizzare la prima opzione del menù di unwrap, appunto Unwrap. 

In questo contesto di spiegazione è difficile proporre un’esempio perché ogni oggetto che hai creato per il tuo gioco necessita di una mappatura a se, ci sono due tipologie di tagli di una mesh che vengono usati di solito :

  • quella a cubo che comprende parecchie tipologie di oggetti sopratutto gli edifici
  • quella organica che permette di tagliare oggetti che non hanno per niente una forma cubica, come alberi e i personaggi del gioco.

Per evitare di diluire questo articolo con l’esempio di come tagliare un cubo posto solo l’immagine in wire con le Seams, eccola

Alcuni consigli

Visto che questo argomento come detto è ampio ti consiglio di fare tante prove, puoi scaricare mesh da internet e provare e tagliarle al meglio. Ogni mesh ha la sua specifica, cerca di tagliare la mesh in modo da ottenere le parti più omogenee possibili, per esempio se tagli un palazzo è logico che le varie facciate abbiano una loro mappatura e che i dettagli abbiano altre mappe, non mescolare i dettagli con la parte grossa della mesh. Se per esempio devi tagliare un personaggio cerca di sezionarlo in parti, le braccia, le gambe il busto ecc ecc, spesso si usa creare la mappatura e la texture di un personaggio quando ancora il modificatore Mirror non è stato applicato, in questo modo si risparmia tempo e la mappatura è speculare.

Per questa prima parte sulle UV map è tutto, nel prossimo articolo parlerò di come si manipolano le varie facce della mappatura e come esportare l’UV per poi creare la texture.