Skip to main content
Texturizetexture gratuite
GeneratoriStrumentiCasi d'UsoMaterialiEsploraCollezioniColoriBlog
← Torna al Blog
20 marzo 2026·7 min di lettura

Mappe Normali Spiegate: Come le Superfici Piatte Simulano la Profondità

Normal map3DTecnico

Le mappe normali sono una delle tecniche più potenti nel rendering in tempo reale. Permettono a superfici poligonali piatte di mostrare dettagli complessi della superficie — protuberanze, scanalature, graffi, pori — senza aggiungere un singolo triangolo extra alla mesh. Una mappa normale è un’immagine RGB in cui ogni pixel codifica la direzione che una superficie affronta in quel punto, e il renderer usa queste informazioni per calcolare l’illuminazione come se la geometria fosse molto più dettagliata di quanto non sia in realtà.

Come le Mappe Normali Codificano la Direzione

Ogni pixel in una mappa normale memorizza un vettore di direzione 3D compresso in tre canali di colore. Il canale Rosso codifica l’asse X (inclinazione sinistra-destra), il canale Verde codifica l’asse Y (inclinazione su-giù) e il canale Blu codifica l’asse Z (quanto la superficie punta direttamente verso l’esterno). Una superficie piatta che si affaccia direttamente verso la camera ha una normale di (0, 0, 1), che nello spazio colore RGB si mappa su (128, 128, 255) — quel caratteristico colore blu-viola che vedi in ogni mappa normale.

La formula di mappatura è semplice: ogni canale memorizza valori da 0 a 255, rappresentando l’intervallo −1.0 a +1.0. Un valore di 128 significa 0 (nessuna inclinazione), 0 significa completamente inclinato in direzione negativa e 255 significa completamente inclinato positivo. Il renderer scompatta questi valori in vettori floating-point e li usa nei calcoli di illuminazione al posto della normale geometrica.

Tangent Space vs. Object Space

Mappe Normali in Tangent Space

Le mappe normali in tangent space sono di gran lunga il tipo più comune. Definiscono la perturbazione della superficie relativa all’orientamento del poligono stesso, usando un sistema di coordinate costruito dalla tangente della superficie, bitangente e normale geometrica. Poiché le direzioni sono relative, la stessa mappa normale in tangent space funziona correttamente su qualsiasi orientamento della superficie — può essere applicata a un pavimento, una parete o un oggetto curvo e l’illuminazione risponderà correttamente.

Le mappe in tangent space appaiono prevalentemente blu perché la maggior parte dei pixel punta approssimativamente verso l’esterno (asse Z dominante). Le piccole variazioni in rosso e verde codificano i dettagli fini della superficie.

Mappe Normali in Object Space

Le mappe normali in object space memorizzano direzioni assolute relative al sistema di coordinate locale dell’oggetto. Appaiono colorate di arcobaleno perché le normali puntano in tutte le direzioni. Le mappe in object space sono più semplici da renderizzare (nessun calcolo del frame tangente) e evitano artefatti di tangent space alle cuciture UV, ma sono bloccate a una mesh specifica. Deformare o riutilizzare la mesh rompe l’illuminazione. Vengono occasionalmente usate per architettura statica o terreno.

Mappe Normali vs. Mappe di Displacement

Le mappe normali influenzano solo l’illuminazione — non spostano la geometria. Ciò significa che i bordi della silhouette rimangono perfettamente lisci e mancano gli effetti di parallasse. Un muro di mattoni con una mappa normale sembra irregolare frontalmente ma ha un profilo piatto ad angoli rasenti. Le mappe di displacement spostano effettivamente i vertici, creando profondità geometrica reale con silhouette corrette e auto-occlusione. Il compromesso è il costo: il displacement richiede una tessellazione densa ed è costoso nel rendering in tempo reale.

Per la maggior parte delle applicazioni in tempo reale, le mappe normali forniscono il miglior rapporto qualità-performance. Usa il displacement solo per superfici hero ravvicinate dove la precisione della silhouette è importante, o in renderer offline come Cycles o Arnold dove il costo della tessellazione è accettabile.

Generare Mappe Normali da Mappe di Altezza

Una mappa di altezza (scala di grigi, bianco = alto, nero = basso) può essere convertita in una mappa normale calcolando il gradiente della superficie ad ogni pixel. L’algoritmo campiona i pixel vicini per determinare la pendenza in X e Y, quindi costruisce un vettore normale da queste pendenze. Lo strumento Normal Map su Texturize fa esattamente questo — carica qualsiasi mappa di altezza in scala di grigi o texture, e genera una mappa normale in tangent space con intensità regolabile.

Il parametro strength controlla quanto siano pronunciate le protuberanze percepite. I valori di strength inferiori producono variazioni superficiali sottili (buoni per materiali lisci come il marmo lucidato), mentre i valori più alti creano scanalature profonde e protuberanze pronunciate (ideali per pietra grezza o corteccia).

Errori Comuni

  • Spazio colore errato — Le mappe normali devono essere importate come dati lineari (Non-Color), mai sRGB. Lo spazio colore errato produce un’illuminazione sbiadita o esagerata.
  • Canale verde invertito — OpenGL e DirectX usano convenzioni per l’asse Y opposte. Se la tua mappa normale sembra invertita (le protuberanze appaiono come rientranze), inverti il canale verde. Blender e la maggior parte degli strumenti DCC usano la convenzione OpenGL; Unreal Engine usa DirectX.
  • Baking a risoluzione errata — Le mappe normali bakate da mesh high-poly a low-poly necessitano di una risoluzione sufficiente per catturare i dettagli fini. I bake sotto-risoluti producono normali dall’aspetto squadrato.
  • Eccessivo utilizzo della strength — Aumentare troppo la strength della mappa normale rende le superfici artificialmente ruvide e crea faccettatura visibile sotto l’illuminazione speculare.

Consigli Pratici

Combina una texture di base dal Generatore di Mattoni o dal Generatore di Selciato con una mappa normale derivata per una configurazione completa del materiale. In Blender, collega la mappa normale attraverso un nodo Normal Map impostato su Tangent Space. In Unreal Engine, collegala all’input Normal del materiale dopo il campionamento con un’espressione Normal Map. Testa le tue mappe normali sotto angoli di illuminazione multipli — ruotare una luce direzionale attorno alla superficie rivela eventuali errori di baking o problemi con i canali.

Generatori correlati

Generatore di texture di pietraGeneratore di MattoniGeneratore di texture acciottolatoGeneratore di texture di corteccia
Texturize

Texture e pattern seamless gratuiti per designer, artisti e sviluppatori. Tutte le texture sono royalty-free per uso personale e commerciale.

Navigazione

  • Esplora
  • Generatori
  • Collezioni
  • Colori
  • Blog
  • Chi Siamo
  • Licenza
  • Informativa sulla Privacy
  • Termini di Servizio

Categorie

  • Marmo
  • Legno
  • Astratto
  • Tessuto
  • Geometrico
  • Rumore e Grana

Risorse

  • Casi d'Uso
  • Materiali
  • Texture per Unity
  • Texture per Blender
  • Sfondi Web
  • Materiali PBR

Strumenti

  • Miscelatore di Texture
  • Rendi Seamless
  • Generatore di Normal Map
  • Estrattore di Palette Colori
© 2026 Texturize. Tutte le texture sono royalty-free.Nessuna attribuzione richiesta · Visualizza licenza