Shading Grundlagen
Mit Shading bezeichnet man in der Computergrafik alle Eigenschaften einer Oberfläche, die darüber entscheiden, welche Farbe und Helligkeit die jeweilige Bildstelle im fertig berechneten Bild hat.
Für diese Berechnung gibt es zwei wichtige Faktoren. Zum einen die Eigenschaften der Objektoberfläche und zum anderen die Eigenschaften, des Lichts, welches auf die Oberfläche trifft.
Die wichtigste Oberflächeneigenschaft ist, die Information, wie viel des auftreffenden Lichts reflektiert wird.
Flächen und Normals
.
Im Menü des Viewport Overlays lässt sich die Sichtbarkeit der Normals für den Viewport Ein- und Ausschalten.
Flat Shading / Smooth Shading
Beim Smooth-Shading sind die Kanten der Flächen nicht mehr zu sehen. Es entsteht eine gleichmäßige Fläche mit weichen Übergängen an den Polygonkanten. Für die gleichmäßige Darstellung der Oberfläche werden über die komplette Fläche interpolierte Normalen simuliert, die sich zur Kante der Fläche immer mehr nach der Normale der Nachbarfläche ausrichten.
Im oberen Bild ist gut zu sehen, dass durch das Shading, zwar eine gleichmäßig abgerundete Oberfläche simuliert wird, die Auflösung des Objekts aber nach wie vor so gering ist, dass an der Objektkante ganz deutliche Abstufungen zu sehen sind.
Ausrichtung der Normalen
Für ein sauberes Shading ist die Ausrichtung der Flächen mit ihren dazugehörigen Normalen wichtig. Beim oben abgebildeten Objekt zeigt eine Normale nach innen. Das macht beim Flat-Shading keinen Unterschied, was daran liegt, dass bei Blender beide Seiten einer Fläche sichtbar sind. Nicht alle Renderengines und einige Game-Engines machen beide Seiten einer Fläche sichtbar. Hier würde schon im Flat-Shading ein Fehler auftauchen.
Beim Smooth-Shading führt die umgedrehte Fläche allerdings zu einem Shadingfehler. Die interpolierten Normalen an der Polygonkante liegen parallel zur Fläche, da die Normale der Nachbarfläche nach innen zeigt.
Um dies zu beheben lassen sich im Edit-Mode Flächen auswählen und unter Mesh > Normals > Flip Normals die Ausrichtung der Flächen und ihrer Normalen ändern.
Autosmooth und Hard-Edges
Wenn mein Beispielobjekt nun auch noch Flächen auf den Stirnseiten bekommt, geht es mit den Shadingfehlern gleich weiter. Bei aktiviertem Smooth-Shading wird die Darstellung nun auch über die Außenkanten abgerundet.
Dies lässt sich mit Autosmooth verhindern. Die Funktion ist in den Scene-Properties, im Vertex Tab, unter Normals versteckt. Für Autosmooth lässt sich eine Winkelbegrenzung angeben, die verhindert dass Flächen, welche in einem steileren Winkel, als dem angegebenen, aneinanderstoßen, abgerundet dargestellt werden.
In diesem Fall liegt die Wingelbegrenzung bei 30°. Da die umlaufenden Flächen in einem stumpferen Winkel aneinander stoßen, wird der Zylinder abgerundet dargestellt. Der Winkel zu den Deckflächen liegt bei 90°, ist somit spitzer als 30° und es entsteht eine harte Kante.
Zusätzlich lassen sich Kanten, von der Abrundung ausschließen, auch wenn sie innerhalb der Winkelbegrenzung liegen. Dazu müssen die Kanten selektiert und im Edit Mode unter: Edge > Mark Sharp markiert werden.
Es ist nur möglich Kanten von der Abrundung im Smooth-Shading auszuschließen, wenn Autosmooth aktiviert ist!
Mehr zum Thema Shading findest Du im Artikel: Displacement-Maps in Blender.