Bump maps

Bump maps

Bumpmapping, auch Reliefzuordnung, ist eine Technik zur Darstellung von extrem detailreichen Objekten, ohne die Geometriekomplexität des Objekts zu erhöhen, die vor allem in 3D-Visualisierungsprogrammen zum Einsatz kommt. Der Trick dabei ist, dass die benötigten Informationen in einer Textur gelagert werden, mit deren Hilfe Schattierungen auf eine Oberfläche gezeichnet werden.

Bumpmapping ist somit nur eine (wenngleich wirksame) Illusion, welche Oberflächenunebenheiten simuliert, die in der Geometrie des Modells gar nicht vorhanden sind.

Es verbessert die Bildqualität und den Realismusgrad, ohne sich groß auf die fürs Rendern benötigte Zeit niederzuschlagen. Außerdem ist das Einsatzgebiet nicht nur auf Schattierungen begrenzt. Reflexionen können mit dieser Technik genauso behandelt werden. Bumpmapping spielt bereits eine große Rolle in Projekten der Unterhaltungsindustrie, da sich die visuelle Qualität deutlich verbessern lässt, ohne die Leistung dabei nennenswert zu beeinträchtigen.

Voraussetzung für die Verwendung von Bumpmaps ist ein Beleuchtungsmodell, das auf Per-Pixel-Lighting basiert. APIs wie DirectX oder OpenGL haben die nötigen Routinen bereits vorliegen. Meistens wird jedoch eine Kombination aus Vertex und Pixel-Shadern verwendet, um die nötigen Effekte exakt zu kontrollieren.

Inhaltsverzeichnis

Height-Mapping

Die relativen Höheninformationen liegen in einer Textur in Form von Graustufen vor - der sog. Heightmap. Jeder Grauwert steht für eine bestimmte Höhe. Normalerweise ist Schwarz (Wert 0) die „tiefste“ Stelle und Weiß (Wert: 255) die „höchste“. Diese Form der Datenspeicherung ist nicht nur auf Bumpmapping beschränkt, viel öfter kommt sie bei der Generierung von riesigen Terrains zum Einsatz.

Da Höhenunterschiede nur durch verschiedene Graustufen auf der Textur vorgegaukelt werden, die Flächen aber glatt bleiben treten einige sichtbare Fehler auf:

  • Bei flachem Betrachtungswinkel wirkt die Struktur stark verzerrt.
  • Die Silhouette bleibt so eben wie beim ursprünglichen Objekt.
  • Es wird ein glatter Schatten geworfen.
  • Bumps werfen keine Schatten aufeinander.

Normal-Mapping

In einer Normal Map werden anstatt von Höheninformationen Vektoren in ein RGB-Farbentripel konvertiert. Jeder Pixel besteht aus 3 Farbenkanälen: Rot, Grün und Blau. Diese können als X,Y und Z interpretiert werden: der Vektor muss nur mehr normalisiert werden, um daraus den Helligkeitsfaktor am betreffenden Punkt zu berechnen (siehe Per-Pixel-Lighting). Hierbei muss beachtet werden, dass der Vektor, der aus den Farbwerten berechnet wird, im Tangentenraum vorliegt. Um die nötigen Berechnungen durchführen zu können, muss dieser Vektor in das Weltkoordinatensystem transformiert werden. Alternativ könnten auch alle anderen Vektoren (Kamera-Punkt, Licht-Punkt) in das Tangentenkoordinatensystem verschoben werden.

Anwendung

einfache Kugel
Obwohl zum vorhergehenden Objekt geometrisch identisch, sieht dieses dank Bump Mapping viel detailreicher aus.
Die in Bild 2 verwendete Bump-Map (Heightmap)

Der 3D-Modeller baut zwei Versionen eines Modells auf: eine hochauflösende, sehr detailreiche (100.000+ Polygone) und eine für das fertige Programm bestimmte, undetaillierte (100–10.000 Polygone). Ein Programm berechnet den Unterschied zwischen den beiden Modellen und beschreibt mit den gewonnenen Daten eine Textur. Diese Textur wird dann auf das Low-Poly-Modell gespannt. Im fertigen Spiel/Bild/Anwendung bekommt der Benutzer den Eindruck, dass das hochdetaillierte Modell verwendet wird.

