Mappa normale
Una mappa normale è una texture che memorizza informazioni sulla direzione della superficie per simulare geometria dettagliata senza aggiungere poligoni.
Che cos'è una mappa normale?
Una normal map è un tipo di texture usata nella grafica 3D che memorizza dati di orientamento della superficie (normali) nei canali RGB di un'immagine. Il colore di ogni pixel rappresenta un vettore di direzione, permettendo al motore di rendering di simulare dettagli fini della superficie, come graffi, ammaccature o trama del tessuto, senza aumentare il conteggio di poligoni di una mesh. È una delle mappe fondamentali di un materiale PBR.
Come funzionano le mappe normali
In un modello 3D standard, le normali della superficie sono calcolate per vertice o per faccia. Una normal map sovrascrive queste normali a livello di pixel durante il rendering:
- Canale rosso (X) → direzione sinistra/destra
- Canale verde (Y) → direzione su/giù
- Canale blu (Z) → direzione dentro/fuori (verso l'osservatore)
Il renderer usa questo vettore normale per pixel per calcolare l'illuminazione, creando l'illusione di dettaglio geometrico su una superficie piana.
Tipi di mappe normali
Mappe normali in spazio tangente
Il tipo più comune. Le normali sono memorizzate relativamente al frame di coordinate locale (tangente) della superficie. Tollerano geometria che si deforma (personaggi, stoffa); le mappe di dettaglio ripetibili (tiling) si riutilizzano liberamente tra mesh diverse, mentre una mappa cotta da uno sculpt high-poly resta specifica per la mesh per cui è stata cotta.
Mappe normali in spazio oggetto
Le normali sono memorizzate nello spazio di coordinate locale (oggetto) del modello. Producono una qualità leggermente migliore per gli oggetti statici ma sono legate a quella mesh specifica e alla sua geometria, quindi non possono essere riutilizzate su mesh diverse.
Quando Usare le Normal Maps
- Asset di gioco: aggiungono dettaglio ai modelli low-poly senza costo di prestazioni
- Applicazioni in tempo reale: VR, AR, visualizzatori 3D web
- Cottura del dettaglio high-poly: trasferisce i dettagli della scultura su una mesh di gioco low-poly
- Anteprime di stampa 3D: visualizza la texture della superficie prima della stampa
Normal Maps vs Bump Maps
| Caratteristica | Mappa normale | Bump map |
|---|---|---|
| Dati memorizzati | Vettori di direzione XYZ | Valori di altezza in scala di grigi |
| Qualità del dettaglio | Superiore (direzionale) | Inferiore (solo altezza) |
| Effetto sulla silhouette | No | No |
| Prestazioni | Leggermente più costoso | Più economico |
Creazione delle Normal Maps
Le normal map possono essere generate tramite:
- Cottura da una scultura high-poly a una mesh low-poly (Substance, xNormal, Blender), spesso abbinata alla retopologia per costruire il target low-poly
- Conversione da una height/bump map (basata su filtri)
- Generazione con IA: strumenti come il texturing con IA di Sloyd possono generare automaticamente normal map pronte per PBR per i modelli 3D
Per l'insieme più ampio di mappe che un materiale usa, consulta la nostra guida per principianti alle texture 3D.
Normal Maps in Sloyd
Quando generi o texturizzi un modello 3D in Sloyd, le normal map vengono create automaticamente come parte della pipeline dei materiali PBR. Esporta il tuo modello in formato GLB o FBX e la normal map è inclusa, pronta all'uso in Unity, Unreal Engine, Blender o qualsiasi motore di gioco.