Normal map vs bump map: qual è la differenza?
Sia le normal map che le bump map aggiungono l'illusione di dettagli di superficie — graffi, pori, solchi — senza aggiungere poligoni. La differenza è nella quantità di informazioni che memorizzano e quindi quanto convincenti appaiano.
La risposta breve
Una bump (height) map è un'immagine in scala di grigi dove la luminosità significa altezza — semplice, ma spinge i dettagli solo dentro o fuori. Una normal map è un'immagine RGB che memorizza una direzione di superficie completa per pixel, quindi può fingere dettagli che catturano la luce dal fianco. Le normal map sono più ricche e sono l'impostazione predefinita in PBR moderno; le bump/height map sono ancora utili per displacement e parallax.
Come funziona una bump map
Una bump map è in scala di grigi — il bianco è alto, il nero è basso. Il renderer legge il gradiente di luminosità e spinge la surface normal su o giù per fingere il rilievo.
È economica e intuitiva, ma poiché codifica solo l'altezza lungo un asse, non può rappresentare i dettagli che si affacciano lateralmente — quindi i dettagli smussati o angolati appaiono più morbidi e meno definiti di quanto dovrebbero.
Come funziona una normal map
Una normal map usa i canali rosso, verde e blu per memorizzare una direzione X/Y/Z per la superficie in ogni pixel — ecco perché appaiono per lo più blu-viola. Questo le permette di inclinare la superficie apparente in qualsiasi direzione.
Quelle informazioni extra significano che i bordi smussati, i graffi angolati e i dettagli fini catturano la luce realisticamente dal fianco, non solo di fronte. Una normal map contiene molte più informazioni di superficie di una bump map in scala di grigi, per questo è diventata lo standard.
Dove le height map si adattano ancora
La "bump map" in scala di grigi continua come height/displacement map in PBR — non è obsoleta. Guida il true displacement e il parallax occlusion, aggiungendo profondità reale o apparente che una normal map da sola non può.
Molti material vengono forniti con entrambi: una normal map per i dettagli direzionali fini e una height map per parallax e displacement che cambia la sagoma. Si completano a vicenda piuttosto che competere.
Domande frequenti
Una bump map è la stessa cosa di una height map?
Essenzialmente sì — una classica bump map in scala di grigi è una height map, dove la luminosità codifica l'altezza. In PBR di solito si chiama height o displacement map.
Dovrei usare una normal map o una bump map?
Per la maggior parte dei dettagli di superficie, usa una normal map — è più ricca ed è lo standard moderno. Usa una height map insieme ad essa per parallax o true displacement.
Perché la mia normal map è blu?
Perché una superficie piatta punta dritta verso l'alto nello spazio tangente, che codifica in un colore bluastro. I rossi e i verdi appaiono dove la superficie è inclinata.
Genera una normal map da una foto o da dettagli di altezza e visualizzala illuminata in 3D — istantaneamente, in Mixos.