Außerdem kann eine Heightmap in eine Normalmap umgewandelt werden, welche heutzutage am häufigsten verwendet wird.

Virtual Displacement-Mapping

Parallax-Mapping der Qfusion-Engine (Spiel Nexuiz)

Eine noch plastischer wirkende Darstellung. Wurde entwickelt, als Displacement Mapping noch nicht in Echtzeit möglich war, und wird auch heute noch gerne zur Ersparnis von Rechenzeit verwendet.

Im Unterschied zum richtigen Displacement Mapping, bei dem sich die Geometriekoordinaten ändern, werden hier die Texturkoordinaten auf Per-Pixel-Basis modifiziert um Beleuchtungseffekte zu erzeugen. Die einfachste dieser Varianten nennt sich Parallax Mapping und berechnet relativ zur Kameraposition aus einer Heightmap die neuen Texturkoordinaten.

Der Nachteil ist, dass eigentlich nicht sichtbare Pixel trotzdem gerendert werden. Abhilfe schafft nur das Speichern zusätzlicher Beziehungen zwischen Texel (Verdeckungen) über weitere Texturen (View-Dependent Mapping). Außerdem ist zu beachten, dass die Oberfläche des Objekts weiterhin vollkommen flach bleibt, da nur die Helligkeitswerte der Textur verändert werden und nicht, wie beim Displacement Mapping, die Form des Objekts. Das fällt besonders bei flachem Betrachtungswinkel, und an den Objektkanten unschön auf.

Allerdings leiden darunter auch die anderen Beleuchtungsarten, wenn auch nicht so sehr.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Texture mapping — Texture maps redirects here. For the 2003 ambient album, see Texture Maps: The Lost Pieces Vol. 3. 1 = 3D model without textures 2 = 3D model with textures Texture mapping is a method for adding detail, surface texture (a bitmap or raster image) …   Wikipedia

  • Nvidia demos — In order to showcase the abilities of GeForce chipsets, Nvidia creates technology demos that render in real time on the chipsets in question (while videos are usually also made available). This listing attempts to mention recent, more notable… …   Wikipedia

  • Photoshop plugin — Photoshop plugins are add on programs aimed at providing additional image effects or performing tasks that are impossible or hard to fulfill using Adobe Photoshop alone. Plugins can be opened from within Photoshop and several other image editing… …   Wikipedia

  • Kai's Power Tools — are a set of API plugins created by Kai Krause that were designed for use with Adobe Photoshop and Corel Photo Paint. Kai s Power Tools were sold to Corel when MetaCreations was closed.The phrase Kai s Power Tools is often abbreviated to… …   Wikipedia

  • ZBrush — Infobox Software name = Pixologic ZBrush caption = Screenshot of ZBrush 3.0 developer = Pixologic latest release version = 3.1 / August 2007 operating system = Windows, Mac OS X genre = 3D computer graphics license = Proprietary website =… …   Wikipedia

  • Riven — The PC box art for Riven showcases Richard Vander Wende s concept of what players would first see on the Age of Tay.[1] Developer(s) …   Wikipedia

  • Filter Forge — is a standalone application and plugin for Adobe Photoshop and compatible 8bf plugin hosts that allows users to apply programmable image processing filters and to define them with a visual node based filter editor. A similar approach is practiced …   Wikipedia

  • Anim8or — 0.95c …   Wikipédia en Français

  • Poser (Software) — Poser Entwickler Smith Micro Aktuelle Version 8 (Sommer 2009) Betriebssystem Mac OS X, Windows Kategorie 3D Grafiksoftware Lizenz …   Deutsch Wikipedia

  • Operation: Matriarchy — Developer(s) MADia Entertainment Publisher(s) Buka Entertainment …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”