Der Normalen-Bearbeiten-Manager
Allgemeines
Die Funktionen dieses Managers drehen sich alle um das Bearbeiten von Vertex-Normalen. Normalerweise werden Vertex-Normalen automatisch vom Phong-Tag berechnet, was in den meisten Fällen auch völlig ausreichend ist.
Wollen Sie trotzdem manuell in die Ausrichtung der Vertex-Normalen eingreifen - um etwa spezielle Shading-Effekte wirken zu lassen - müssen Sie diesen Automatismus ausschalten. Dazu brauchen Sie zwingend ein Normalen-Tag, das die Vertex-Normalen für jeden Objektpunkt speichert. Aber keine Sorge, dieses wird automatisch erzeugt, wenn Sie etwas an den Vertex-Normalen ändern.
Andernfalls kann es auch manuell von jedem Phong-Tag aus erzeugt werden: klicken Sie dazu einfach auf den Button Normalen-Tag erzeugen (dazu muss das Objekt polygonal vorliegen, Grundobjekte/Generatoren etwa müssen dazu bearbeitbar gemacht werden).
Hinweis:
-
Alle hier im Normalen-Bearbeiten-Manager enthaltenen Befehle sind auch als separat aufrufbare Befehle (z.B. Normalen bearbeiten - Hart) implementiert.
- Für das Übertragen von Vertex-Normalen zwischen verschiedenen Objekten ist der Eigenschaftsübertragung-Manager (ehemals VAMP) gut geeignet.
- Normalen können auch prozedural ausgerichtet werden, indem Sie im Normalen-Tag Felder verwenden.
Bei diesem Beispiel wurde der rechts rot markierte, rechteckige Bereich abgelöst; somit liegen 2 Objekte vor. Wie Sie links erkennen können, ergeben sich dabei unschöne Shading-Fehler. Das liegt daran, dass die übereinander liegenden Randpunkte verschieden ausgerichtete Vertex-Normalen haben.
Lösung: Selektieren Sie beide Objekte im Objekt-Manager, schalten Sie in den Punkte-Modus und selektieren Sie alle Randpunkte. Im Normalen-Bearbeiten-Manager klicken Sie auf den unten beschriebenen Befehl Durchschnitt und erfreuen sich an einem perfekten, homogenen Shading über beide Objekte hinweg.
Die Vertex-Normalen und das Shading
Warum Vertex-Normalen überhaupt angefasst werden sollen, erklärt Ihnen ein kurzer Ausflug in deren Bedeutung für das Shading.
Kurz gesagt, definieren die Vertex-Normalen in Verbindung mit der Lichtquellenposition, wie hell das Shading an entsprechender Stelle erscheint.
Zwischen den Vertex-Normalen wird interpoliert.
Je stärker die Vertex-Normalen einer Lichtquelle zugewandt sind, desto heller erscheinen zugehörige Polygone. Von der Lichtquelle abgewandte (genauer: ab 90°) Vertex-Normalen tauchen zugehörige Polygone in Dunkelheit.
Meshpunkte haben so viele Vertex-Normalen, wie es zugehörige Polygone gibt. Zeigen die Vertex-Normalen eines Punktes in identische Richtung, gibt es beim Polygonübergang keinen Helligkeitssprung (“harte Kante”), wie die Abbildung links es zeigt.
Rechter Hand zeigen die Vertex-Normalen pro Polygon jeweils in Richtung ihrer Polygon-Normalen. Damit erscheint das ungeglättete Objekt facettiert, d.h. jedes Polygon hat die gleiche Helligkeit, da auch die interpolierten Normalen alle in die gleiche Richtung zeigen.
Das kann z.B. dazu verwendet werden, harte Kanten zu erzeugen (Abb. unten, links). Unten, rechts wurden alle Vertex-Normalen zur Lichtquelle hin ausgerichtet, was alle Flächen maximal hell erscheinen lässt.
Als Ergänzung sei noch gesagt: die Normalen können zur Renderzeit per Normalen-Map beliebig verbogen werden - und das auch zwischen den Meshpunkten. Damit können Details gezeigt werden, ohne dass unnötig viel Geometrie eingesetzt werden muss.
Selektion
Diese Vertex-Normalen gelten als selektiert, wenn ein Punkt, eine Kante oder ein Polygon selektiert ist.
Die Befehle wirken auf die Vertex-Normalen selektierter Elemente. Da ein Punkt bis zu vier separate Vertex-Normalen haben kann, muss festgelegt werden, welche Vertex-Normalen als selektiert gelten, wenn ein Punkt, eine Kante oder ein Polygon selektiert ist.
Diese Vertex-Normalen gelten als selektiert, wenn ein Element selektiert ist (s.a. Abbildung):
- Polygon: alle zum Polygon gehörigen, d.h. jeder Polygoneckpunkt hat genau eine selektierte Vertex-Normale.
- Kante: alle Vertex-Normalen an den Kantenendpunkten, die Anzahl entspricht der der sich diese Kante teilenden Polygonen.
- Punkt: alle zu diesem Punkt gehörigen Vertex-Normalen, die Anzahl entsprechend aller Polygone, die dort einen Eckpunkt haben.
Ist kein Element selektiert, ist der Effekt derselbe, als wären alle selektiert.
Parameter
Raum
Manche Befehle orientieren sich an Achsenrichtungen (z.B. Ausrichten). Hier können Sie auswählen, ob das Objektkoordinatensystem oder das Weltkoordinatensystem verwendet werden soll.
Stärke
Hier definieren Sie, wie stark der jeweilige Befehl wirken soll. 100% wirkt immer komplett, während z.B. 10% dazu einlädt, den Befehl wiederholt aufzurufen, um eine schrittweise Wirkung zu erzielen.
Richtung
Hier kann für einige die Befehle (z.B. Ausrichten) eine Richtung in Vektorschreibweise angegeben werden. Wollen Sie z.B. eine Vektor-Normale senkrecht nach oben zeigen lassen, geben Sie hier 0,1,0 ein - oder klicken schlicht auf +Y - und drücken auf Ausrichten. Das Koordinatensystem definieren Sie mit Raum.
Ausrichten
Die selektierten Vertex-Normalen werden in X-Richtung ausgerichtet.
Hiermit werden selektierte Vertex-Normalen in die unter Richtung definierte gedreht.
Abstand
Der Befehl Durchschnitt bildet innerhalb eines gewissen Abstands um jede selektierte Vertex-Normale eine Durchschnitts-Vertex-Normale. Diesen Abstand regeln Sie hier.
Durchschnitt
Die selektierten Vertex-Normalen werden in ihre durchschnittliche Richtung gedreht.
Hiermit nehmen alle selektierten Vertex-Normalen ihre durchschnittliche Richtung an. Das funktioniert auch über mehrere Objekte hinweg, sofern die selektierten Elemente innerhalb des unter Abstand definierten Radius liegen. Geben Sie also einen Abstand von 0 an, wenn alle Vertex-Normalen jeweils eines Punkts miteinander gemittelt werden sollen.
Hart
Hiermit werden die Vertex-Normalen selektierter Kanten, bzw. der Umriss zusammenhängender Polygonselektionen aufgetrennt, so dass dort eine harte Kante entsteht.
Bezüglich Kantenselektionen arbeitet dieser Befehl ähnlich wie das Phong-Shading unterbrechen auch macht.
Weich
Dieser Befehl macht aus harten Kanten wieder eine geglättete Oberfläche, also im Prinzip das, was das Phong-Tag mit einem sehr großen Winkel - nämlich 180° - macht, d.h. alle Vertex-Normalen eines Punkts zeigen in die gleiche Richtung. Das macht sogar aus einem Würfel bzgl. des Shadings etwas kugelähnliches.
Von selektierten
Zu selektierten
Diese beiden Befehle funktionieren nur für Punkte, deren Vertex-Normalen teilweise selektiert sind: wenn Sie eine Kante oder ein Polygon selektieren, sind ja per Definition nicht automatisch alle Vertex-Normalen der beteiligten Punkte selektiert, sondern je nach Selektion nur ein Teil davon (s.a. Selektion). Mit diesen beiden Befehlen können bei einer Teilselektion entweder die selektierten oder die nicht selektierten Vertex-Normalen jeweils an die anderen (pro Punkt) angepasst werden.
Hier sehen Sie ein selektiertes Polygon, rot markiert sind dabei die dazugehörigen, selektierten Vertex-Normalen. Daneben gibt es pro Punkt jeweils 3 weisse Vertex-Normalen, die zu den anderen, angrenzenden Polygonen gehören.
Die beiden Befehle machen jetzt folgendes pro Punkt:
- Von selektierten: Die selektierten Vertex-Normalen werden gemittelt und diese Duchschnittsnormale wird von den anderen übernommen. Im Fall eines einzelnen selektierten Polygons sind dann alle deckungsgleich.
- Zu selektierten: von den unselektierten Vertex-Normalen wird eine durchschnittliche gebildet, auf die die selektierte gesetzt wird. Das kann z.B. dazu genutzt werden, einen einzelnen Polygon-Loop zu glätten.
X, Y, Z
Umdrehen
Dieser Befehl dreht alle selektierten Vertex-Normalen um 180° in die Gegenrichtung (sofern die daneben angeordneten Optionen X, Y und Z alle aktiviert sind).
Ansonsten kann durch einzelne Achsenaktivierung eine senkrecht dazu stehende Spiegelebene definiert werden. Aktivieren Sie z.B. nur Y, wird nur die Y-Komponente der Vertex-Normalen gespiegelt.
Polygon-Normalen
Vertex-Normalen
Nur selektierte
Möchten Sie sich Polygon- und Vertex-Normalen anzeigen lassen, so aktivieren Sie die jeweilige Option. Wahlweise gilt das nur für selektierte Elemente.
Befehle
Alle eben beschriebenen Befehle in Button-Form gibt es auch als einzelne Menübefehle, die genau so wie oben beschrieben funktionieren (evtl. vorhandene Raum-Einstellungen sind für die meisten ohne Funktion):
Siehe oben.
Siehe oben.
Siehe oben.
Siehe oben.
Siehe oben.
Siehe oben.
Siehe oben.