Home Technical Talk

What does hair spec shift do and why

HapZungLam2
polycounter lvl 7
Offline / Send Message
HapZungLam2 polycounter lvl 7
A lot of hair shader in most  of the render engine has an attribute for shifting the specular.
eg: https://support.solidangle.com/display/NodeRef/hair#hair-spec_shift



Why do we want to shift the hotspot of the hair away compare with other materials.  I thought the angle of reflection always have the same relation with the angle of incidence.  Does hair fiber reacts differently?  And how much of an angle are we talking about.

Replies

  • pior
    Options
    Offline / Send Message
    pior grand marshal polycounter
    Think of each individual hair fiber as a tiny cylinder (which it is really !). This explains why the highlight behaves very differently on hair strands compared to a regular smooth surface - at least as far as I understand it.
  • HapZungLam2
    Options
    Offline / Send Message
    HapZungLam2 polycounter lvl 7
    Brushed metal doesn't shift. It stretches but not shift
  • ActionDawg
    Options
    Offline / Send Message
    ActionDawg greentooth
    My assumption is that this is a non-physically based adjustment you can make to tweak the look artistically, which is why they suggest not pushing it past 10 degrees (cause at that point its probably obvious in some shots). Realistically and mathematically incident angle is correct.
  • HapZungLam2
    Options
    Offline / Send Message
    HapZungLam2 polycounter lvl 7
    I found this 
    http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2012/10/Scheuermann_HairSketchSlides.pdf

    I think that is the reason.  The 2 levels of specular doesn't make one broader and one sharper. Is actually 2 totall different reflect direction.  It has to work with  primary and 2ndary  reflection. One shift towards the root one shift towards the tip.  Thorsten Scheuerermann mentioned it in siggraph over 13 years ago!

    ps.  According to the presentation title. Basically its current work flow for using hair cards for games.  90% of the game are still using this method.  By the end of the pdf listed pros and cons.  13 years later we are still facing the same cons..... 
  • ActionDawg
    Options
    Offline / Send Message
    ActionDawg greentooth
    @HapZungLam2 The examples from the OP are not using cards. It is not a realtime renderer. If you read through the documentation, it also notes two specular lobes are used in the shader just like the realtime technique you've shared discusses. The shifting feature in Arnold is different. The second lobe is already shifted correctly, they're just opening up controls so artists can non-physically tweak both lobes to refine the look.
  • HapZungLam2
    Options
    Offline / Send Message
    HapZungLam2 polycounter lvl 7
    Let me clarify.  Realistic Hair reflection are in Marschner-style (primary spec shift away from root.  2ndary spec shift towards to the root relative to its primary spec shift).  However in Arnold hair shader has already embedded with the shift and its shift relation.  But custom spec shift parameter are added for user specified.
    Is that right?
  • ActionDawg
    Options
    Offline / Send Message
    ActionDawg greentooth
    Yep that's what I was getting at. :) The realistic shift of the 2nd lobe is already present, they just expose parameters for you to tweak the shift independently on both lobes if you wanted to.
Sign In or Register to comment.