Erstellen einer neuen Gruppe:
- Klicken Sie auf
im Gruppenknoten, um die Gruppenansicht zu öffnen.
- Wählen Sie "Hw Shader Nodes"
"Math"
"Add and Hw Shader Nodes"
"Wert"
"Farbe", um einen Hinzufüge- bzw. einen Farbknoten zu erstellen.
- Verbinden Sie die Knoten wie folgt:
- Verbinden Sie das RGB-Attribut der Farbe mit dem ersten Wertattribut von "Hinzufügen".
- Verbinden Sie das Attribut "Ergebnis" von "Multiplizieren" mit dem zweiten Wertattribut von "Hinzufügen".
- Verbinden Sie das Attribut "Ergebnis" von "Hinzufügen" mit dem Attribut "Streufarbe" des Gruppenknotens.
- Wählen Sie den neu erstellten Farbknoten aus. Geben Sie in der Gruppe "Eigenschaften" den Namen OffsetColor ein, und ändern Sie den Wert für UI Order in 3.
OffsetColor wird nun im Material-Editor
Rollout "Parameter" angezeigt.

OffsetColor-Attribut im Rollout "Parameter"
Konvertieren einer Gruppe in eine Funktion:
- Wählen Sie Knoten "Multiplizieren" und "Hinzufügen" aus, und wählen Sie dann Menü "Gruppieren"
"Gruppe erstellen".
- Klicken Sie auf
in der neu erstellten Gruppe. Wählen Sie in der Gruppenansicht den Gruppenknoten aus, und ändern Sie in der Gruppe "Eigenschaften" das Feld "Namen" in MyColorFunction.
- Aktivieren Sie im Bereich "Eigenschaften" außerdem "Gruppe ist Funktion". Mit dieser Option wird die Ausgabe dieser Knoten als eine Funktion im Shader-Code eingebunden.
- Geben Sie den Gruppenknotenanschlüssen eindeutige Namen. Zurzeit werden alle Anschlüsse "Wert" genannt, und damit ist der Shader ungültig. (Im Material-Editor wird im Rollout "Parameter" eine Fehlermeldung ausgegeben.)
Nehmen Sie in der Gruppe "Eigenschaften" die folgenden Änderungen vor:
- Aktives Socket: 0
Beschriftung des aktiven Sockets: ColorA
- Aktives Socket: 1
Beschriftung des aktiven Sockets: Multiplikator
- Aktives Socket: 2
Beschriftung des aktiven Sockets: ColorB
Anmerkung: Wenn Sie eine Gruppe in eine Funktion konvertieren, müssen alle Gruppenknotenanschlüsse eindeutige Namen haben. Anderenfalls wird der Shader ungültig.
- Beenden Sie die Gruppenansicht, und wählen Sie Menü "Extras"
"Diagramm berechnen" aus. Nun ist der Shader erneut gültig.
Im Material-Editor wird das Rollout "Parameter" für diesen Shader erneut angezeigt.
Speichern der Shaderdatei und Überprüfen des Shader-Codes
- Beenden Sie die Gruppenansicht.
- Wählen Sie den Knoten "Material" aus. Geben Sie in der Gruppe "Eigenschaften" einen Dateinamen für die Shaderdatei im Feld "HwShader / Dateiname" ein, und drücken Sie dann
.
- Klicken Sie auf "HwShader / Auf Datenträger speichern".
Der Pfad, unter dem die Shaderdatei gespeichert wird, wird als QuickInfo unten im Arbeitsbereich angezeigt.
Anmerkung: ShaderFX speichert eine Gruppe als Datei im Ordner /Benutzer/<Benutzername>/Eigene Dateien/3dsmax/shaderfx/shaders/.
Wenn Sie den Shader als FX-Datei speichern, können Sie nun den FX-Shader als DirectX-Shader laden, ohne ShaderFX verwenden zu müssen.
Sie können aus verschiedenen Shader-Speicherformaten auswählen: Weitere Informationen finden Sie unter Exportieren in HLSL, CgFx und GLSL.
Überprüfen Sie den Shader-Code, und optimieren Sie ihn:
- Überprüfen Sie die Shaderdatei in einem Texteditor. Suchen Sie nach "MyColorFunction".
"MyColorFunction" ist als eine Funktion in die Shaderdatei definiert. Die Struktur SHADERDATA wird als Eingabe aufgeführt. Dies ist die Voreinstellung.
- Um diese Einstellung für Cleanercode zu deaktivieren, wechseln Sie in die Gruppenansicht der Gruppe "MyColorFunction", wählen Sie den Gruppenknoten aus, und aktivieren Sie in der Gruppe "Eigenschaften" die Option "Don't Add DATA Struct As Function Input".
Speichern Sie die Shaderdatei erneut, um sicherzustellen, dass die Struktur SHADERDATA nicht mehr als Eingabeparameter aufgeführt wird.