3Delight Surface and Lighting Thread

1262729313252

Comments

  • wowiewowie Posts: 2,029
    edited December 2014


    Probably in RSL only. The standalone 3Delight, if you choose to install the Maya-specific files as well, gives you the source for 3DelightMaterial that features coating with meaningful light absorption (the code itself isn't that complex there), and also cites the following paper:
    http://publik.tuwien.ac.at/files/PubDat_182027.pdf

    Yeah, I thought so too.

    Here's another interesting read - adding PBR to realtime graphics: http://www.frostbite.com/2014/11/moving-frostbite-to-pbr/
    I dare say that Dragon Age: Inquisition and Battlefield Hardline produces some of the most advanced realtime CG to date. Of course, there's also Call of Duty: Advanced Warfare.

    Lots of good stuff there which should provide good insights whether you are a shader writer or an artist (or both). I also love the fact that they're using Mistuba and Maxwell, not Luxrender for reference purposes. So much for the claim 'the benchmark of physical accuracy in the 3D world.'. :)

    Post edited by wowie on
  • Mustakettu85Mustakettu85 Posts: 2,933
    edited December 1969

    wowie said:

    Here's another interesting read - adding PBR to realtime graphics: http://www.frostbite.com/2014/11/moving-frostbite-to-pbr/
    I dare say that Dragon Age: Inquisition and Battlefield Hardline produces some of the most advanced realtime CG to date. Of course, there's also Call of Duty: Advanced Warfare.

    Lots of good stuff there which should provide good insights whether you are a shader writer or an artist (or both). I also love the fact that they're using Mistuba and Maxwell, not Luxrender for reference purposes. So much for the claim 'the benchmark of physical accuracy in the 3D world.'. :)

    Very interesting, thanks!

    To be honest, I don't remember reading any paper with LuxRender being used as a "benchmark". Have you?

  • ZarconDeeGrissomZarconDeeGrissom Posts: 5,414
    edited December 1969

    I've only read most of the threads of his (and many others) when looking for answers. I noticed the "Stick a fork in me" thread a while back, tho just recently read it, when the get well Christmas card thread appeared.

    So I have not had a chat with Wandering Cowboy directly anytime, that I can recall. Still the concern is there for a member of the community that has done allot.

  • wowiewowie Posts: 2,029
    edited December 2014


    Very interesting, thanks!

    To be honest, I don't remember reading any paper with LuxRender being used as a "benchmark". Have you?

    The only occasion where Luxrender is associated with the word 'benchmark' is when measuring graphics card capabilities in compute, due to the OpenCL nature of SLG (now LuxCore). To be honest, the actual Luxrender devs never made that claim. :)

    Found this too:
    https://renderman.pixar.com/resources/RPS_17/newPhotonMapping.html

    I wish the photon mapper in DS was usable. Having refractive and reflective caustics would be awesome. I also found references to adaptive caustic mapping: http://web.cs.wpi.edu/~emmanuel/courses/cs563/S12/slides/cs563_frederik_adaptive_caustics_wk10_p1.pdf

    Original presentation (I think): http://cwyman.appspot.com/supplement/adaptCaustics/egCaustics09.pdf
    I wonder if the same approach can be used to general photon mapping too? Mostly to speed up the photon mapper and final gather.

    Post edited by wowie on
  • Mustakettu85Mustakettu85 Posts: 2,933
    edited December 1969

    wowie said:

    Found this too:
    https://renderman.pixar.com/resources/RPS_17/newPhotonMapping.html

    I wish the photon mapper in DS was usable. Having refractive and reflective caustics would be awesome. I also found references to adaptive caustic mapping: http://web.cs.wpi.edu/~emmanuel/courses/cs563/S12/slides/cs563_frederik_adaptive_caustics_wk10_p1.pdf

    Original presentation (I think): http://cwyman.appspot.com/supplement/adaptCaustics/egCaustics09.pdf
    I wonder if the same approach can be used to general photon mapping too? Mostly to speed up the photon mapper and final gather.

    That adaptive mapping looks to be a neat idea. It's the sort of thing that seems to only make sense as part of the renderer or at least a proper precompiled DLL, not shader code, though =(

    The shader mixer caustics camera is way too unpredictable, that's true. I confess I just can't bring myself to start writing anything caustics-related in RSL (although just making use of the built-in functions shouldn't be that hard). Maybe later next year, when I'm done with things I have in mind now. If the devs don't come up with anything by that time.

    PS - good news: I now have a "yes" from the support re:my scripts and stuff, so as soon as I'm done with the documentation, the kit will be posted on ShareCG - hopefully in a few weeks time, if nothing distracts me any further than "real life" usually does.

    -----------------

    I've only read most of the threads of his (and many others) when looking for answers. I noticed the "Stick a fork in me" thread a while back, tho just recently read it, when the get well Christmas card thread appeared.

    So I have not had a chat with Wandering Cowboy directly anytime, that I can recall. Still the concern is there for a member of the community that has done allot.

    There's one thing I dislike about busy forums in general, it's how hard it is not to miss the threads that might be important to you personally. Wancow is a great guy, so let´s hope he'll get back to posting here some day and you'll get a chance of chatting with him directly.

  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 1969

    wowie said:
    Some additional reading material.
    http://www.cg.tuwien.ac.at/research/publications/2007/weidlich_2007_almfs/weidlich_2007_almfs-paper.pdf

    Any idea how we can model or hack interreflection between layers?

    Also:
    http://www.photometricviewer.com/

    A freeware IES light viewer. Any takers on converting various IES profile into light presets?


    Too much to read and understand. Too much to do. And only 24 hours a day.

    I am much more on Python, C++ and Java stuff theses days but doing a non plausible material with interreflection should be easy (or so I hope). A good one is another story. I may give a try after I finish the update of my Fedora OS. Probably will have a bit of time at the end of Januar But I will certainly be more excited by the non commercial Pixar's Renderman 19 which should be out at that time if it isn't delayed

    About Photon mapping, I believe 3delight's engine is comparable to Pixar's (the doc is of 2012). You have to set it up right but it is easier to say than to do inside DS

  • SzarkSzark Posts: 10,634
    edited December 1969

    Ok Uber Surface 2 (more info here http://www.daz3d.com/forums/discussion/2765/P570/#732246 ) on Genesis.

    Ok let me have it, good and the bad

    Troubled.jpg
    2000 x 1125 - 811K
  • wowiewowie Posts: 2,029
    edited December 2014

    Szark said:
    Ok Uber Surface 2 (more info here http://www.daz3d.com/forums/discussion/2765/P570/#732246 ) on Genesis.

    Ok let me have it, good and the bad

    Image wise, it will probably 'pop' more with more contrast and color saturation. You can do that in postwork of course, but I think it will be better to play with the lights instead. Shader wise, I would say the skin looks 'too' dry, I'm guessing because of too powerful bump settings.

    Here's mine, the preset if from my Photo Studio Kit 2 set. Just three lights - two distant and one UE2 - AO soft shadows. I did tweak the SSS by changing the scale to 0.2, backscatter to 2 and shading rate to 2. I find it the best compromise between my SSS settings and mustakettu85's more physically accurate settings.

    Amy.jpg
    866 x 1125 - 577K
    Post edited by wowie on
  • SzarkSzark Posts: 10,634
    edited December 1969

    Thanks for the candid feedback...I love that.

    Colour saturation yes I didn't do anything with that side and I should have. I normally increase saturation by +10. Doh!
    Dry skin was intentional as everyone thinks everyone has oily skin, I don't have oily skin and these settings reflect my type of skin, plus the lighting is soft.
    The bump is that strong to be honest. But the GI might be picking up the bump better.

    Contrast is a good one as I do need to work on that, nicely picked up there wowie.

  • wowiewowie Posts: 2,029
    edited December 2014

    Szark said:
    Thanks for the candid feedback...I love that.

    Colour saturation yes I didn't do anything with that side and I should have. I normally increase saturation by +10. Doh!
    Dry skin was intentional as everyone thinks everyone has oily skin, I don't have oily skin and these settings reflect my type of skin, plus the lighting is soft.
    The bump is that strong to be honest. But the GI might be picking up the bump better.

    Contrast is a good one as I do need to work on that, nicely picked up there wowie.

    Always happy to provide feedback. :)

    For saturation, aim for the same color or as close as possible to the original texture - how it looks when viewed in an image viewer without gamma correction. If you can maintain color saturation at gamma 2.2 with a raw render, the resulting image shouldn't need a lot of postwork to bring out colors.

    I would suggest playing with the fresnel some more. Dry skin still have some bit of oilyness and at certain angles it is more noticeable. Even with a soft light setup, there's always hints of oilyness here and there. For instance, in my render that will be the tip and ridge of the nose. The lower eyelids generally have some too. Admittedly, the lips should've been wet rather than oily, but I like to have the same settings for skin and lips.

    Remember that AoA's Adv Light and UE are diffuse only. Skin details are mostly specular and not diffuse. Those lights won't give you those extra skin details.To get that, you have to rely on spot, point or directional lights. If you setup your fresnel and specular just right, you will get very close results to a glossiness map.

    Post edited by wowie on
  • SzarkSzark Posts: 10,634
    edited December 1969

    That a good measure wowie looking at the texture maps, nice idea thanks. Yeah Fresnel is ok but I have increased the spec a bit. Getting good spec with this light rig isn't an issue it was my settings. :)

    AOA Ambient I believe when it came isn't just Diffuse lighting which was one of the major draws for me. Using UE2 GI was overkill as I removed it added another spot and pretty much got the same result, lighting wise and at a fraction of the render time.

  • wowiewowie Posts: 2,029
    edited December 1969

    Szark said:

    AOA Ambient I believe when it came isn't just Diffuse lighting which was one of the major draws for me. Using UE2 GI was overkill as I removed it added another spot and pretty much got the same result, lighting wise and at a fraction of the render time.

    I thought so too until I started using it. The specular emitted by the Adv Ambient is generally incorrect. I wrote about that several pages back.

    Here's the link to the post. It's actually talking about 3delight's own EnvLight, but I think it also applies to AoA's Adv Ambient Light.
    http://www.daz3d.com/forums/discussion/21611/P615/#657298

  • SzarkSzark Posts: 10,634
    edited December 1969

    well then that puts that to bed, thanks for that.

  • wowiewowie Posts: 2,029
    edited December 1969

    Did some quick test today. I forgot to backup the modified shader lights when updating to DS 4.7. Out of curiousity, I rendered with the default ds light and the modified shader lights. The modified shader lights is still faster, but not by much (6 min 56 sec compared to 7 min 40 sec).

    AoA's Adv Distant Light seems to be slower than those two. Probably because I was using quite high soft shadow settings.

  • SzarkSzark Posts: 10,634
    edited December 1969

    After taking your comments on board this is what I came up with, no postwork.

    On the subject of SSS Scale I was educated by The Sea that SSS scale should be set to around 0.10 but all the documentation Omni and AOA say SSS Scale is down to how big or thick an object is. So I tried one render (low res) at 4.00 and one at 0.10 and I noticed a big difference in how shadows, especially the nostrils darkened up. |Even the lips changed colour and weren't as intense as this image is.

    AmyFinalUber_copy.jpg
    2000 x 1125 - 841K
  • wowiewowie Posts: 2,029
    edited December 2014

    Szark said:
    After taking your comments on board this is what I came up with, no postwork.

    On the subject of SSS Scale I was educated by The Sea that SSS scale should be set to around 0.10 but all the documentation Omni and AOA say SSS Scale is down to how big or thick an object is. So I tried one render (low res) at 4.00 and one at 0.10 and I noticed a big difference in how shadows, especially the nostrils darkened up. |Even the lips changed colour and weren't as intense as this image is.

    At SSS scale 4.0, a lot more light travels into the object. More than 1, tend to give you more of that wax like look.

    Also remember that diffuse roughness (the 1st diffuse) will play a major role too. I tend to use a roughness of 1 for the 1st diffuse and 3 for the 2nd diffuse. Since SSS is only applied to the 1st diffuse, the 2nd diffuse should be more Lambert. Backscatter (with US2 precomputed SSS) can add more SSS on outer edges to simulate more light traveling into the skin on outer edges when used sparingly..

    When balanced just right, you get more SSS on areas very near the outer edges but a more pronounced non-SSS diffuse on areas directly facing the light and still maintain darkness in areas like the nostrils.

    You will have to use the diffuse map in both diffuse channels, but that's easy to do.

    Post edited by wowie on
  • SzarkSzark Posts: 10,634
    edited December 1969

    man I must read this thread more. Interesting wowie. I used a value of 4 and I don't get the "not so real" wax look. Personally many images I see are too wax looking to be realistic. I will give the second Diffuse channel a try as see what comes of it.

  • Mustakettu85Mustakettu85 Posts: 2,933
    edited December 1969

    wowie said:

    AoA's Adv Distant Light seems to be slower than those two. Probably because I was using quite high soft shadow settings.

    Mentally "reverse engineering" it, I believe that AoA's lights use transmission() for shadows and trace from the surface to the light. While it in theory might allow for some interesting effects when coupled with the whole flagging business (which, again, I think I finally understood, but it all happens inside the shader, so it's less efficient than just using RiIlluminate calls) - I am not sure it's as efficient as tracing the "normal" way, for scenes that do not use flagging. The 3Delight docs only say tracing from the surface to the light usually gives better performance for area lights. Speed gains or losses with delta lights aren't mentioned.

  • wowiewowie Posts: 2,029
    edited December 2014

    Szark said:
    man I must read this thread more. Interesting wowie. I used a value of 4 and I don't get the "not so real" wax look. Personally many images I see are too wax looking to be realistic. I will give the second Diffuse channel a try as see what comes of it.

    The wax 'look' will rear its head once the total SSS contribution (SSS strength and percentage of diffuse) is high enough. That generally means a scenario where the 1st diffuse channel strength is between 60 to 80% (assuming diffuse color is high enough). If you remember, my earliest attempts at skin was very waxy looking. SInce balancing diffuse and SSS is damn hard to do, more so if you want to have settings that translate well from texture to texture, I resorted to adding back the lost diffuse details (due to the use of low diffuse strength and SSS) by using the 2nd diffuse channel.

    You do have to change the color for the 2nd channel to accomodate the SSS contribution - usually using a somewhat bright cyan will do (low red, somewhat high green and blue). You still need some red value, since general luminance will go down if the red value is too low.

    So the setup is something like a neutral grey 1st diffuse channel, an SSS setting that will generally be slightly reddish/yellowish, and a 2nd diffuse with a cyan tint.


    Mentally "reverse engineering" it, I believe that AoA's lights use transmission() for shadows and trace from the surface to the light. While it in theory might allow for some interesting effects when coupled with the whole flagging business (which, again, I think I finally understood, but it all happens inside the shader, so it's less efficient than just using RiIlluminate calls) - I am not sure it's as efficient as tracing the "normal" way, for scenes that do not use flagging. The 3Delight docs only say tracing from the surface to the light usually gives better performance for area lights. Speed gains or losses with delta lights aren't mentioned.

    Well, only he will know for sure. We can only guess without seeing the actual shader code. The flagging thing have its uses, but again what we really need is a good bounce light solution. Makes me really admire omnifreaker though - after all this time, UE2 is probably still the most advanced lights available for DS. The same with US2, I simply couldn't work without the fresnel+specular anymore.

    Post edited by wowie on
  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    edited December 2014

    Szark said:
    After taking your comments on board this is what I came up with, no postwork.

    On the subject of SSS Scale I was educated by The Sea that SSS scale should be set to around 0.10 but all the documentation Omni and AOA say SSS Scale is down to how big or thick an object is. So I tried one render (low res) at 4.00 and one at 0.10 and I noticed a big difference in how shadows, especially the nostrils darkened up. |Even the lips changed colour and weren't as intense as this image is.

    The bigger the scale the more the SSS effect will be diffused and the light will "penetrate" farther. On the contrary, with a small scale the effect is more visible because the light doesn't scatter very deep and the SSS color is more concentrated on the surface of the object.
    That is not really about the thickness of the object. That is about how deep the SSS should scatter. There is no absolute rule

    wowie said:

    AoA's Adv Distant Light seems to be slower than those two. Probably because I was using quite high soft shadow settings.

    Mentally "reverse engineering" it, I believe that AoA's lights use transmission() for shadows and trace from the surface to the light. While it in theory might allow for some interesting effects when coupled with the whole flagging business (which, again, I think I finally understood, but it all happens inside the shader, so it's less efficient than just using RiIlluminate calls) - I am not sure it's as efficient as tracing the "normal" way, for scenes that do not use flagging. The 3Delight docs only say tracing from the surface to the light usually gives better performance for area lights. Speed gains or losses with delta lights aren't mentioned.

    Not sure. From what I've read from his docs and the parameters I've seen, I rather think it's a simple occlusion() call added to the flagging stuff. AOA just exposed some the rest of the occlusion parameters that you don't see in UE. And instead of making it like an ambiant/IBL light, he made a point light. Then he derived the principle to get the other he made (spot and distant)

    Well, only he will know for sure. We can only guess without seeing the actual shader code. The flagging thing have its uses, but again what we really need is a good bounce light solution. Makes me really admire omnifreaker though - after all this time, UE2 is probably still the most advanced lights available for DS. The same with US2, I simply couldn't work without the fresnel+specular anymore.

    Agree with that. But it seems most people prefer speed to quality or that UE and US may be too complicated for a beginner as there are lots of concepts you need to understand in order to use them properly

    Post edited by Takeo.Kensei on
  • wowiewowie Posts: 2,029
    edited December 2014


    Agree with that. But it seems most people prefer speed to quality or that UE and US may be too complicated for a beginner as there are lots of concepts you need to understand in order to use them properly

    I would chalk it up to him not providing enough documentation on the features. :)

    Performance wise, the render times I'm getting now and way back when I started is generally the same. Roughly 2 minutes for a character render and up to 10 to 12 minutes for a whole scene with occlusion and reflection. I never used the indirect light or bounceGI mode since both takes way too long. Kettu's script made bounceGI bareable and I think omnifreaker should really update UE2 with the parameters the script exposed (ray caching). Well, come to think of it, I'd like him to update US2 too.

    Going forward, I think IPR will allow people to grasp what all the features do and how to best use them. At least outside of SSS, since the IPR will not update the render due to the nature of the implementation (precomputed rather than fully raytraced).

    Here's two render illustrating what can you do with differing roughness. They're both using the settings I wrote earlier, but without SSS. The 1st diffuse channel is set to 60% strength at 180,170,160, while the 2nd diffuse is 40% at 80,160,160.. Notice there's more color variance across the surface with the differing roughness render. You do need to use more than just an ambient light for diffuse though (at least if you're not using an IBL light). I do wish there was some backscatter with the velvet, might be a good hack for simulating SSS without actually doing it.

    DifferingRoughness.jpg
    727 x 945 - 160K
    SameRoughness.jpg
    727 x 945 - 158K
    Post edited by wowie on
  • SzarkSzark Posts: 10,634
    edited December 1969

    Szark said:
    After taking your comments on board this is what I came up with, no postwork.

    On the subject of SSS Scale I was educated by The Sea that SSS scale should be set to around 0.10 but all the documentation Omni and AOA say SSS Scale is down to how big or thick an object is. So I tried one render (low res) at 4.00 and one at 0.10 and I noticed a big difference in how shadows, especially the nostrils darkened up. |Even the lips changed colour and weren't as intense as this image is.

    The bigger the scale the more the SSS effect will be diffused and the light will "penetrate" farther. On the contrary, with a small scale the effect is more visible because the light doesn't scatter very deep and the SSS color is more concentrated on the surface of the object.
    That is not really about the thickness of the object. That is about how deep the SSS should scatter. There is no absolute rule

    Ok that is cool to know that there isn't a rule as such. I do get it and did I just wondered why AOA and US are using a scale of 4-5 for human sized objects. I am going to have a play following wowies advice and see what happens.


    Agree with that. But it seems most people prefer speed to quality or that UE and US may be too complicated for a beginner as there are lots of concepts you need to understand in order to use them properly

    and this goes for many other things like this very shader (US2). If you aren't fluent in geek or don't have a scientific brain or knowledge most of the info out there is hard to grasp. For me it has been an uphill struggle trying to learn some of the advanced terminology over the past 5 years and it isn't getting any easier as the more you dig the more it takes to grasp. I have to resort to learning from other more these days, from the ones that do have a better understanding.

  • wowiewowie Posts: 2,029
    edited December 2014

    Szark said:
    and this goes for many other things like this very shader (US2). If you aren't fluent in geek or don't have a scientific brain or knowledge most of the info out there is hard to grasp. For me it has been an uphill struggle trying to learn some of the advanced terminology over the past 5 years and it isn't getting any easier as the more you dig the more it takes to grasp. I have to resort to learning from other more these days, from the ones that do have a better understanding.

    To be truly honest, we're all still learning. :)

    A lot of the concepts held 5 years ago have been proven incorrect or at the very least, incomplete. And if I remember correctly, 5 years ago we're still using DS3 that lacks any gamma correction for textures. So even if you have US2 and a good knowledge/understanding of lighting, you wouldn't get consistent results unless you manually adjust the gamma for your textures.

    Although the groundwork for physically based rendering, or physically plausible shading, have been established, most people still rely on the Lambertian-Blinn-Phong model because it was very 'cheap' to do. Even ray tracing was generally avoided and you make do with hacks like shadow and environment maps.

    If I look at the paper I linked in previous posts, even the Oren Nayar and Disney's BSDF are not without faults. And those are relevant only for surfaces. Light transport is a whole other topic. But I think every renderer is moving to ray or path tracing for GI.

    The biggest lag in DS (not 3delight) is that we simply don't have a good GI solution. By good, I mean comparable to the various solution out for 3delight for Maya/Softimage. The renderer is capable, but we're lacking the tools to tell the renderer what to do.

    Post edited by wowie on
  • wowiewowie Posts: 2,029
    edited December 1969

    Slightly off topic:
    My Lumina Hair MATs is out, free for all.
    http://www.daz3d.com/lumina-hair-mats

    Merry Christmas and Happy New year. Plus, let's all hope wancow get well soon.

  • Kevin SandersonKevin Sanderson Posts: 1,643
    edited December 1969

    Thank you, Wowie! I look forward to trying it out when I get a chance.

    Merry Christmas and Happy New Year!

    And a wish, too, for Wancow to be in good shape soon!

  • StrixowlStrixowl Posts: 301
    edited December 1969

    wowie said:
    Slightly off topic:
    My Lumina Hair MATs is out, free for all.
    http://www.daz3d.com/lumina-hair-mats

    Merry Christmas and Happy New year. Plus, let's all hope wancow get well soon.

    Hi wowie,
    Your freebie looks great and very useable. But I can't get anything except a flat color where my hair prop use to be.
    Little instruction please. I know I must be doing something wrong. :-)

  • SaiyanessSaiyaness Posts: 715
    edited December 1969

    Yes, I can't get it work either, no matter what I tweak. :p

  • wowiewowie Posts: 2,029
    edited December 1969

    Strixowl said:

    Hi wowie,
    Your freebie looks great and very useable. But I can't get anything except a flat color where my hair prop use to be.
    Little instruction please. I know I must be doing something wrong. :-)

    Yes, I can't get it work either, no matter what I tweak. :p

    You will need the latest UberSurface2 shader to use it.

  • SaiyanessSaiyaness Posts: 715
    edited December 1969

    wowie said:
    You will need the latest UberSurface2 shader to use it.

    Is it included in 4.7? If it's in the Gen2 Essentials packages, I'll cry. :p

    Hmm, I'll see whether if just downloading the Default Lights and Shaders reinstalls Uber. I'll have a look! :)

  • fixmypcmikefixmypcmike Posts: 19,682
    edited December 1969

    Saiyaness said:
    wowie said:
    You will need the latest UberSurface2 shader to use it.

    Is it included in 4.7? If it's in the Gen2 Essentials packages, I'll cry. :p

    Hmm, I'll see whether if just downloading the Default Lights and Shaders reinstalls Uber. I'll have a look! :)

    No, UberSurface2 isn't part of the included lights and shaders, unfortunately.

Sign In or Register to comment.