Substance Designer ist eine Software zum Erstellen von Texturen und basiert auf einem Knotenpunktsystem (Nodesystem). Verschiedene Knoten wie z.B. Warp, Blend oder auch Noise werden verwendet um individuelle Texturen zu erschaffen. Das Verbinden einzelner Knoten ist der Weg wie du deine eigene Texturen erstellen kannst. Über die Vorschau sowohl in 2D als auch 3D kannst du jederzeit deinen Fortschritt verfolgen und überprüfen ob die von dir eingesetzten Knotenpunkte dich auch näher an dein Ziel bringen. Zum Abschluss kannst du die finalen Texturen deines Werks exportieren und beispielsweise in Unity einfügen und einem Material hinzufügen.
Substance Material
Neben der Möglichkeit Texturen aus Substance Designer zu exportieren und danach einem in Unity erstellen Material zuzuweisen gibt es auch die Möglichkeit, dass du direkt aus Substance Designer ein so genanntes Substance Material exportierst. Dieses Material beinhaltet bereits alle finalen Texturen und kann dann mit Hilfe eines Plugins importiert werden.
Unity Asset Substance
Überprüfe also ob es für die Software die zum Weiterverarbeiten der Texturen aus Substance verwenden möchtest ein Plugin gibt, denn mit Hilfe des Plugins kannst du nicht nur die Texturen schnell und einfach importieren, sondern du kannst auch die einzelnen Parameter wie z.B. Color, Roughness oder auch die Größe der Texture in Echtzeit verändern. Die Substance Materials aus Substance Designer lassen ich auch in Substance Painter importieren und somit kannst du deine Texturen um viele Funktionen erweitern.
Nodes
In Substance Designer arbeitest du primär im Node-Editor um deine gewünschte Texture zu erschaffen. Der Node-Editor ist ein Graph, welcher verschiedene Nodes beinhaltet. Um einen Node zu erstellen, selektierst du aus der Library einen Node z.B. Generators > Noises und ziehst den Node auf den Node-Editor per Drag and Drop. Solltest du noch keinen Graph erstellt haben dann selektiere in der Menüleiste „File“ > „New Substance“ wähle „Graph“ und klicke auf OK zum erstellen. Du kannst jeden erstellten Knoten als Graph Reference öffnen. Klicke dazu mit der rechten Maustaste auf den Node und wähle „Open Reference“.
Substance Open Reference
Durch das genauere Betrachten des Nodes stellst du fest, dass dieser aus mehreren einzelnen Nodes besteht. Da es sich hier um ein default Package handelt ist es nicht möglich Änderungen vorzunehmen. Du kannst das Package wieder schließen indem du mit der rechten Maustaste auf den Graph klickst *.sbs Datei klickst und „Close“ wählst.
Mit Hilfe der Leertaste kannst du dir eine Liste von Nodes anzeigen lassen, wie z.B. Blend, Blur, Bitmap, Text, Normal, etc. Bei diesen Nodes handelt es sich atomic oder auch operational nodes. Atomic Nodes ein wesentlicher Bestandteil von Substance Designer und werden nicht als Graph representiert. Diese Nodes sind speziell optimiert und werden von dir als User häufig verwendet. Im Graph Editor findest du die einzelnen Icons der Atomic Nodes auch innerhalb der Toolbar.
Substance Atomic Nodes
Material Workflow
Bevor du deine eigenen Materials erstellen kannst, solltest du verstehen wie der Arbeitsablauf für ein Material genau aussieht. Grundsätzlich arbeiten wir beim Erstellen von Materials von greyscale (graustufig) zu farbig. Damit bestimmen wir die Form und die Details des Materials.
Substance Workflow Übersicht
Durch die Verwendung von greyscale während des Workflows muss der Computer nicht die Berechnung für die Farben (RGBA Color) vornehmen, denn die Wahl der Farbe kannst du dann zu einem späteren Zeitpunkt im Material Workflow vornehmen. Hinzu kommt auch noch, dass du dir Verwendung von greyscale es uns viel leichter fällt Unterschiede auf dem Material zu erkennen, denn Farbe würde uns dabei nur ablenken oder gar täuschen.
- Greyscale
- Basic Shapes (z.B. Perlin_noise)
- Large->Medium->Small Shapes
- Small Details (rocks, twigs) – Werden quer über die Substance verteilt
- Height (vorherige Schritte definieren die Hightmap)
- Create Maps
- Normal
- Ambient Occlusion
- Roughness
- Albedo
- Ground
- Rocks
- Twigs
- Material Blending
- Vorherigen Schritte fließen hier zusammen (Greyscale, Create Maps und Albedo)
- Material Layering Process
- Ground, Dirt, Water, etc.
- Outputs
- Finale Texturen die exportiert werden können aus Substance Designer
- Normal
- Ambient Occlusion
- Roughness
- Metallic
- Base Color
- Height
Substance Source
Substance Source ist die hauseigene Bibliothek für Physik-Basierte Materialien. Du findest dort sowohl gezeichnete als auch gescannte Texturen und kannst diese in dein Projekt einbauen. Innerhalb der Bibliothek findest du auch kostenfreie Materials, du kannst das ganze also auch währen der Trail-Phase testen.
Unter der Kategorie „Free Assets“ findest du die kostenlosen Materials und kannst diese auch per Plugin in Unity importieren.
Substance Source
Material in Unity
Mit Hilfe des „Substance in Unity“ Plugins kannst du direkt aus Substance Source die Materials in dein Unity Projekt laden. Nach dem Import wird dir die *.sbsar Datei im Assets Ordner angezeigt und du kannst mit einem Klick im Inspektor auf das Material dieses auch direkt einem Objekt in deiner Scene per Drag & Drop zuweisen. Standardmäßig sind die Texturen in einer Auflösung von 256×256 Bit. Wundere dich also nicht, falls deine Textur noch nicht der Qualität aus Substance Source entspricht. Die Qualität kannst du wie folgt ändern:
- Substance Datei im Assets Ordner auswählen
- Graph im Inspector selektieren
- Nach unten scrollen bis „Target Settings“
- Target Width & Target Height umstellen z.B. auf 2048×2048
Substance Target Settings
Die Änderung der Qualität hat einen beträchtlichen Einfluss auf deine Anwendung. Vor allem wenn der User näher an das 3D Objekt herankommt. Überlege dir also in wie fern ein höhere Auflösung der jeweiligen Texture notwendig ist, denn eine bessere Texture benötigt mehr Speicher. Unten siehst du einen Vergleich zwischen einer Texture mit 128×128 und 2048×2048.
Textur 2048×2048
Textur 128×128