Mit dem DirectX-Shader können Sie den Effekt des Normalen-Relief-Mappings in den Ansichtsfenstern sichtbar machen.
Vorbereiten der Lektion:
- Fahren Sie mit dem Ergebnis der vorherigen Lektion fort, oder
öffnen Sie die Datei pavers_view.max im Ordner \materials_and_mapping\normal_bump_map.
Anmerkung: Das zweite Verfahren in dieser Lektion zeigt einen 3D-Effekt, für den erforderlich ist, dass Ihre Ansichtsfenster entweder einen Nitrous-Treiber (Nitrous Direct3D 11 ist die Vorgabeeinstellung) oder den älteren Direct3D-Bildschirmtreiber verwenden. Sie können über Anpassen

Einstellungen

Ansichtsfenster anzeigen, welchen Treiber Sie verwenden, und diesen ggf. ändern. Bei einer Änderung des Treibers muss
3ds Max neu gestartet werden.
Vorschau des Normalen-Relief-Maps:
-
Wählen Sie das Ebenenobjekt aus. Drücken Sie die rechte Maustaste, und wählen Sie im Quad-Menü den Befehl "Auswahl isolieren". Als Nächstes werden Sie den Auswahlkäfig der Ebene verbergen, der durch den zuvor hinzugefügten Projektionsmodifikator erzeugt wurde.
- Öffnen Sie in der
Modifikatorgruppe die Modifikatoren-Liste, und wenden Sie einen Modifikator des Typs "Poly-Auswahl" an. Hiermit wird der Modifikator ganz oben auf den Modifikatorstapel der Ebene hinzugefügt und verbirgt den Auswahlkäfig.
- Öffnen Sie den
erweiterten Material-Editor.
- Klicken Sie auf
(Material aus Objekt auswählen) und dann auf das Ebenenobjekt, um dessen Material in der aktiven Ansicht anzuzeigen.
- Doppelklicken Sie auf den Hüllenmaterialknoten (Proj-Plane_mtl [Proj-Plane]) (rechts), um die Hüllenmaterialparameter anzuzeigen.
Wie das Rollout zeigt, enthält das Hüllenmaterial zwei Typen von Material: das ursprünglich zugewiesene Ebenenmaterial, das nur angezeigt wird, wenn es gerendert wurde, und das vom Quellobjekt erhaltene Einbackmaterial, das nur in den Ansichtsfenstern angezeigt wird.
- Klicken Sie im erweiterten Material-Editor auf
(Zoom Grenzen), um die gesamte Materialstruktur anzuzeigen.
Tipp: Sie können die Größe des erweiterten Material-Editors anpassen und die anderen Navigationswerkzeuge verwenden, um die Ansicht überschaubarer zu gestalten.
Auf der rechten Seite befindet sich der übergeordnete Knoten: das Hüllenmaterial, das Sie gerade überprüft haben. Links daneben sind die zwei Untermaterialien: Das ursprüngliche, renderfähige Material befindet sich oben und das eingebackene Hardwarematerial darunter. Das Einbackmaterial verfügt über einen Bitmap-Knoten und einen Normalen-Relief-Map-Knoten. Der Normalen-Relief-Knoten schließlich verwendet das Normalen-Map-Bitmap, das Sie in der vorherigen Lektion gerendert haben.
- Doppelklicken Sie auf den Bitmap-Knoten für das Normalen-Relief-Map. Dies ist der Knoten ganz links.
- Klicken Sie im Rollout "Bitmap-Parameter"
Bereich "Zuschnitt/Platzierung" auf "Bild anzeigen".
3ds Max zeigt das Normalen-Relief-Map an, das Sie zuvor erstellt haben, und das nun auf das Ebenenobjekt angewendet wird.
Die Farben im Map sind von Bedeutung. Normalen-Relief-Maps vermitteln soviel mehr Details als gewöhnliche Relief-Maps, weil sie für Oberflächendetailinformationen das gesamte RGB-Spektrum verwenden, gewöhnliche Relief-Maps dagegen nur einfache Graustufen. Der blaue Kanal übermittelt vertikale Tiefeninformationen, und der rote und grüne Kanal erweitern diese Informationen, indem sie an jedem Punkt einen Richtungsvektor für die Ausrichtung der Oberflächennormalen bereitstellen. Dies führt zu einer höheren Realitätstreue.
-
Schließen Sie das Fenster mit dem gerenderten Bild.
Verwenden der Hardware-Schattierung zum Anzeigen des Map:
- Klicken Sie im erweiterten Material-Editor auf den Knoten baked_Proj-Plane_mtl / Standard material, um die Parameter anzuzeigen.
- Öffnen Sie im Werkzeugkasten des erweiterten Material-Editors das Flyout Map im Ansichtsfenster zeigen, und wählen Sie die Option Realistisches Material im Ansichtsfenster zeigen.
Anmerkung: Wenn Sie den älteren Direct3D-Treiber verwenden, lautet die QuickInfo für diese Option "Hardware-Material im Ansichtsfenster zeigen".
- Öffnen Sie in der Leiste "Parameter-Editor" das Rollout Maps, und erhöhen Sie den Reliefbetrag auf 90.
- Minimieren Sie den erweiterten Material-Editor.
Vergrößern Sie im Ansichtsfenster "Perspektive" die Anzeige, damit Sie die Ebene besser sehen können. Die flache Oberfläche des Ebenenobjekts wird detaillierter und dreidimensional.
Als Nächstes fügen Sie ein Standard-Omnilicht zur Szene hinzu, um zu sehen, wie effektiv das Normalen-Relief-Map dem Objekt Tiefe verleiht, wenn sie mit einem Standard-Omnilicht kombiniert wird.
Visualisieren des 3D-Effekts
- Aktivieren Sie in der
Erstellungsgruppe die Option
(Lichtquellen). Wählen Sie aus der Dropdown-Liste "Standard", und klicken Sie anschließend auf "Omnilicht", um die Option zu aktivieren.
- Klicken Sie im Ansichtsfenster auf eine beliebige Stelle über dem Ebenenobjekt, um die Lichtquelle zu platzieren.
-
Bewegen Sie die Lichtquelle über die Steine. Unter Umständen müssen Sie die Lichtquelle vertikal verschieben, um sie über der Ebene zu positionieren.
Obwohl dieses Objekt eine flache Ebene ist, beachten Sie, wie Licht und Schatten über die Steine spielen, als ob die Geometrie eine hervorgehobene Oberfläche wäre.
Tipp: Wenn Sie den 3D-Beleuchtungseffekt nicht sehen können, wählen Sie Ansichten - Ansichtsfensterschattierung: Beschriftungsmenü

