Page 2 of 2 FirstFirst 12
Results 11 to 12 of 12

Thread: Question About anisotropic_vdf and "Material volume"

  1. #11
    Join Date
    Jan 2007
    Posts
    314

    Default

    Quote Originally Posted by waitinfutuer19 View Post
    I planed to make another topic, but it is still things about iray volume. Then hope modelator still check this question

    After kind lecture of JanJordan's , I could understand mostly about iray volume absorption.and customized formula meaning.
    but I can not still understand clear, about "scattering" , and the scattering coefficient .

    I know I could use same " -log(e,color)/distance" which iray developer seems recommend for user as easy set volume parameter,
    and daz uber iray use same formula with "chromatic mode", to get "scattering coefficient" of the material volume
    as same as "absorption coefficient" value.

    the problem is, even though I can set scattering coefficient value by customized parameter,
    I still can not imagine well how actually it work as visible effect. about absorption, it seems easy for me.

    to think simple, I concenterate about values of "distance", and "color" after all ,these two user parameter values decide "scattering coefficient" of volume. as uiform value.
    then I hope to know, how we can think, "color" and "distance" effect for final render color?
    Yes, scattering is harder to visualize. Starting without any reflection is a goad idea.
    Best is to start with "grey" scattering. Also use specular transmission to see clearly what happens (for skin i would use diffuse transmission though)

    If you use the formula:

    scattering_coefficient = math::log(scattering) / - distance,

    then scattering means "how much light is passing and not scattered after traveling distance through the volume". i.e. .1 means 10% if the light are not scattered and .9 means 90% of the light is scattered. The closer to 0 the more scattering
    You probably want the inverse so, you might want to use

    scattering_coefficient = math::log(1.- scattering) / - distance,

    scattering then means "how much light *is* scattered after traveling distance through the volume" or simplet density of the material

    For skin you might want to think in terms of "scatter radius". In reality there is no radius where scattering ends, but you could say "scatter radius at which 99.9% of the light is scattered":

    scattering_coefficient = math::log(.001) / - scatter_radius,

    with this you get the following behavior:
    1m cube, scatter radius 1cm, 10cm and 50cm
    Click image for larger version. 

Name:	distance.png 
Views:	10 
Size:	793.3 KB 
ID:	10017

    now what do we get if scattering coefficient is different for RG and B?
    if stay with the "scatter radius" semantic and mak float3 and separately set the distances for r,g,b.

    scattering_coefficient = math::log(.001) / - color(scatter_radius),

    Then say red scatters 40cm, green 15cm and red 10c, we get:

    Essentially the average color stays the same, but you see that light "going through" shifts to red and light just scattered back becomes more blue/green.


    Click image for larger version. 

Name:	cube2.png 
Views:	11 
Size:	846.7 KB 
ID:	10016
    Attached Thumbnails Attached Thumbnails distance.png  
    Last edited by JanJordan; January 16th, 2018 at 13:23.

  2. #12
    Join Date
    Oct 2015
    Posts
    16

    Default

    Thanks jordan , you helped me a lot again to get clear thinking about scattering of MDL .

    And,,
    scattering_coefficient = math::log(1.- scattering) / - distance,
    So I feel at least I did not go wrong direction, because I had tried, this formula (minus color from 1, then it may show, non scattered color,,I suppose) with compare log graphs to clear see the remined color of the distance. and I felt, if I could get clear imagiination
    I may only need to imagine " scattering" first, then inverse color, for shader whihc use default log formula.

    now what do we get if scattering coefficient is different for RG and B?
    if stay with the "scatter radius" semantic and mak float3 and separately set the distances for r,g,b.

    scattering_coefficient = math::log(.001) / - color(scatter_radius),

    Then say red scatters 40cm, green 15cm and red 10c, we get:
    wao!!, I have never thought, "distance" can imagine as "scatter_radius" .. I simply felt and believed , it need to be as one "float" value.

    I have used other shader language SSS, (cycles,,) then I can imagine about "scatter_radius", but I have felt dificulity to adopt it
    for iray scattering of volume formula...Because, I tried to adopt scatter radius(RGB),
    for the "log (SSS color(RGB))". but could not think it is reasonable.

    Though at current, I need more test to clear understand how I can adopt it for default formula.
    because most of shader which offered from vendors of my iray arpication,, (So I can only use daz studio for iray,,^^
    may not use user parameter "scatter distance" as "3 component values", but I felt it can convert as "color" value
    of " log (color(RGB))" , which shader offer us as user parameter.

    anyway your suggested, thinking way" must help me a lot, to imagine Scatter effect untill I set each parameter.
    Thanks, I test and see as same as you suggested, then I can keep going for next section of MDL .

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •