Was sind die Vorteile von Tangentialraumnormalen gegenüber Objektraumnormalen?

17

Was sind die Vorteile von Normalen im Tangentialraum gegenüber Normalen im Objektraum zur Berechnung der Reliefabbildung?

Seepferdchen
quelle
2
Einige Informationen finden Sie auch hier: Tangential Space Normal Mapping . Es enthält Bilder, vielleicht ist es für einige so klarer.
Sil

Antworten:

29

Eigentlich alles.

Der einzige Vorteil von Objektraumnormalen ist die Einfachheit. Sie sind einfacher zu bedienen.

Tangentialraumnormalen erfordern eine Tangentialraumbasis, bieten jedoch:

  1. Die Fähigkeit, die gleiche Textur für verschiedene Oberflächen zu verwenden. Objektraum-Normalkarten können immer nur auf der Oberfläche verwendet werden, für die sie erstellt wurden. Durch das Regularisieren von Normalen im Tangentialraum erhalten Sie die Freiheit, dieselbe Höckertextur für verschiedene Oberflächen zu verwenden. Solange die Oberfläche eine Tangentialraumbasis hat, erhalten Sie vernünftige Ergebnisse.

  2. Die Möglichkeit, die Texturzuordnung zu ändern, beispielsweise mit UV-Animation. Da in normalen Maps im Objektbereich Normalen im Objektbereich gespeichert werden, können Sie nicht einfach alle Texturkoordinaten um 0,5 erhöhen und erwarten, dass die Textur die richtigen Normalen enthält. Sie können mit Tangens-Space-Bump-Mapping.

  3. Kleinere Komponentendarstellung. Objektraum-Normalkarten müssen aus 3 Komponenten bestehen. Sie können keine löschen und im Shader wiederherstellen. Normalen im Tangentialraum haben immer eine positive Z-Komponente, sodass Sie nur das XY der Normalen speichern können. Sie können also entweder eine höhere Genauigkeit erzielen, indem Sie ein GL_RG16_SNORModer GL_RG16F -Format (32 Bit pro Texel) verwenden, oder die Komprimierung mithilfe eines RG-komprimierten Bildformats ( GL_COMPRESSED_SIGNED_RG_RGTC1​8 Bit pro Texel) durchführen. Sie können versuchen, S3TC auf einer normalen Karte im Objektbereich zu verwenden, aber viel Glück mit dem, was Sie zurückerhalten.

Das absolut meiste, was Sie mit normalen Karten im Objektraum erreichen, ist weniger Rechenzeit (Sie müssen die Lichtrichtung nicht in einen tangentialen Raum umwandeln oder alternativ die Normale vom tangentialen Raum in einen Modellraum umwandeln). Aber das ist keine große Sache, besonders heutzutage, wenn verzögerte Renderer herumlaufen.

Nicol Bolas
quelle
1

Eine Teilantwort, um an Nicols Antwort anzuhängen.

Viele Vorteile. Laut einem Artikel, den ich gefunden habe (der auch in den Kommentaren verlinkt ist), gibt es noch einige kleine Nachteile. Bei Künstlern, die es gewohnt sind, mit diesen Problemen umzugehen, oder Objekten, die für diese Herausforderungen weniger anfällig sind, ist dieser Nachteil möglicherweise nicht sehr gravierend.

Aus einem Artikel zur Normalenabbildung im Tangentialraum :

Obwohl eine gute Implementierung Probleme begrenzen kann, hat die Grundidee des normalen Mappings ihre Fehler. Das Auspacken komplexer Modelle und das Anbringen von Nähten an weniger exponierten Stellen kann für Künstler schwierig sein. Die folgenden Bilder zeigen Objektraum-Normalkarten (links) und Tangentialraum-Normalkarten (rechts). Hier verursachen Objektraum-Normalkarten viel weniger Probleme, da die bilineare Filterung die Kanten weicher macht und flache Oberflächen einfach eine Normale haben und daher perfekt flach sind. Nähte auf der linken Seite sind viel weniger sichtbar, da die Schattierung unabhängig vom UV-Layout und den Dreiecksverzerrungen ist.

Objektraum-Normalkarten:

Objektraum-Normalkarten

Tangentialraum-Normalkarten:

Tangentialraum-Normalkarten

Merlyn Morgan-Graham
quelle