Licht und Schatten

Mit Szenenlichtern beleuchten. (Für Nitrous-Ansichtsfenster ist diese Option nur verfügbar, wenn als Schattierungsstil die Option Realistisch eingestellt ist.)
Versuchen Sie, mit beiden Renderern zu rendern:
- Löschen Sie das Lichtobjekt.
- Stellen Sie den erweiterten Material-Editor wieder her (drücken Sie M), und verschieben Sie das Fenster ggf. so, dass es vollständig zu sehen ist.
- Doppelklicken Sie auf den Hüllenmaterialknoten (Proj-Plane_mtl [Proj-Plane]) (rechts), um die Hüllenmaterialparameter anzuzeigen.
- Stellen Sie im Rollout "Hüllenmaterialparameter" das Einbackmaterial als in der Renderausgabe sichtbar ein.
- Minimieren Sie den erweiterten Material-Editor.
Drehen Sie die Ebene im Ansichtsfenster "Perspektive", bis sie nahezu horizontal ist, und drücken Sie anschließend F9, um die Ebene zu rendern.
Beachten Sie, wie die Kanten der Ebene immer noch gerade und zweidimensional erscheinen.
Das 3D-Relief, das Sie bisher mit den Streufarben- und Normalen-Relief-Maps erreicht haben, ist für die Spieleentwicklung normalerweise ausreichend. Bei anderer Verwendung, z. B. in der Filmkunst, müssen Sie einen Schritt weitergehen.
Um den Effekt zu erzielen, verwenden Sie das Höhen-Map, das Sie bereits erstellt haben, und rendern Sie es mit dem mental ray-Renderer.
- Klicken Sie auf
(Rendern einrichten), um das Dialogfeld "Renderausgabe einrichten" zu öffnen. Führen Sie auf der Registerkarte "Allgemein" einen Bildlauf nach unten zum Rollout "Renderer zuweisen" durch, und klicken Sie dann für den Produktions-Renderer auf
(Renderer wählen).
- Wählen Sie im Dialogfeld Renderer wählen die Option „NVIDIA mental ray“, und klicken Sie dann auf OK.
-
Rendern Sie die Ebene erneut.
- Klicken Sie im Fenster mit dem gerenderten Bild auf die Schaltfläche
(Fenster mit gerendertem Bild klonen), und minimieren Sie anschließend die beiden Bilder.
Rendern Sie das Höhen-Map
Nun werden Sie das Höhen-Map in den Rendervorgang einbeziehen.
-
Wählen Sie das Ebenenobjekt aus.
- Drücken Sie M, um den erweiterten Material-Editor wiederherzustellen.
- Doppelklicken Sie auf den Standardmaterialknoten (baked_Proj-Plane_mtl), um seine Parameter anzuzeigen.
- Klicken Sie im Rollout "mental ray – Verbindung"
Bereich "Erweiterte Shader" auf die
Sperrschaltfläche für "Verschiebung", um die Option und die zugehörigen Steuerelemente freizuschalten.
- Suchen Sie in der Material-/Map-Übersicht im linken Bereich des erweiterten Material-Editors den Eintrag "Maps"
"mental ray"
"Height Map Displacement" (Höhen-Map-Verschiebung), und ziehen Sie diesen Map-Typ in die aktive Ansicht.
Vergrößern Sie die aktive Ansicht, so dass Sie sowohl den Standardmaterialknoten (baked_Proj-Plane_mtl) als auch den neuen Knoten des Maps "Height Map Displacement" (Höhen-Map-Verschiebung) gut sehen können.
- Klicken Sie im Standardmaterialknoten (baked_Proj-Plane_mtl) auf das Pluszeichen (+), um den Bereich "mr-Verbindung" zu öffnen, und vernetzen Sie anschließend den Knoten des Maps "Height Map Displacement" (Höhen-Map-Verschiebung) mit der Komponente "mr-Verbindung: Verschiebung" des Einbackmaterials.
- Suchen Sie in der Material-/Map-Übersicht den Eintrag "Maps"
"Standard"
"Bitmap", und ziehen Sie diesen Map-Typ in die aktive Ansicht. 3ds Max öffnet ein Dialogfeld zur Dateiauswahl.
Wählen Sie im Dialogfeld die Datei proj-planeheightmap.tga aus.
Wie auch die Streufarben- und Normalen-Relief-Maps sollte sich die Datei im Ordner \sceneassets\images oder in dem von Ihnen zuvor unter "In Textur rendern"
Rollout "Allgemeine Einstellungen" angegebenen Ordner befinden.
- Vernetzen Sie den Knoten des neuen Bitmaps mit der Höhen-Map-Komponente des Knoten des Maps "Height Map Displacement" (Höhen-Map-Verschiebung).
- Doppelklicken Sie auf den Knoten des Maps "Height Map Displacement" (Höhen-Map-Verschiebung), um seine Parameter anzuzeigen, und legen Sie im Rollout "Height Map Displacement" (Höhen-Map-Verschiebung) die minimale Höhe auf 0,0 fest.
Tipp: Sie können dafür einfach mit der rechten Maustaste auf die Pfeile des Zahlenauswahlfelds klicken.
-
Rendern Sie das Ansichtsfenster "Perspektive".
- Stellen Sie die Ansicht des gerenderten Bilds wieder her, das Sie zuvor geklont haben, und vergleichen Sie die Renderergebnisse.
Die Geometrie wurde basierend auf dem 3D-Verschiebungs-Map verbessert, das von der mental ray-Engine erzeugt und zum Render hinzugefügt wurde.
Zusammenfassung
Dieser Lehrgang hat Ihnen gezeigt, wie komplexe Oberflächendetails von einem Quellobjekt auf eine einfache, zweidimensionale Ebene projiziert werden. Die Details werden von der Quelle durch Einschließen von Normalen-Relief-, Streufarben- und Höhen-Maps in der Projektion abgeleitet und anschließend als Textur auf die einfache Ebene gerendert.