List of Shader Mixer Tutorials and Recipes WIP please be patient as I update the list...thanks!

1235

Comments

  • Group 1 works out which areas need the scaled map applied, group 2 then does the application, the output of the last Mix brick should be the final desired output to plug in to (in this case) anywhere the alpha is needed.

  • Is it possible at all (if so, what am I doing wrong?) to make one network with threads for multiple render engines?  A single shader with threads optimized for Luxus, 3Delight, and Iray, together-- or even just 3Delight and Iray?

  • 3Delight and iray should be possible, though I'm afraid I haven't tried it. I don't know about Luxus as a unique shader though - you would, at least, want the Eilir plugin to add Shader Mixer support.

  • mjc1016mjc1016 Posts: 15,001

    Is it possible at all (if so, what am I doing wrong?) to make one network with threads for multiple render engines?  A single shader with threads optimized for Luxus, 3Delight, and Iray, together-- or even just 3Delight and Iray?

    The Luxus examples that are included are both Luxus/3DL, so it should be possible.

  • Then again, the new MDL-compatible Shader Mixer has nodes that list as RSL and MDL, and the Luxus nodes (via Eluxir plug-in) have apparently totally-incompatible variable types, but are labeled by ShaderMixer as RSL.

    Sticking just to the RSL, MDL, and RSL/MDL nodes, I got sampler renders from the 3Delight/Renderman chain but when I switched to Iray, the MDL nodes rendered blank.

  • 3Delight and iray should be possible, though I'm afraid I haven't tried it. I don't know about Luxus as a unique shader though - you would, at least, want the Eilir plugin to add Shader Mixer support.

    Eilir was an old Java6 plug-out for DS2 (it doesn't work in later Java versions, I've found).  But yes, I've got the Eluxir plug-in.  I just haven't been able to splice a Luxus tree into the base 3Delight/Iray tree.  Yet.

  • Okay, I've tested a proof-of-concept shader with independent RSL & MDL trees at the same time:  they both worked, and all I had to do was switch renderers.

    Does anyone know what nodes to use for raytracing effects (reflect/refract/fresnel) in Iray trees?

  • mjc1016mjc1016 Posts: 15,001

    Okay, I've tested a proof-of-concept shader with independent RSL & MDL trees at the same time:  they both worked, and all I had to do was switch renderers.

    Does anyone know what nodes to use for raytracing effects (reflect/refract/fresnel) in Iray trees?

    I think that stuff is hard coded into Iray itself...

  • hphoenixhphoenix Posts: 1,335

    Okay, I've tested a proof-of-concept shader with independent RSL & MDL trees at the same time:  they both worked, and all I had to do was switch renderers.

    Does anyone know what nodes to use for raytracing effects (reflect/refract/fresnel) in Iray trees?

    Fresnel is a layering block in MDL.  Can't remember the exact name off-hand, though.

    Reflection and refraction are directly handled within the main specular and transparency portions.  Ray-tracing is automatic (though in Iray it is done via beam tracing, I believe).

     

  • Eustace ScrubbEustace Scrubb Posts: 2,698
    edited March 2016

    The following is from a thread in another part of the fora:  the user was having difficulty with the newly bilingual Shader Mixer system.

    Plugging in an RSL "Mix" brick into an MDL surface.

    Notice the bottom of each node:  it will say Language: RSL or Language:  MDL, RSL or Language: MDL.  MDL is for Iray.  RSL is for 3Delight.  Those which list both can generally connect to either (all of the Eluxir/Luxus nodes say RSL), but you're trying to connect an RSL node output to an MDL input.  Now, you can set up a bilingual shader, but it's tricky to do more than the basics, from what I've seen of it so far.  But you cannot have pure MDL upstream of pure RSL, or vise versa.

    Many times, a function from one node that doesn't work in a given scenario may be replicated (even improved upon!) by the use of a comparable node network that does the same thing:  MDL does not have (I looked hard, but didn't see it anyway) a node to split colors into RGB channels.  So I set up a (complicated) stack that first subtracted pure primaries to reduce the input color to a single channel, then, turned the color to a float for the channel value.  For a "Layer Mix", I think one would need to add Alpha-% of the Layer input to (100 - Alpha)-% of the Base input.  For other arithmetic functions, "Layer [Function]" would be (Base [Function] Alpha-% of Layer), as my first suggestion.

    Post edited by Chohole on
  • Eustace ScrubbEustace Scrubb Posts: 2,698
    edited October 2016

    The following node tree will, when substituted for the regular tiler brick, allow the user to both tile and rotate seamless textures across any surface.  3DL/RSL only, this version.

    Node Tree for seamlessly rotating tiles.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Thanks to Zigraphix for the original rotation calculations, as found in the excellent Shade Mixer Tutorial I in the store. I've included the Custom Brick (Brick Group) of this algorithm at https://www.dropbox.com/s/39uyzh9ulultrd2/Rotator%202016.dcb?dl=0

    (Note that the Image and Surface nodes are not included.)

    Rotation Tiler.png
    1167 x 786 - 105K
    Post edited by Eustace Scrubb on
  • Complete noob regarding the shader mixer but I think I need to learn it now. 
    I have an poser file who uses layered images like in the layered image editor, however the bottom ground layer is tiled, then you have the top image with the road who is not. 
    Now had the layered image editor supported tiling this had not been an problem,
    The shader mixer looks totally overwhelming, I'm just after an default 3Delight shader but with this mixed tiling for diffuse color, bump and displacement
    Any tutorials who can point me in the right direction  

  • If you are using the default Daz Shader you can import the material (from the Shader Mixer pane's own File menu) and then give the two maps different Tiler bricks. There are some oddities that may need tidying up, depending on which properties are used in the default shader, but it's easier than starting from scratch.

  • If you are using the default Daz Shader you can import the material (from the Shader Mixer pane's own File menu) and then give the two maps different Tiler bricks. There are some oddities that may need tidying up, depending on which properties are used in the default shader, but it's easier than starting from scratch.

    Thank it gave me something to start with :)
    Even better my test looks like working.
     

  • Does anybody know if there is a way to get the Iray sun position in the Shader Mixer? Thanks for any hint.

  • Is there an edge blend function for MDL in the shader mixed, like we have for RSL?

  • Likely impossible, unless we use a Fresnel cheat.  MDL, I'm assured, is explicitly camera-independent and so functions like the edge-blending or Normal/Camera-based outlines (the usual type in 3DL "toon" renders) cannot actually be accomplished.

  • algovincianalgovincian Posts: 2,610

    Does anybody know if there is a way to get the Iray sun position in the Shader Mixer? Thanks for any hint.

    Scripting that sets a custom value in the material before render time? In the past, that is how I've made shaders aware of other objects in a scene.

    - Greg

  • Does anybody know if there is a way to get the Iray sun position in the Shader Mixer? Thanks for any hint.

    Scripting that sets a custom value in the material before render time? In the past, that is how I've made shaders aware of other objects in a scene.

    - Greg

    It'd be more likely, I think, setting up certain parameters of the shader to respond to the sun angle.  MDL is a very different beast from RSL.

  • algovincianalgovincian Posts: 2,610

    I thought AM was looking to find out the sun angle, not respond to it. I don't think it's exposed, which is why I thought it would have to be obtained via script before rendering started.

    - Greg

  • I thought AM was looking to find out the sun angle, not respond to it. I don't think it's exposed, which is why I thought it would have to be obtained via script before rendering started.

    - Greg

    Exactly, I'm trying to get the sun position vector, but I think I found a way to do it reading render settings and calculating it.

  • One would have to get the sun angle, however, as a mathematical value, in order for the shader's algorithm to "respond to" (i. e. make any use of) it at all.

  • mjc1016mjc1016 Posts: 15,001

    My question...how often is Sun/Sky actually used?

    I think most folks use HDRIs...

  • Hi there just wondering if there is some thing like a contaner brick?

    As in you have a really complex shader mix and youu want to mix it with another so you put the first in a "box", hook the box to one input of a mix node and your other shader to the other using a mask to define where each shows up on the model?

  • You can group bricks - select them all in the main panel and right-click.

  • mjc1016 said:

    My question...how often is Sun/Sky actually used?

    I think most folks use HDRIs...

    I use the sun setting, myself.  That was one thing I really liked about the old free version of Terragen:  setting up the sun by day, date, and coordinates.

  • PendraiaPendraia Posts: 3,598

    Sorry I missed all this...I stopped getting notifications. Thanks to Richard, Eustace and MJC1016 for helping everyone out! 

     

  • Eustace ScrubbEustace Scrubb Posts: 2,698

    Hi there just wondering if there is some thing like a contaner brick?

    As in you have a really complex shader mix and youu want to mix it with another so you put the first in a "box", hook the box to one input of a mix node and your other shader to the other using a mask to define where each shows up on the model?

     

    You can group bricks - select them all in the main panel and right-click.

    With only a few exceptions, I've saved almost every one of these algorithms--- at least the functional ones, as well as a few on the experimental side--- as "custom bricks" (brick groups).  It means one doesn't need to rebuild the whole thing from scratch each time.

  • Eustace ScrubbEustace Scrubb Posts: 2,698

    Good to have you back, @pendraia!

  • PendraiaPendraia Posts: 3,598

    : ) I just wish I had more time I do want to finish off setting up a proper wiki for this...and I want to play with the mdl's and find out what they can do.

Sign In or Register to comment.