Tiefen-ver-Materialisierung für Dummies • Grundlagen :: Shading

Es gibt 18 Antworten in diesem Thema. Der letzte Beitrag () ist von Bluepix.

  • Moinsen Render-Gemeinde! :]


    Materialien sind im 3D-Rendering-Bereich ein wichtiges Thema.

    Allerdings kann die Menge an möglichen Optionen schon schnell erschlagen. Das Ganze ist über die Jahre hin auch nicht gerade weniger geworden, da weiter-entwickelte Technologien meist auch jeweils zusätzliche Möglichkeiten eröffnen, was es - insbesondere Leuten, die noch recht neu im '3D-Geschäft' sind -schon recht schwer machen kann, einen grundlegenden Einstieg zu finden. Aber es soll ja auch fortgeschrittene Anfänger geben, die bei diesem Thema schon schnell mal kein Land mehr sehen. :ausheck


    In diesem Beitrag möchte ich nun einfach mal ganz allgemein kurz auf einige der grundlegendsten Eigenschaften eines Materials eingehen, naja .. eigentlich speziell auf Bump ('feine Oberflächenstruktur') und Specularity ('Glanzeigenschaften') und deren Zusammenspiel. Diese Sachen kann man durchaus als 'allgemeingültig' betrachten und sind völlig unabhängig davon, ob ein Bild nun mit 'nem etwas antiquierten Toaster oder einer High-End-GPU-PBR-Maschine verbrochen werden soll.



    Bump, Normal und Displacement

    Bump ist - grob betrachtet - im Material in erster Linie für zwei Dinge zuständig: a) eine feine(re) Oberflächenstruktur zu simulieren und b) darüber hinaus die Form der Glanzlichter 'aufzubrechen' (indem eine eigentlich-nicht-vorhandene 'Mikrostruktur' erzeugt wird), damit diese letztendlich natürlicher wirken. Insbesondere in Punkt a) nehmen sich Bump- und Normal(en)-Maps eigentlich nicht aaallzu viel, da sie vom Grundprinzip her auf die gleiche Weise arbeiten. Allerdings haben beide jeweils ihren speziellen Einsatzzweck, auf den ich an dieser Stelle jedoch nicht weiter eingehen möchte.


    Beide haben in Bezug auf a) aber auch einen gravierenden Nachteil: sie erzeugen lediglich die Illusion von Struktur, was jedoch sehr stark sowohl vom Blickpunkt der Kamera, als auch dem Winkel des aufschlagenden Lichts beeinflusst wird. Displacement ist in dieser Hinsicht schon ein anderes Kaliber, denn im Gegensatz zu den beiden o.g. Möglichkeiten wird hierbei die Oberflächenstruktur des Objekts nicht nur 'simuliert', sondern auch tatsächlich 'physisch' verformt. Dafür bringt es aber wiederum auch andere Nachteile mit sich (auf die ich an dieser Stelle auch nicht eingehen möchte).


    Glanzeigenschaften


    Praktisch gesehen, hat so gut wie jedes Material in der Realwelt Glanzeigenschaften. Manchmal sind sie offensichtlicher, manchmal meinen wir beinah, es mit einer rein diffusen Oberfläche zu tun zu haben. Da wir in der Computergrafik (im Gegensatz zur Realwelt) i.a.R. lediglich mit Näherungswerten arbeiten, kööönnte in manchen Fällen auch eine schlichte diffuse Surface (=Oberfläche) ausreichen. Dennoch würde ich auch in so einem Fall (vielleicht mal von'Spezialfällen' wie etwa Toon-artigen Shadern abgesehen) immer ein dezentes, sehr weit 'gestreutes' Glanzlicht hinzugeben, damit das Gesamtmaterial schöner mit der Umgebung harmoniert. Es sind recht häufig die kleinen und eigentlich nicht wirklich auf-Anhieb-wahrnehmbaren Dinge, die den Ausschlag geben, ob eine Szene nun letztendlich für unser Auge glaubhaft erscheint oder nicht.


    Doch genug der drögen Theorie! =)

    ----


    Wer an diesem Punkt vielleicht wegen der von mir verwendeten Begrifflichkeiten schon ein bisschen bedröppelt aus der Wäsche guggt, kann sich ruhig auch erstmal diesen Beitrag zu Gemüte führen, den Bluepix ein bisschen weiter unten in diesem Thread verzapft hat und dort auf ein paar noch etwas grundlegendere Dinge eingeht. Ich warte hier so lange =) ..


    ----


    An dieser Stelle möchte ich nun einfach mal an einem kurzen Beispiel zeigen, wie ich bei der Erstellung eines Basismaterials für ein beliebiges Objekt vorgehe. In dieser Hinsicht entwickeln wir wahrscheinlich alle im Laufe der Zeit so unsere eigenen Vorgehensweisen und das ist auch gut so.:] Dies ist lediglich mein - persönlicher - Weg, wie ich ihn eigentlich auch in so gut wie allen Fällen und bei den unterschiedlichen Programmen beschreite. Werkle in diesem Beispiel hauptsächlich in Blender.


    Ein 'Fertigfutter'-Poser-Prop in eine DAZ|Studio-Szene geladen ..


    .. erscheint für gewöhnlich zunächst auf ganz ähnliche Art und Weise, wie es auch bei vielen anderen importierten Objekten (.obj-Dateien bspw.) der Fall sein würde. Und würde ich bis zum bitteren Ende in diesem Programm bleiben wollen, ginge es gleich ab in den Surfaces-Tab.


    Da ich dieses Objekt aber in Blender haben möchte, schiebe ich es nun einfach mal ganz fix via teleblender³-Skript 'rüber:


    So .. da wär'n wir also. (Noch Fragen, warum ich das tue?:ausheck)

    Könnte man vielleicht sogar zur Not auch schon für die Ferne so benutzen; mir ist es allerdings zu flach und 'muffig' .. und überhaupt ..:tongue:


    In so einem Fall verwende ich für die Beleuchtung ein schlichtes SunSky-System (Sonne + Himmels-Umgebungslicht), da ich auf diese Weise recht harte Schattenwürfe habe und bei Bedarf auch eine der beiden Komponenten ohne größere Aktionen kurz ausknipsen kann, was in bestimmten Fällen wirklich praktisch ist.


    Um nun an den einzelnen Kanälen des Materials zu werkeln, gebe ich dem Diffuse-Kanal (der für die 'Bildoberfläche' zuständig ist) ein gaaanz schlichtes mittleres-Grau-Material. Dadurch lassen sich die Feinheiten beim Bearbeiten der anderen Kanäle viel besser beurteilen, da nichts durch die bunte Texturmap 'verschleiert' wird. Außerdem nehme ich mir einen Kanal nach dem anderen zunächst 'solo' vor und schalte erst später zu Testzwecken mehrere davon zusammen.


    .. und beginne beim Bump:


    "Wie Sie sehen, sehen Sie nichts." :gap

    .. was auch nicht wirklich verwundert, da die Bump-Stärke in diesem Fall beim Transfer/Import auf 0.003 (0.3%) gesetzt wurde .. und da bumpt dann natürlich auch nicht allzu viel. =)


    Generell macht es in Fällen, in denen man gerade noch keine Vorstellung davon hat, in welchen Wertebereich man letzten Endes muss, Sinn, nach dem 'Halbierungs-Prinzip' vorzugehen. Hier ist die Bumpstärke praktisch Null, also setze ich sie danach auf Maximum, um zu sehen, wie sich das auswirkt. Ist wahrscheinlich in den meisten Fällen zu viel, also gehe ich den halben Weg wieder zurück und lande bei 0.5 (50%). Ist dies zu wenig, gehe ich wieder hoch auf 0.75 und so weiter. Dieses Spielchen kann man so lange treiben, bis man da ankommt, wo man hin will.


    Mit der Zeit und ein bisschen Übung entwickelt man aber ein Gefühl dafür und so fange ich gleich bei 0.5 an und kann dann anhand des Ergebnisses auch schon ziemlich präzise den ungefähren Zielbereich abschätzen. In diesem Fall landete ich recht schnell bei 0.435


    Joa .. hat nu' schonmal 'n büsch'n Struktur. :]

    Die Bump-Stärke ist ja auch immer so ein bisschen Ansichts:DDsache und der Effekt kann zudem auch bei unterschiedlichen Objekt-zu-Kamera-Entfernungen, Lichtverhältnissen oder Beleuchtungsarten (SunSky, Meshlight, HDRi-Environment) etwas variieren, aber i.a.R. funktioniert ein unter SunSky recht ordentlich eingestelltes Bump auch bei anderen Beleuchtungsarten ganz anständig. Ich hab's im Zweifelsfall für ein Basismaterial lieber erstmal ein kleinwenig 'crispy'-er, denn Abmildern oder 'Vermatschen' geht in einer späteren Szene erfahrungsgemäß meist viiiel einfacher, als 'n-bisschen-mehr-Detail hinzuzufügen. :gap


    Alright .. next stop: Specularity!.. and here we go ..


    .. W..T..F!!:schiel

    :DD .. ja, an dieser Stelle habe ich für die Beurteilung der Glanzlichter die Umgebungsbeleuchtung (Sky) ausgeknipst und lasse nur das direktionale Licht auf die Oberfläche knallen. Außerdem habe ich den Glanzkanal nicht mittelgrau, sondern 'mittelfarbig' gemacht, weil ich es schwieriger finde, Graustufen-Glanzlichter zu beurteilen. An diesem Punkt geht es vor allem um die Größe / 'Flächigkeit' ebendieser, denn die Intensität und/oder Verteilung wird später auf anderem Wege gesteuert. Auch hier ist es wieder eine Frage des persönlichen Geschmacks und/oder des angestrebten 'visuellen Stils', welche Werte nun das schönste Ergebnis liefern. Für Objekte dieser Art würde ich die Glanzlichter normalerweise eigentlich noch etwas gestreuter einstellen, aber da ich schon eine vage Vorstellung davon habe, wohin die Reise dieses Objekts einmal gehen wird, ist es nun eben so. :]


    Die entsprechende Einstellung in den Programmen ist (Specularity-)Glossiness oder Roughness (nicht zu verwechseln mit Diffuse-Roughness!), je nachdem, mit welchem Programm man gerade werkelt. Bei Glossiness ('Glänzichkeit':gap) führen niedrige Werte zu großen, sehr weich verlaufenden Highlights, die mit steigendem Wert immer kleiner und scharfkantiger ('spitzer') werden. Bei Roughness ('Rauheit') verhält es sich genau umgekehrt. Beide Varianten nutzen auch Graustufenwerte, um die Parameter festzulegen und so können auch hier bspw. Texturmaps verwendet werden, um auf ein und der selben Fläche variable Glanzlicht-Größen zu erzeugen. Dafür ist eine ggf. vorhandene 'gloss'-Map gedacht. Die Spec-Map hat im Glossiness/Roughness-Kanal nichts zu suchen!


    Specularity-Maps sind - grob gesagt - für die Verteilung von diffusen-zu-glänzendem Material-Anteilen zuständig und gehören somit eeeigentlich im Optimalfall in den Material-Kanal, der den Mischwert zwischen Diffuse und Specularity bestimmt. Haben allerdings nicht alle Programme in dieser Form und so landet diese Textur dann dort meist entweder im Kanal für die Glanzlicht-Farbe oder -Stärke.


    In diesem Beispiel habe ich einfach mal die Spec-Map in den Farbkanal des Glanzlicht Kanals geladen. In den dunkleren Bereichen wird später hauptsächlich der diffuse Materialanteil zum Tragen kommen und je heller die Regionen hier sind, umso mehr unser gerade erstellter Glanzlicht-Kanal.


    Schauen wir uns unsere gepimpten Kanäle nun doch mal in Kombination an:


    isdochschonmaagaanichschlecht.=)

    Hier habe ich die Bump-Map auch einfach mal als Farb-Input für den Glanz-Kanal missbraucht und das einfache diffuse Grau über die Spec-Map mit dem Glanzlicht-Kanal vermischt.


    Wenn ich nun noch die Textur-Map im Diffuse-Kanal (re-)aktiviere, hat das Objekt auch wieder etwas mehr Ähnlichkeit mit dem, wo wir im Grunde mal hin wollen ..


    .. und wenn ich spaßenshalber mal die Beleuchtungsart von SunSky auf ein reines HDRi-Umgebungslicht ändere ..


    .. stelle ich fest, dass ich auch an der Bump-Stärke eigentlich nix mehr großartig ändern muss. :]


    ----

    Mist .. schon wieder ins Schwafeln gekommen :whatever..

    .. aber hoffe, dass dies vielleicht dennoch bei dem ein oder anderen dazu beitragen kann, die anfängliche Hemmschwelle im Zusammenhang mit dem pöhsen, pöhsen Material-Editor ein kleeeinwenig zu senken .. und vielleicht auch, die 'Natur' von Materialien generell zumindest ein bisschen in der Basis zu verstehen. =)


    Sso .. üüch bin dann maa wech .. :gaehn

  • KLasse Workflow, maXem 8) den ich so selber auch noch nicht auf dem Schirm hatte.

    Deine Vorgehensweise hat System, wohingegen meine eher die ich-mach-pauschal-gleich-alles-zusammen Variante ist,

    mit der ich persönlich zwar grundsätzlich zurecht komme, die jedoch für eine Material-Einsteiger weniger zielführend sein dürfte.


    Diesen Post kann ich nur jedem ans Herz legen, der den Wunsch hat sich mit Materialien zu beschäftigen.

    Für saubere Materialbearbeitung/-einstellung, brauche ich ein neutrales und natürliches Licht, egal in welchem Programm.

    Die Nummer mit dem neutralen Grau-Shader für saubere Bump Einstellung, werde ich mir merken.


    Danke :)


    PS: der Tread ist ausbaufähig. Ich hätte da auch noch einige passende Themen ;)

  • Wir könnten uns ja ggf. mal alle hinsetzen und gemeinsam an einem Tutorial-Block arbeiten.


    Kategorien z.B.:


    Beleuchtung

    - Allgemein (Image-based vs. Lichter vs. Meshlight)

    - Programmspezifisch

    -- DS

    -- Poser

    -- Blender...


    Materialien

    - Allgemein

    -- Texturchannel

    -- Glanz

    -- Höhe

    -- Lichtbrechung

    -- Subsurface...

    - Programmspezifisch

    -- DS

    -- Poser...


    Mesh

    - Allgemein

    -- Subdivision und Smoothing

    -- Geometrie-Editierung

    -- Modelling

    - Programmspezifisch

    -- Blender

    -- Cinema

    -- DS...


    usw.


    (Bevor sich hier irgendein Fantasy-Wesen auf den Schlips getreten fühlt: nein, die Programme sind weder vollständig, noch in irgendeiner "dies ist das Beste"-Reihenfolge, sondern sind autorinnenspezifisch das, was ihr als erstes eingefallen ist.)


    PS: maXem : sehr schöner Thread und tolle Aufarbeitung des Props! Haste mal den Link zu dem Inn? Es kommt mir bekannt vor, aber ich komme nicht drauf, wo es das gab.

  • Wir könnten uns ja ggf. mal alle hinsetzen und gemeinsam an einem Tutorial-Block arbeiten.

    ...


    Gute Idee Lessa aber warum verkomplizieren? Einfach machen ;) so wie maXem es hier vorführt.

    Programm Diskussionen wird es (hoffentlich) nicht geben, weil diese Grundlagen (s. Topic) programmunabhängig Gültigkeit haben.


  • PS: der Tread ist ausbaufähig. Ich hätte da auch noch einige passende Themen ;)

    Nur zu! :].. tu' dir keinen Zwang an. :DD

    .. und bin auch gern zur Stelle, um die obligatorischen 'Ja, aber..'-se einzuwerfen. :gap


    Haste mal den Link zu dem Inn? Es kommt mir bekannt vor, aber ich komme nicht drauf, wo es das gab.

    Schau' bei R'osity mal bei Dante78. =)

    (Aber zumindest ein Poser/Firefly- oder D|S/3DL-Nutzer wird mit diesem Prop nicht glücklich! Wie's in den PBR-Engines der beiden Programme aussieht, weiß ich allerdings nicht.)

  • ... aber warum verkomplizieren? Einfach machen ;) ..

    Jap, sehe ich genau so. =)

    Da muss imho nun nicht wirklich irgendein ehrgeiziges 'Projekt' her.


    Während ich mich mit diesem Prop 'rumgeschlagen habe, kam mir einfach in den Sinn, dass es wohl ohnehin mal wieder an der Zeit wäre, hier auch etwas Konstruktives beizutragen und nicht nur an den Machenschaften anderer User herumzumäkeln. :tongue: Da ließ ich spontan eben die Testrender mit durchlaufen. Und da so ein Thread imho ganz praktisch sein kann, um ggf. auch näher auf Fragen o.Ä. aus anderen Themen einzugehen (weil sie dort vielleicht OT wären), habbich mich einfach mal hinreißen lassen :DD..



    .. Mühe geben muß.

    Nix muss! =)

  • Deshalb ja die Aufsplittung in Allgemein und Programmspezifisch. Die Grundlagen sind in allen Programmen gleich, aber die Einstellmöglichkeiten unterscheiden sich doch sehr - allein schon zwischen Node-basiert wie in Blender zu Channelorientiert in DS. Mit anderen Worten, es ist sowohl interessant zu lernen, was allgemein wichtig ist, als auch, wie ich es in meinem Programm einbinde und welche Optionen mein Programm darüber hinaus noch bietet (metallicity z.B. im IRAY-Shader... Top Coat... Fresnel... wasauchimmer).


    Und warum zusammensetzen? Weil dann nach einem gemeinsamen Konzept gearbeitet werden kann, das einheitliche Lehrstrukturen verfolgen oder - je nachdem, wie viele Leute sich hier mit was beteiliegen würden - unterschiedliche Lehrkonzepte bereitstellen kann (z.B. Video vs. PDF; Struktur z.B. "Grundlagen - wo finde ich es in [Programm] - was muss ich tun - Übungsaufgabe").

  • Wenn man den 'Kern der Sache' verstanden und in gewissem Umfang verinnerlicht hat, ist es piepegal, mit welchem Programm letztendlich gearbeitet wird, weil sich diese allgemeingültigen Geschichten ohne Weiteres übertragen lassen .. natürlich immer im Rahmen der technischen Grenzen des entsprechenden Programms, aber an diese Grenzen muss man auch erstmal stoßen. Darüber hinaus gibt es bekanntermaßen meist auch mehrere Wege - und seien es nun Umwege - um ans gewünschte Ziel zu kommen. Und nicht zu vergessen: was für den einen funktioniert, muss beim nächsten nicht zwangsläufig auch entsprechend hinhauen.


    Gerade beim Thema 'Materialien', für die es IMHO ohnehin nicht wirklich ein echtes Patentrezept gibt, weil sie sehr Programm-, Objekt- und Szenen-abhängig sind .. oder auch vom 'persönlichen Stil' des Anwenders .. ist eine "So baust du dir den super-duper-mega-Shader"-Anleitung letzten Endes ohnehin wenig zielführend. Das ist imho eher 'Instant-Einklick-Denke' und hat recht wenig mit 'kreativ' oder 'Verständnis' zu tun .. be flexible!

  • Schönes Tut!

    Wenn ich Bump- oder Glanzeinstellungen tunen will, schmeiße ich auch immer alle anderen Maps raus. Dann sieht man wirklich viel leichter, was man tut.

    Gerade bei Glanz hat es sich (für mich) auch bewährt, eine eher dunkle Grundfarbe zu wählen, da sieht man den Glanz dann besser.

    Und wenn ich an Bump arbeite, und das Material soll später glänzend werden, dann lege ich auch gleich ein bisschen Glanzlicht auf das Testmaterial drauf. Da kommen so manche Kanten und Dellen noch stärker heraus.

  • Wenn man den 'Kern der Sache' verstanden und in gewissem Umfang verinnerlicht hat, ist es piepegal, mit welchem Programm letztendlich gearbeitet wird, ...


    Diese Aussage möchte ich unterstreichen und mit Folgendem zum Grundverständnis derjenigen beitragen, denen hier bereits aus begrifflichem Missverstehen die Ohren schlackern. Gehört inhaltlich also noch vor maXems Beitrag ganz oben.





    Shading... Texture-Maps... Node Editor... Shader Kanäle... Material... ?? :wacko:


    Material

    Man könnte sagen, Material ist Licht. Und um diese seltsame Behauptung nachzuvollziehen hilft vielleicht DIESER kurze Beitrag.


    Wie auch immer, das "Material" einer Oberfläche bestimmt jedenfalls deren Aussehen. In der realen Welt ebenso wie in unsererm 3D Raum. Das könnte eine simple Farbe sein (Diffuse / Colour) oder aber ein Material mit hochkomplexen, also vielfältigen "Reflektionseigenschaften" wie z.B. die Haut eines Menschen, bestimmte Textilien, Minerale oder anderes schwieriges Zeug.


    Map

    Map = Karte. Der Vergleich hinkt sicherlich, aber eine (reale) Landkarte zeigt uns einen Weg von A nach B.

    Eine "Texture-Map" sagt dem Licht wie es auszusehen hat. Je komplexer die Farbstruktur der Map umso komplexer das reflektierte Licht,

    was uns erkennen lässt, dass diese Oberfläche hier nicht monoton braun ist (Diffuse / Colour) , sondern aus Holz (Diffuse / Texture Image).




    Solche Texturen sind meistens Bilder. Weshalb wir diese auch in Programmen wie Photoshop oder AffinityPhoto bearbeiten können. Diese Maps werden im 3D Programm (wie eine Folienlackierung beim Auto) auf die 3D Objektoberfläche gebappt und verleihen dem ursprünglich nackten Objekt mit dem default Shader grau ein anderes "Aussehen". So eine Texture Map, kann auch eine Bump Map sein, auf die maXem bei seinem Shading Thema noch genauer eingehen will. ...Shader?! Shading?!

    Shader

    Ein Begriff der in unserer 3D Welt häufig pauschal mit Material oder Textur gleichgesetzt wird. Richtiger ist vielleicht die Begriff Definition „Material Oberflächeneigenschaft“. Außerdem hat der „Shader“ seinen Ursprung in der Hardware Welt. Geometrie-Shader, Vertex-Shader, Tesselations-Shader, usw. sind Hardware Bestandteile unserer Grafikarten. Da kann ich, oder sollte besser, nichts verstellen. Auch im Zusammenhang mit Polygon-Normalen und deren Winkelveränderung, spricht man von „Shading“, was meiner Meinung nach eher in den 3D Modellierbereich fällt, statt in unser Thema hier, der einfachen Materialeinstellung, also die Bearbeitung/Einstellung von Texturen / Shadern im Render View. Eine simple Farbe oder ein einfaches Holz Bild ist für mich nur eine Textur. Aktiviere ich aber weitere Einstellungskanäle fängt bei mir der "Shader" an. ...Kanäle?!



    Shader Kanäle

    Ein Shader (Material) verfügt in der Regel über mehrere Kanäle. Heißt im Klartext, das Material kann sich aus mehreren verschiedenen "Oberflächeneigenschaften" zusammensetzen. Max hat oben an der Hütte bereits drei Eigenschaften ein und derselben Oberfläche vorgestellt (Diffuse/Bump/Specular). Es können also mehr Kanäle in einem Shader vorhanden sein. Und jeden einzelnen kann ich unabhängig justieren oder auch abschalten, ohne dass die anderen Kanäle angerührt werden, wie von maXem vorgeführt. Das Abschalten des Diffuse Kanals, also der Farben, wie er es oben vorgemacht hat, erleichtert das Einstellen gewollter Unebenheiten (Bump) und/oder Lichtreflexionen (Specular).


    An der Forderseite dieses Würfels habe ich jetzt alle Shader Kanäle abgeschaltet, wie rechts in der Liste zu sehen. Alles offline.

    Folglich ist die Oberfläche nur noch default grau. Warum, siehe der oben verlinkte Licht Beitrag.







    Wenn ein Kanal aktiv ist, kann er weitere Unter-Kanäle beinhalten. Der Diffuse Kanal z.B. kann einen Bildkanal (RGB Image) einen Intensitätskanal (Power), Farbkanal (Colour), Gamma Kanal und weitere beinhalten. Hier im nun aktivierten Diffuse Kanal rechts zu sehen.




    Indem ich eine Textur, also hier das „Holz Bild“ (Texture Image) lade, wird der Diffuse Kanal automatisch aktiviert, inklusive weiterer Unterkanäle, die ich hier auch verstellen musste (z.B. Colour und Gamma) damit die Textur optisch halbwegs zum Boden passt. Weil ich Spielkind nicht die Original Textur des Holzbodens geladen habe (was ja einfach wäre) sondern spaßeshalber die Renderkamera auf den Boden gerichtet, mit dem Windows Sniping Tool kurzerhand ein halbwegs passendes Quadrat ausgeschnitten, abgespeichert und dann dieses Bildchen in den Diffuse Kanal der Würfel Frontseite geladen habe. Umständlich, mit versauten Tonwerten (deswegen die nötigen Anpassung) aber halt lustiger.




    Fortgeschrittene können Oberflächen auch leuchten lassen. Denn „Emission“ ist auch nur eine von vielen Oberflächeneigenschaft. Die Oberfläche wird selbst zu einer aktive Lichtquelle, ein Licht Emitter. Sieht dann so aus…







    "Licht aus, Spot an!" so to say.




    Dieses Material (Shader) hat jetzt auch die „Eigenschaft“ Licht auszusenden.

    Die Materialoberflächeneigenschaft ist neben „Diffuse“ (Farbe/Holz Bild) auch „Licht Emission“.




    Shader Bearbeitung / Liste


    Jedes Material fähige 3D Programm verfügt über einen Bereich (Shader Tree / Properties, Surfaces usw.) in dem ich die Shader manipulieren oder auch erschaffen kann. Herkömmlich werden die Shader und ihre Kanäle in einer simplen Abfolge von oben nach unten dargestelt , was bei komplexen Shadern (z.B. Skin Shader) mit vielen Kanälen auch mal sehr unübersichtlich werden kann und einem wilde rauf und runter Scrollerei abverlangt. Ein Anfänger findet hier kaum einen Einstieg ohne ruck zuck abszusaufen und den Spaß zu verlieren.


    Schön jedoch, dass sich in (fast) jedem 3D Programm zurechtfindet, wer einmal die Grundzüge der Materialbearbeitung verstanden hat.


    Unterschiedliche Betitelungen mit weitgehend ähnlichen Inhalten.

    Markiert sind nur die jeweiligen Diffuse Kanäle. Da unterschiedliche Materialien, differiert auch die Shader Komplexität.



    DS 4.10 / Surfaces








    Octane 3 / Materials







    Modo12 / Shader Tree Properties






    Blender 2.8 / Properties






    Anderer Titel, anderes Design und mehr oder weniger übersichtlich. Die Inhalte und Möglichkeiten hingegen sind (auch mal mehr oder weniger) dieselben. Ich muss nur wissen wo die Materialbearbeitung stattfindet, was kein Problem ist wer halbwegs regelmäßig seine Programme auch benutzt.





    Shader Bearbeitung / Node Editor

    Effektiver und Einsteiger freundlicher sind die sogenannten Node Editoren (Knoten- / Kanal Bearbeiter) auch wenn es eigentlich nur eine andere grafische Darstellung ein und derselben Sache ist. Eben der Shader Kanäle. Insofern ersetzt der Editor also die Kanal Listen nicht sondern ergänzt diese. Excel Anwender erinnert das an ein Organigramm, also eine grafische Netzwerkdarstellung und so funktioniert ein Node Editor auch in etwa.


    Wenn Ihr rechts die Listendarstellung um 5 Seiten nach unten erweitert, hättet Ihr den gesamten Shader der Iris einer Genesis 8 vor Euch.

    Der Node Editor hingegen zeigt das wunderbar übersichtlich und vor allem, auch die Verknüpfungen der Shader untereinander, was in einer Liste nicht darzustellen ist.





    Node Editoren machen Shader Bearbeitung übersichtlicher, für den Anfänger intuitiver und den Profi schlichtweg schneller. Auch der Laie erkennt in einem Node Editor eher die Zusammenhänge zwischen einzelnen Shader Kanälen oder auch komplexer Shader Strukturen. Klicken wir einen Shader Node (Knoten) an, reduziert sich die in ihrer Gesamtheit schier endlose Listendarstellung automatisch auf die nur in diesem Kanal möglichen Bearbeitungsparameter, was die Sache sehr überschaubar macht.


    Darüber hinaus können wir auch hier Kanäle abschalten (einfach die Drähte abknipsen), hinzufügen, kopieren, löschen, umgruppieren, an und abkuppeln usw. usw. Es gibt Kollegen hier im Forum die stricken sich in einem Node-Editor Ihre Shader komplett selber. Ein guter Node Editor kombiniert mit Echtzeit Rendering ist für so jemanden das perfekte Werkzeug. You get what you see. In Programmen wie Modo, Octane und inzwischen auch Blender eine normale Sache.



    Soviel von mir als Ergänzung zum Thema Material und dessen Bearbeitung.


    Aber nochmal, weil es elementar ist, stimmt das in der Szene verwendete Licht nicht, klappt’s auch nicht mit dem „Shading“.


    Mein Tip:


    1. Licht verstehen

    2. Shader (Material) verstehen


    Vorzugsweise in dieser Reihenfolge.


    Diese beiden Dinge verstanden, spart enorm viel Arbeit und macht um Klassen schönere Render.

    Wobei der Begriff „Schön“ natürlich relativ zu sehen ist und subjektiv verstanden wird :S

  • Es gibt ja einen solchen Node-Editor auch für DS (Shader Mixer, glaub ich). Mein großes Problem ist, dass ich oft nicht dahinter steige, was die einzelne Funktion / Arithmetik /... komisches Kästchen, das ich reinlade... eigentlich macht. Ich verbinde Punkte auf gut Glück und kriegs doch nicht gebacken.

  • Kann ich Dir leider nichts zu sagen, Lessa :/ weil ich iRay in DS sehr selten nutze und mir dort ein "iRay Node Editor" auch nicht entgegengesprungen ist.

    Ich bin mir ziehmlich sicher das iRay an sich auch einen richtigen Editor hat aber möglicherweise durch die Zwangsintegrationin DS, weil halt kostenlos angeboten, reichlich Federn hat lassen müssen.

  • Hey Bluepix .. schön ausgeführt. =)

    Ich wollte da oben ja nicht mit zu viel dröger Theorie erschlagen, aber habe nun gleich mal auf deinen Beitrag verlinkt, falls jemand doch 'bedürftig' sein sollte. :schiel

    DS 4.10 / Surfaces

    Überläufer!.. schamloser! :motz

    :DD



    Lessa

    Naja, wir hatten ja schonmal mit dieser Shader-Mixer-Erkundungs-Geschichte angefangen, aber dann kam IRAY ins Rennen, so dass erstmal nicht wirklich Bedarf an sowas bestand. Aber man kööönnte die alten Threads ggf. ja auch ruhig mal wieder ausbuddeln, selbst, wenn ich praktisch eigentlich nichts mehr in D|S'ns Nodesystem mache ..

  • ...

    Überläufer!.. schamloser! :motz

    :DD

    !! Off Topic !!


    Hi maXem, darauf habe ich mich grade erst mal weglachen müssen :kaputtlachen: Auf den Poden mit dem Picht!:angryfire


    Ernsthaft, esha hat mich bei unserer letzten Diskussion im DS Forum zu dem Thema neugierig gemacht, hab mal recherchiert und siehe da, DAZ scheint auf die

    Verweigerungshaltung vieler Kunden (wie maXem, Bluepix und viele andere hier) reagiert zu haben. Manueller Download und installation ohne Verbindung kein Problem

    und für Dich wahrscheinlich ebenfalls noch wichtiger, Integration der eigenen Library absolut fehlerfrei. Folge einfach Deinem Assistenten :]


    Und Dein Einstiegspost hier war genau richtig. Aber weil ich diesen Beitrag so gut finde, wollte ich die ganz Frischen auch mitnehmen, bzw. hier hineinführen. Vielleicht hilft's ja dem ein oder anderen.


    !! Ende off Topic !!

  • Es scheint zumindest die Bricks für den IRAY Shader zu geben... oder wie interpretiere ich das?


    Da sind so dermaßen viele Funktionen und Optionen, dass ich null mehr kapiere... und die Anschlüsse? C = Color, F = Function, B = Boolean oder was?

    Boolean = Ja / Nein, soviel ist klar. Aber C? Kann ich da auch n Bild reinpacken? Oder brauch ich dann wieder nen speziellen Brick? Wie sieht das mit Function aus? Einfach nur Zahlenwerte oder wie?

    Ich find Node Editoren alles andere als intuitiv...



  • Noch eine kleine Ergänzung zu Bluepix' sehr schönen Erklärungen:


    In DS haben die Begriffe "Shader" und "Material" noch zusätzliche Bedeutungen:

    "Shader" bzw. "Shader Presets" lassen sich auf jede gewählte Oberfläche anwenden, da es universelle Materialeinstellungen sind. Wenn in DS-Shadern Maps verwendet werden, sind sie in der Regel nahtlos kachelbar.

    Ein "Material" bzw. "Material Preset" funktioniert immer nur bei Oberflächen mit einem bestimmten Namen und ist daher immer für ein bestimmtes Objekt gedacht. Die Maps in Materialpresets sind meistens nicht nahtlos kachelbar, da sie normalerweise eng mit der UVMap des Objektes verknüpft sind. Selbst wenn der Name der Surface zufällig identisch ist, passt das Materialpreset für ein Objekt meistens nicht auf ein anderes Objekt.


    Beispiel:

    Ein Shader für einen Steinboden kann auf jede beliebige Oberfläche aufgetragen werden. Dafür sieht er vermutlich recht eintönig aus, sofern es kein spezieller Shader ist, der die Geometrie des Objekts berücksichtigt und in den Ecken Moos oder Schmutz hinzufügt.

    Ein Materialpreset für einen Steinboden für ein bestimmtes Gebäude ist für eben diese eine Bodenfläche gemacht. Die Maps haben Moos und Schmutz an genau den richtigen Stellen aufgemalt, die für dieses Gebäude passen. Wenn man diese Map auf die Bodenfläche eines anderen Gebäudes übertragen würde, hätte man das Moos an den falschen Stellen.


    ----


    Zu den Nodes in DS: Es gibt den Shader Mixer und den Shader Builder. Der Shader Builder dient zur Entwicklung völlig neuer Shader, da sollte man schon einiges von Shadern und deren Programmierung verstehen. Ich kenne ehrlich gesagt niemanden, der sich damit auskennt.

    Der Shader Mixer dient dazu, bereits vorhandene Bricks (so heißen in DS die Shader Nodes) neu zu kombinieren. Es gibt eine fast endlose Liste von Bricks, aber keine Dokumentation zu deren Verwendung. Man kann aber den Iray Uber Shader einlesen, untersuchen und verändern.


    Hier mal ein Screenshot von meinem prozeduralen Gem-Shader. Ich habe die Struktur des Uber-Shaders übernommen und alle Map-Nodes durch prozedurale Nodes ersetzt. Hat mich viele graue Haare gekostet *g*



  • Noch eine kleine Ergänzung zu Bluepix' sehr schönen Erklärungen:....


    ....Hier mal ein Screenshot von meinem prozeduralen Gem-Shader. Ich habe die Struktur des Uber-Shaders übernommen und alle Map-Nodes durch prozedurale Nodes ersetzt. Hat mich viele graue Haare gekostet *g*

    Danke esha :) 


    ...und ach Du Schei...! =O

    Definitiv kein intuitiver Node Editor. Hab ihn mir mal angeschaut. Schon mal an alle: Finger davon lassen. Bringe einen Post dazu im DS Forum, weil hier offtopic.