Nun also doch ein Kapitel aus maXe's Universal-Handbuch 'Wie beschäftige ich die CPU meines Rechners während des Rendervorgangs zuverlässig? - oder: Mööönsch, dat' Pixel muss doch dout zu kriegen sein!". Wollte ich eigentlich schon länger machen, hatte allerdings angenommen, dass es wahrscheinlich ohnehin niemanden interessiert. (Sollte meine Einstellung in dieser Hinsicht wohl grundsätzlich überdenken ... oder vielleicht auch einfach nur mal mit meinem Therapeuten bequatschen ...) Gibt hier zwar auch bereits andere Shader-Mixer-Threads, aber ich gehe an so etwas generell 'etwas anders' heran und aaaußerdem ... 'will ich meinen eigenen ... mööönsch!'
*****
Am Anfang steht eine Idee ... nicht selten auch eine 'fixe' ... und der schlichte Umstand, dass sie sooo jetzt zunächst nicht wirklich umsetzbar scheint, hat bei mir gewöhnlich mitnichten zur Folge, dass ich diese verwerfe. Im Gegentum! Meine fixe Idee waren: Gradients (Farb-Verlaufs-Fähigkeit) in DAZ|Studio Shadern. Wird gewöhnlich ja über Texturmaps bewerkstelligt. Ich wollte eine Textur-freie, procedurale und generell etwas flexiblere Möglichkeit. (Könnte jetzt auch noch über das Warum? und Wieso? und die Frage, warum eine einzelne Farbe pro Kanal desöfteren nicht wirklich der Reißer ist, schwafeln, aber das schenke ich mir an dieser Stelle ...) Habe so etwas nirgendwo in den Weiten des WWW auftreiben können und deshalb begann dieses Abenteuer ...
Ich weiß zwar, dass gern propagiert wird, man solle sich zunächst mit den 'Basics' befassen, um die Grundlagen zu erlernen. Ist soweit eeeigentlich auch richtig, aber ich finde es bei so einer Herangehensweise persönlich immer uuunheimlich schwer, die Motivation zu finden. Ganz abgesehen vom 'Sinn dahinter'. Was soll ich bspw. mit einem 'reproduzierten D|S Default Shader', wenn das Original einen hervorragenden Job macht und die SM-Version nicht nur 'funktional eingeschränkter', sondern auch aus Performance-technischer Sicht die schlechtere Wahl wäre? Die 'Basics' kann man auch bei(m Versuch) der Umsetzung einer 'fixen Idee' lernen.
Allerdings sind ein paar wirkliche Grundlagen für einen halbwegs geschmeidigen Umgang mit dem Shader-Mixer tatsächlich Voraussetzung.
Auf jeden Fall muss ein Grundwissen darüber vorhanden sein, wofür einzelne Shader-Kanäle (Diffuse, Ambient, Specular, etc.) überhaupt und ganz allgemein verantwortlich sind. Ebenso werde ich hier erstmal sooo direkt nicht auf den grundlegenden Umgang mit dem Shader-Mixer-Tab eingehen. Dafür möchte ich auf die SM-bezogenen Tutorials auf shadowmap.de verweisen, die einem Einsteiger sehr schön zeigen, wie die Arbeitsfläche grundsätzlich gehändelt werden kann. Und neben ersten Erfolgserlebnissen ist das Ergebnis zudem ja auch ein funktionierendes 'Produkt' (Shader, Camera), das bereits praktisch und/oder als 'Ausgangsbasis' für weitere Experimente genutzt werden kann.
... und dann möchte ich auch noch ein bisschen 'Bettlektüre' wärmstens ans Herz legen:
zum einen das Shader Mixer Tutorial von Zigraphix auf DAZ3D (aktuell und schon seit Längerem 'für lau' - ob es so bleibt, wenn jetzt hunderte, begeisterte Leser dorthin stürmen, kann ich allerdings nicht sagen) und eine Shader Mixer Brick Reference (ebenfalls von Zigraphix), die ich allerdings lediglich als PDF Suchmaschinen-seitig im Netz gefunden habe. (Hoffe, es ist okay, wenn ich deshalb hier den direkt-Link poste.) Beide Sachen sind zwar auf DS3 gestrickt, aber ansonsten nach wie vor aktuell, wenngleich auch nicht mehr auf dem neuesten Stand. Ersteres zeigt das verfügbar-machen Textur-fähiger und Tile-barer Shader-Kanäle, sowie die Standard- Bump/ Displacement/ NormalMap -Sektion zum 'Abgucken'. Zweiteres erklärt die meisten Bricks im Einzelnen und gibt allgemeine Informationen darüber, was wo angepinnt werden kann.
Tjoa ... und dann wären da natürlich auch noch die DS3 Shader Mixer Reference im DAZ Documentation Center, das Shader Mixer Kapitel im DAZ|Studio3 Manual und vereinzelt Threads hier im Forum (so weit ich sie gerade auf dem Schirm habe), die sich z.T. und im weitesten Sinne mit Aspekten dieser Thematik befassen: Shader Mixer | Ein paar Hintergrund-Fotos | Indirektes Licht - so gehts | Shader-Nodes: Wohin mit der Translucency?
Und noch ein paar Hinweise:
DAZ|Studio bringt von Hause aus ein paar Shader-Presets und Demo-Szenen mit. Diese zu 'studieren', ist u.U. überaus erleuchtend, insbesondere, weil sie häufig auf eine einzelne Sache beschränkt sind. Komplexere Shader-Networks, die gelegentlich mal im Netz zu finden sind, erschlagen häufig allein durch ihre Komplexität. Dennoch der Tipp: wenn dir so etwas über den Weg läuft: immer 'einsammeln'! (... denn sie sind sehr rar gesät.)
Ahso ... und weil's mir in diesem Zusammenhang gerade siedend-heiß einfällt:
der Shader-Mixer nutzt beim Laden und Speichern über das integrierte File-Menü eigene Datei-Erweiterungen.
.dbm > Surface Shader (Materialien)
.dbc > Camera Shader (Cameras)
.dbl > Licht Shader (Lichter)
(Hatte mal ein paar .dbm-Dateien im Netz ausgegraben und lange Zeit keinen Schimmer, wohin damit ...)
*****
Und bitte nicht vergessen:
ich beschäftige auch erst seit ein paar Wochen damit und habe die Weisheit wahrlich nicht mit Löffeln gefressen. Bin mir häufig selbst nicht sicher, 'ob das so jetzt korrekt ist', aber mache es eben nach bestem Kenntnisstand und Bauchgefühl. Und so lange es das gewünschte Ergebnis zur Folge und D|S' #3Delight nichts zu Meckern hat, ist das für mich erstmal auch okay. Allerdings bin ich jederzeit für Verbesserungsvorschläge und Tipps mehr als zu haben!
Und bevor die Frage aufkommt: warum nicht IRAY?
Erstens: bin ich ein Opportunist ... zweitens: PBR-Engines bringen i.d.R. bereits 'von Hause aus' die meisten Sachen mit, die ich derzeit so zu verbrechen in der Lage bin; drittens: wird's in absehbarer Zeit sicherlich noch viel Zeug dafür geben ... macht imho (noch) keinen Sinn, sich jetzt an Dingen die Zähne auszubeißen, die 'auch so' zu bekommen sind oder sein werden. Bei #3Delight wird sich das sicherlich anders verhalten und nur noch wenig-bis-kein neues Zeug mehr hinzu kommen. Und viertens ... auch hier gilt: möglichst nicht Äpfel mit Birnen vermischen, denn selbst wenn beide Bereiche im Shader-Mixer unter einer Oberfläche 'vereint' sind, bleiben es zwei völlig unterschiedliche Dinge. Und niemand, der ganz bei Sinnen ist, will einen 'Zwei-Fronten-Krieg'
...
*****
Soweit zum 'Vorwort' (und als kleinen vorab-Erguss für Diejenigen, die es nicht abwarten können, meine 'Memoiren' zu lesen ). Im Anhang noch ein paar visuelle Eindrücke, die inetwa zeigen, um welcher Art Dinge es sich hier wohl im Ansatz drehen wird.
Und noch etwas, das mir am Herzen liegt:
ertappe ich jemanden dabei, dass Sachen - seien es nun Texte, Screens, Presets oder was-auch-immer - einfach hieraus kopiert und anderenorts 'veröffentlicht' werden, gibt's 'was auf die Löffel! Auszüge, Zitate usw. mit Verweis auf diesen Thread sind absolut okay. Bitte nicht falsch verstehen: weder erhebe ich den Anspruch, sonderlich kreativ zu sein oder 'spektakulär Neues' zu verbrechen, noch habe ich etwas dagegen, dass Informationen an möglichst viele Interessenten weitergegeben werden - ganz im Gegenteil! - aber ich finde, wenn jemand über so ein Thema schreibt, sollte er auch verstanden haben, über was er da so schwafelt ...
In diesem Sinne: welcome to the show!