Strand based hair. It aint easy

2»

Comments

  • LinwellyLinwelly Posts: 5,948

    lilweep said:

    Linwelly said:

    my trouble with self made SBH is that the way I safe it it doesn't follow movement when applied before moving the figure or item in place ande pose

    Likely I'm missing some crucial step here but that annoyed me so I only use it in rare cases where I don't need to move anything after creation

    Easy fix. If you load an SBH into scene, change 'fit to' to the figure or haircap.  Then you have to toggle the Apply Transformations button.

    Also keep the SBH unparented. 

     oh I never thought about that toggle apply transformation, I guess that was what busted it, thanks a lot

  • UncannyValetUncannyValet Posts: 213
    edited June 2023

    I have been experimenting with the Chiang Hair BSDF shader in Shader Mixer, using it on some hairs I had created in the SBH Editor.

    I cannot seem to mix hair shaders in order to control the root and tip separately. The root and tip shader bricks are rendering as expected whenever they are plugged directly into the final MDL Surface brick.  However, if i mix the the root and tip shaders (1 and 2 in attached image) through the Normalized surface mix brick, the resulting material just renders black. 

    I should note, i also tried mixing with the Clamped Mix brick, and the result was the same.

    Don't suppose anyone is good with Shader Mixer and can figure out how to create shader with control over root and tip variables?

    I attached the shader set up i put together.

     

    Edit: Sorry, removed the preliminary draft version of shader. My final version can be found online.

    Chiangi.jpg
    3731 x 1552 - 496K
    Post edited by UncannyValet on
  • takezo_3001takezo_3001 Posts: 1,987
    edited May 2023

    My issue is that they're functionally scalp caps as they don't move, and if you have longer hair with your character having more dynamic poses that doesn't include just standing there, they are 100% impractical, particulary for animators, the fact that we're locked out of even DForcing it makes this even more so, unless of course I'm incorrect and you can DForce them, but as far as I know you cannot unless you're a PA.

    Post edited by takezo_3001 on
  • WendyLuvsCatzWendyLuvsCatz Posts: 38,239

    takezo_3001 said:

    My issue is that they're functionally scalp caps as they don't move, and if you have longer hair with your character having more dynamic poses that doesn't include just standing there, they are 100% impractical, particulary for animators, the fact that we're locked out of even DForcing it makes this even more so, unless of course I'm incorrect and you can DForce them, but as far as I know you cannot unless you're a PA.

    yes you are correct and why more people are not complaining 

    we who do animations are a tiny minority 

    the PAs all just say you can style your own for free in the Strandbased editor and it will update for your still image angry 99% of them don't do animated renders either

    I just use that occasionally to do furs on props (and animals if short) and updos but those themselves hard to style, 

  • nonesuch00nonesuch00 Posts: 18,142

    UncannyValet said:

    I have been experimenting with the Chiangi Hair BSDF shader in Shader Mixer, using it on some hairs I had created in the SBH Editor.

    I cannot seem to mix hair shaders in order to control the root and tip separately. The root and tip shader bricks are rendering as expected whenever they are plugged directly into the final MDL Surface brick.  However, if i mix the the root and tip shaders (1 and 2 in attached image) through the Normalized surface mix brick, the resulting material just renders black. 

    I should note, i also tried mixing with the Clamped Mix brick, and the result was the same.

    Don't suppose anyone is good with Shader Mixer and can figure out how to create shader with control over root and tip variables?

    I attached the shader set up i put together.

    Maybe @OSO3D? He knows shaders for SBH as he made those humanoid tigers in Genesis 8 with the SBH / dForce Hair that is colored like stripey tiger fur.

  • UncannyValetUncannyValet Posts: 213
    edited May 2023

    Still could not figure out Root and Tip control.

    Anyway, I tried using the Omnihair implementation of the Disney/Chiang et al model instead of using the daz MDL implementation.  In this shader, much like the blender one, color can be parameterized using the melanin and eumelanin concentrations and ratio. To that end, Omnihair MDL has some color presets that have been built into the Shader Preset itself using melanin parameters.

    Even without separate Root and Tip control, i think the transmission through the strands looks a lot more realistic compared to Blended Dual Lobe for iray curves.  You could still texture from Root to Tip with Omnihair if you wanted, but I'd rather use the texture to make each fiber a different color rather than using root to tip UV orientation.

    (The hairs used in the attached images are just hairstyles I made using SBH Editor)

    OmnihairPresets.JPG
    289 x 344 - 30K
    ChiangvsDualLobe.jpg
    3847 x 2500 - 801K
    OmniHairIOR.jpg
    2500 x 1667 - 207K
    Post edited by UncannyValet on
  • chevybabe25chevybabe25 Posts: 1,260

    Hmm while the omni shader does look much better, it appears as though you have some kind of translucency in the hair strands?   Dual lobe also has some kind of translucency in the shader but not in your image. Are you using hair curves in both images?

  • UncannyValetUncannyValet Posts: 213
    edited May 2023

    chevybabe25 said:

    Hmm while the omni shader does look much better, it appears as though you have some kind of translucency in the hair strands?  

    I believe the halo of translucency in the hairs with the Omnihair shader is due to the hairs being heavily backlit. I think you can expect to see this effect in real hairs.

    Or maybe i misunderstood what you are saying.

    Dual lobe also has some kind of translucency in the shader but not in your image. Are you using hair curves in both images?

    The hairs are iray curves in both images

    I can try to do some more testing of blended dual lobe shader on SBH Iray curves, but my experience so far has been that the shader loses some properties when rendering iray curves.  

    Post edited by UncannyValet on
  • chevybabe25chevybabe25 Posts: 1,260

    Well Im curious, because I was told the curves are not geometry and therefore couldn't have the translucency, opacity etc.  But if it's the shader, well that poses some more questioning.

     

  • UncannyValetUncannyValet Posts: 213
    edited May 2023

    The omniverse omnihair MDL brick comes with a socket for opacity (i didn't test it in Daz yet though so not sure if this works).  From memory, I do not think Daz Studio's version, 'fiber_chiang_hair_fur.mdl' has this opacity socket.

    As for the transparency effects, this seems to be the result of some complicated mathematical approximation of the shader that is beyond my understanding.

    Some reference material

    Post edited by UncannyValet on
  • chevybabe25chevybabe25 Posts: 1,260

    Ive been playing with the fiber_chiang_hair_fur most of the day today.   It does some really cool stuff, but I unfortunately cant get enough variation from strand to strand, sigh. I got root to tip working on it, but image maps at this point are a no go :(

     

  • UncannyValetUncannyValet Posts: 213
    edited May 2023

    When I add image maps to the color slots they seem to work okay, using either of the Omnihair.mdl and the fiber_chiang_hair_fur.mdl

    On my shaders I have the texture coordinate mapping set up just like the Blended Dual Lobe one, i.e., such that the map determines color of each strand, but strand color is uniform along the length of strand root-to-tip.

    I avoid using the diffuse overlay color because it dries out the hair but does seem to give a bit more control on the resulting color than the base color slots.

    With the OmniHair, non-zero melanin/eumelanin values interact with the hair color to darken and tint it, and in both OmniHair and the Daz one, the colors seem to render incredibly bright so may need to be darkened slightly.

    Attached images are using attached map and hozirontal/vertical tiles set to 1.

    8dcfd7efbeb09775739a780ae43df99b40cfb46f.jpg
    1023 x 1023 - 220K
    ColorChiangHair.JPG
    1894 x 1151 - 347K
    ColorOmniHair.JPG
    1395 x 1226 - 237K
    Texturemapping.JPG
    688 x 692 - 99K
    Post edited by UncannyValet on
  • chevybabe25chevybabe25 Posts: 1,260

    It has to be how i set up root to tip then. I did just a basic hookup, without referring to Daz's. When i have some time, I'll try your suggestions and see.  

     

    Where is the Omni hair located? Was that something you downloaded?

  • UncannyValetUncannyValet Posts: 213
    edited May 2023

    Since I am no shader mixer expert, I had set up my shader by just copying most of the Blended Dual Lobe shader.  I think the shader preset .duf file i uploaded earlier in the thread has the same structure as the one im currently using.

    To get the omnihair brick, I just took the OmniHairBase.mdl from the Omniverse Create app.  If you download and open Omniverse Create, and go to Create>Materials>Omnihair, then on the right-hand sider under Outputs, you can find the drive location for this MDL and others.  It should be like:

    C:\Users\[username]\AppData\Local\ov\pkg\create-2022.3.3\kit\mdl\core

    The OmniHairBase.mdl seems to import a few other .mdl files from other folders in that \core directory, so you will need to add a few paths to the directory manager in Shader Mixer so that the OmniHairBase.mdl can load properly.  Besides the OmniHairBase.mdl, i notice there are two others, omnihair and omnihairpresets which I havent looked into much, but I do notice they have much more sockets on the shader brick compared to OmniHairBase, so may offer some more solutions.

    Anyway, I personally wasnt able to get Opacity nor Emission properties of the OmniHairBase MDL to work in render. 

    Post edited by UncannyValet on
  • UncannyValetUncannyValet Posts: 213

    I haven't had much of a chance to play around with the shader since my previous post, and by virtue of that still don't quite understand how to get it to look the way i want, but I still really like the effect of this shader even in its rudimentary form.

     

    ChiangMDLShaderTest.jpg
    2359 x 1920 - 684K
  • chevybabe25chevybabe25 Posts: 1,260

    Which one are you using for these?

  • UncannyValetUncannyValet Posts: 213
    edited June 2023

    chevybabe25 said:

    Which one are you using for these?

    Just the Daz Studio mdl.

    Attached is the one I used here.  It's a bit of a mess in shader mixer since there are a bunch of vestigial bricks left over from when I was trying to control Root and Tip independently.

     

    Edit: Sorry, removed the attachment as was draft version. My final version can be found online.

    Post edited by UncannyValet on
  • chevybabe25chevybabe25 Posts: 1,260

    when i have some time, ill take a look at it. you have gotten some nice shine out of it.

  • UncannyValetUncannyValet Posts: 213

    I did some experiments to check how the texture mapping and color was working.

    For the Blended Dual Lobe shader, the mapping is just as per the UV of the scalp/haircap (by default) but seems to be quite different in that shader preset i attached above.

    ChiangMDLShaderTestTextureUV.jpg
    2900 x 2705 - 987K
Sign In or Register to comment.