The Official aweSurface Test Track

1363739414266

Comments

  • khorneV2khorneV2 Posts: 146

    yes

    Just a little something I started working on...

    image

     

  • wowiewowie Posts: 2,029

    Sorry I haven't posted for so long. Troubleshooting took a lot longer than I thought. Basically, I had to revert to the 1.2 build to track the bugs that I'm seeing. Very happy to say, I've sorted most of the bugs I've seen and performance is still good. Noise should not be noticeable anymore, regardless of irradiance/subsurface samples used and whether you're using area lights or just HDRI on the environment sphere.

    The next build is a major step forward under the hood. There's still some stuff that needs to be worked out though.

     

  • Sven DullahSven Dullah Posts: 7,621
    edited February 2020
    wowie said:

    Sorry I haven't posted for so long. Troubleshooting took a lot longer than I thought. Basically, I had to revert to the 1.2 build to track the bugs that I'm seeing. Very happy to say, I've sorted most of the bugs I've seen and performance is still good. Noise should not be noticeable anymore, regardless of irradiance/subsurface samples used and whether you're using area lights or just HDRI on the environment sphere.

    The next build is a major step forward under the hood. There's still some stuff that needs to be worked out though.

     

    No worries wowie, good to hear from you! Hope the new year has started out well (fixing bugs is always a nice thing)! I've been busy dealing with real life for a change;) Very much looking forward to trying the newest build!!

    Noise should not be noticeable anymore

    Wow what a cool thing to sayXD

    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029

    Found the bug that's causing fireflies with hair. It basically has to do with opacity (when enabled). Working on a solution.

  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020
    wowie said:

    Found the bug that's causing fireflies with hair. It basically has to do with opacity (when enabled). Working on a solution.

    ...so....had no internet for about 2 months, but now back in businessindecision...

    Been a while, I really hope you are ok, considering what's going down right now! And of course curious about your progresssmiley

    image

    image

    sluggians awe.png
    1280 x 720 - 2M
    Lizzard drummer 3 awe.png
    1920 x 1080 - 2M
    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029
    edited April 2020

    ...so....had no internet for about 2 months, but now back in businessindecision...

    Been a while, I really hope you are ok, considering what's going down right now! And of course curious about your progresssmiley

    Pretty good progress actually.

    From the top of my head.

    AWE Surface:

    • Fixed most of the bugs I've seen since the latest DIM release. That includes bugs I've inadvertently introduced in my development builds. I think the only two major problem I haven't solved are normal mapping and displacement bounds settings.
    • Decided to add a color burn/dodge controls to the shader, controllable via AWE Environment light. Works even if tonemapping is off. Takes into account amount of light and texture/color saturation of the material/texture.
    • Reworked how temperature, saturation, tone mapping values work. If set to 'Global', selecting non-default values in the shader applies an offset (the difference between the default value and the user entered value) to the global parameters set in AWE Environment light. If these parameters are set to 'Override', the global value will be ignored and the entered value(s) is used.
    • Much improved albedo handling. This should make for more consistent behaviour regardless of the texture used.

    I did remove adaptive sampling in the process, so its very likely not be present in the next build. Translucency boost for SSS should be better now and looks more saturated. Also, everything except subsurface is slightly faster with 3delight 12. I've also noticed SSS with DS 4.8 - 4.12 seems to have more noise in darker, translucent areas compared to DS 4.7.

    AWE hair shader:

    • Now renders pretty consistently regardless of hair props. I've run tests on transmapped/opacity mapped hair, old Poser strand based hair - purely a static prop in DS and DAZ/Garibaldi strand based hair.
    • All features working as intended (variations, highlights etc) for opacity mapped hair. For the most part, final hair color (from white, blond, ginger red, brunette and black) are mostly influenced by hair color strength and melanin/red melanin settings. There's additional gamma/saturation controls for the hair inputs if you need to tweak it a bit more.
    • Changed the default value for roughness to 5%.

    I need to add a toggle to enable switching between a vertical ramp to a horizontal one (to avoid problems like what you see on the render). Probably also need to add a mask, which should help when users can't create the proper surface area themselves for their hair props.

    Another thing I might add is a noise ramp to slightly break up the variations/highlights, roughly between midpoint and the hair tip.

    AWE Environment Sphere shader:

    • In addition to the old gain/gamma/saturation/exposure controls, you can now fine tune the settings via AWE Environment Light for either diffuse and camera/specular rays.
    • The shader now smartly adjusts gain/exposure/gamma values for parts of the HDRI with high exposure values (above 1). This was the major cause of noise/fireflies with HDRI with very high dynamic range.

    AWE Environment Light controls:

    • Added sampling overrides : irradiance, subsurface and hair samples.
    • Added ray depth overrides : diffuse, reflection, refraction and hair depth. Hair depth will only work in DS 4.8 onwards.
    • Changed camera exposure controls default values. F/stop is now 1/22 which is the default value of DS camera in 3delight. ISO is set to 800 and shutter time is set to 1/5. Also added a toggle to use camera F/stop value instead (works when rendering from a camera and depth of field is enabled).
    • Added scene specular exposure to under/over expose specular/reflection when camera exposure controls aren't used.
    • Added color burn/dodge controls.

     

    AWE1.jpg
    607 x 1000 - 208K
    AWE2.jpg
    607 x 1000 - 156K
    AWE3.jpg
    364 x 600 - 77K
    AWE4.jpg
    364 x 600 - 76K
    AWE5.jpg
    364 x 600 - 73K
    AWE6.jpg
    364 x 600 - 76K
    Post edited by wowie on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    Tks so much for sharing! Would love to see the color burn in actionblush Trying to imagine if it can add to realism or quit the opposite? Also can't wait to test the new environment shader, especially the smart adjust thingy;)

    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029
    edited April 2020

    Tks so much for sharing! Would love to see the color burn in actionblush

    It's enabled by default. So, technically, you're already seeing it. wink

    Edit: Some test renders. Default values, zero (disabled), burn, dodge.

     

    default.jpg
    364 x 600 - 46K
    zero.jpg
    364 x 600 - 44K
    burn.jpg
    364 x 600 - 48K
    dodge.jpg
    364 x 600 - 45K
    Post edited by wowie on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    Tks wowie! Yeah it's obvious now;) It's funny, because I've played around with those kind of filters in GIMP lately.

    image

    Village awe pp2 .png
    1920 x 1080 - 3M
    Post edited by Sven Dullah on
  • khorneV2khorneV2 Posts: 146

    Tks wowie! Yeah it's obvious now;) It's funny, because I've played around with those kind of filters in GIMP lately.

    image

    yes

  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020
    khorneV2 said:

    Tks wowie! Yeah it's obvious now;) It's funny, because I've played around with those kind of filters in GIMP lately.

     

    yes

    Tks!

    ...so I picked up Stonemason's Willow Creek and did a convertion. Only height maps are normal maps, so got some minor artifacts and a bit of noise, even with normal strength at 40%. Did not yet fiddle with smoothing angles etc. Will try to create bump/displacemaps from the diffuse maps and have a new go at it...anyway, beautiful set, and very resource friendly:)

     

    image

     

    Willow Creek awe 1pp.png
    1920 x 1080 - 5M
    Post edited by Sven Dullah on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    ...testing some stuff...

    image

    SAGE AWEpp.png
    1500 x 2100 - 4M
    Post edited by Sven Dullah on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    Testing some SS settings on the sclera.

    image

    SAGE cl up AWEcropped.png
    800 x 980 - 1M
    Post edited by Sven Dullah on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    ...and some more testing...

    Edited...fixed some details...

    image

    Ooka2 awe.png
    1800 x 2700 - 7M
    Post edited by Sven Dullah on
  • Sven DullahSven Dullah Posts: 7,621

    @wowie

    ...just a random thought...it would be pretty cool to be able to apply blur to specular maps inside aweSurface...

  • wowiewowie Posts: 2,029
    edited April 2020

    @wowie

    ...just a random thought...it would be pretty cool to be able to apply blur to specular maps inside aweSurface...

    Technically doable, but what would be the reason? It will essentially blur out the details you expect to see in those maps, which in general you want to retain as much as possible.If you blur out the details, then your only way of 'adding' details would be via bump/normal/displacement maps.

    Base with just bump

    Base specular, base specular with specular to roughness multiplier set to 100%, and then with bump enabled.

    I've actually have integrated a debug dial to control how much bump is used for specular/reflection lobes. Mainly because I didn't like having to directly adjust bump per surface zone. I've also rebuilt the specular to roughness translation, adding slight variations to the roughness to break up the highlights.

    Now if you uniformly 'blur' the specular strength map, you'll end up having it look like the base roughness render. Here's what it looks like with a blur amount of 0.2 to the specular texture.

    base.jpg
    364 x 600 - 76K
    base roughness.jpg
    364 x 600 - 78K
    base roughness bump.jpg
    364 x 600 - 79K
    base bump.jpg
    364 x 600 - 77K
    base blur.jpg
    364 x 600 - 62K
    Post edited by wowie on
  • Sven DullahSven Dullah Posts: 7,621

    Tks wowie! Still trying to understand when and if specular maps are useful:) Looks like I have to test the specular to roughness multiplyer next, as a matter of fact never used it thus farblush. I see the result in your render, but how does it actually work? It blends the values from the specular map with the values of the roughness map? If I use it, does the "normalize specular maps" then impact specular roughness also? Now my brain hurts:))

  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    Testing my custom maps on this fellow, ships with diffuse- and bump maps, so made specular- roughness- and displacement maps from them. One area light (sun) and a jpg for indirect light/reflections.

    Spec to rough multiplier at 20%.

     

    image

    Spec to rough at 100%, the difference is small but it seems to make the details pop a bit more...

    image

    Brachiosaurus awe 3.png
    1920 x 1080 - 2M
    Brachiosaurus awe 3 sp to r multiply 100.png
    1920 x 1080 - 2M
    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029
    edited April 2020

    Tks wowie! Still trying to understand when and if specular maps are useful:) Looks like I have to test the specular to roughness multiplyer next, as a matter of fact never used it thus farblush. I see the result in your render, but how does it actually work? It blends the values from the specular map with the values of the roughness map? If I use it, does the "normalize specular maps" then impact specular roughness also? Now my brain hurts:))

    You'll get different results because I've completely changed the way it works on my dev build. And yes, normalize specular map will also affect the result. The same is true for specular map strength as well. I've also tweaked that feature a bit on the dev build. Again, to retain most of the details.

    Best way to notice the difference is to do a specular only render. I've actually found using both normalize specular map and specular map strength useful when dealing some texture sets with specular strength differences near the texture/uv seams.

    All spec features disabled.

    With normalize spec map

    With specular strength adjusted for the legs.

    Finally, with specular to roughness enabled.

    If you disable normalize specular map, you'll get roughly the same output as the first render but without the difference near the seams.

    Technically, you can do these adjustments in an image editor but I find it easier and quicker to use these features instead. Normalize Specular Map 'fixes' way too dim specular maps and Specular Map to Roughness 'transfers' details baked into the map (as strength) into a more PBR friendly data (roughness/glossiness).

    Going slightly technical, Normalize Specular Map remaps the original texture values to what it would be if pure white (1.0) is set to the surface reflectivity, which is determined by the index of refraction you set.

    If you IOR is 1.3 then reflectivity would be

    (1.3 - 1)^2 / (1.3 + 1)^2 = 0.01701323251417769376181474480151.

    Values above that value would be treated as 1 and below that would be smoothly remapped from 0 to 1.

    without.jpg
    364 x 600 - 61K
    with.jpg
    364 x 600 - 86K
    with adjustment.jpg
    364 x 600 - 88K
    with adjustment and roughness.jpg
    364 x 600 - 88K
    without adjustment and roughness.jpg
    364 x 600 - 60K
    Post edited by wowie on
  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020
    wowie said:

    Tks wowie! Still trying to understand when and if specular maps are useful:) Looks like I have to test the specular to roughness multiplyer next, as a matter of fact never used it thus farblush. I see the result in your render, but how does it actually work? It blends the values from the specular map with the values of the roughness map? If I use it, does the "normalize specular maps" then impact specular roughness also? Now my brain hurts:))

    You'll get different results because I've completely changed the way it works on my dev build. And yes, normalize specular map will also affect the result. The same is true for specular map strength as well. I've also tweaked that feature a bit on the dev build. Again, to retain most of the details.

    Best way to notice the difference is to do a specular only render. I've actually found using both normalize specular map and specular map strength useful when dealing some texture sets with specular strength differences near the texture/uv seams.

    All spec features disabled.

    With normalize spec map

    With specular strength adjusted for the legs.

    Finally, with specular to roughness enabled.

    If you disable normalize specular map, you'll get roughly the same output as the first render but without the difference near the seams.

    Impressive stuff, wowie!! So...any hints? About the release date, I mean? Face Without Mouth emoticon

    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029
    edited April 2020

    Impressive stuff, wowie!! So...any hints? About the release date, I mean?

    Still tweaking some stuff. Currently, Specular Map to Roughness is slightly too aggresive (if you use very high roughness ie more than 50%). Plus I'm also tinkering with a new scheme for opacity optimization. Like the old builds, it will remap values between 0 and 1 to either 0 or 1 depending on your opacity filter settings. But this time, the way it works should be easier to understand and work with.

    Opacity Filter 1 will determine the threshold point. The default value will be 0.5, literally the midpoint between 0 and 1. Opacity Filter 2 will be the cutoff point and set between the midpoint and end points. For example, a value of 0 means 0 for low values and 1 for high values (essentially the same as no filter). A value of 0.5 would be halfway between 0 and the midpoint. In this case, 0.25 and 0.75 respectively. But if you use 0.75 for Opacity Filter 1, you'll get 0.375 and 0.875 instead. So Opacity Filter 2 will determine how coarse the filter will be.

    Roughly similar to what you get with this graph where Opacity Filter 2 blends between linear and 'stronger' smoothstep.

    Opacity Filter 1 will skew/shift your filter. In that graph, basically you can shift the value to be above or below 0.5.

    Since it can get very coarse, the default Opacity Optimization will be set to 0% (or disabled) and both Opacity Filter 1 and 2 will bet set to 0.5 and 0. There are still other optimizations at play for opacity, but they are not affected by this. The opacity optimizations are there if you want to squeeze out as much rendering performance as possible, but you will have to manually tinker with the values to best suited to your needs.

    Obviously, the coarser the filter, the faster it will render. But this scheme should allow you to keep some gradient to just what you need it to be. There might still be extra opportunities to make it smarter like taking into account distance from the camera and neighbouring texture values in the opacity map. But I haven't worked them out yet.

    My goal is to have release AWE Surface with AWE Hair, soon.

    smoothstepx.gif
    500 x 400 - 18K
    Post edited by wowie on
  • khorneV2khorneV2 Posts: 146

     

     

    image

    image

    Excellent !!!yes

  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020
    khorneV2 said:

     

     

     

     

    Excellent !!!yes

    Awww tks:)

     

    wowie said:

    Tks wowie! Still trying to understand when and if specular maps are useful:) Looks like I have to test the specular to roughness multiplyer next, as a matter of fact never used it thus farblush. I see the result in your render, but how does it actually work? It blends the values from the specular map with the values of the roughness map? If I use it, does the "normalize specular maps" then impact specular roughness also? Now my brain hurts:))

    You'll get different results because I've completely changed the way it works on my dev build.

    Ok I can't seem to get those dramatic changes with my current build, I see what you mean. Increasing spec to rough multiplyer has an impact on the result, nevertheless, but not sure what it actually does:)

    This is the original render with zero spec to rough multiply:

    And here I set it to 100% and doubled the bump min/max on the skin...the brightness/contrast is slightly different due to some minor postwork, but there is a difference in the appearence of the specular highlights. Better or worse? Wowie, do you have any tips about when to use that function (with the 1.3 build)?

    image

     

    Ooka spec to rough 100 awe.png
    1800 x 2700 - 7M
    Post edited by Sven Dullah on
  • Sven DullahSven Dullah Posts: 7,621
     

    My goal is to have release AWE Surface with AWE Hair, soon.

    Sweetyes

  • Sven DullahSven Dullah Posts: 7,621
    edited April 2020

    Ran into some reflection issues with this render. The road prop uses an opacity mask to jag the edges a bit. Took me a while to figure out, but removing the map solved the problem, and it wasn't really needed here anyway. Still an interesting phenomenon. Check out the reflections on the door! I used the GGX BRDF, but the same thing happens, albeit slightly different, with the default BRDF.

    image

    After removing the transmap (and fixing some other stuff):

    image

    First time I see something like this:) The background is a simple jpeg, lighting is 3 emissive planes.

    Spy Car GGX.png
    1920 x 1080 - 3M
    Spy Car AWE.png
    1920 x 1080 - 3M
    Post edited by Sven Dullah on
  • khorneV2khorneV2 Posts: 146

     

     

    image

    image

    Excellent !!!yes

  • Sven DullahSven Dullah Posts: 7,621
    edited May 2020

    @wowie

    With the 1.3 build there are still issues when using opacity maps with the PT area light shader (to be clear, when using a map in the area light shader opacity slot and with opacity enabled). The maps work with diffuse rays but not with reflections. They work perfectly fine with the environmental shader, though. Any chance of getting a fix for that, as it sure would make life a bit easier? Thinking emoticon

    Post edited by Sven Dullah on
  • wowiewowie Posts: 2,029
    edited May 2020

    @wowie

    With the 1.3 build there are still issues when using opacity maps with the PT area light shader (to be clear, when using a map in the area light shader opacity slot and with opacity enabled). The maps work with diffuse rays but not with reflections.

    That's not an issue with AWE Surface, but rather AWE Area PT. And actually, it's already fixed awhile back.

    With a checkered opacity map.

    With a different map.

    One of those stock stuff, hence the watermark showing up.

    light shader.jpg
    406 x 669 - 88K
    light shader2.jpg
    406 x 669 - 103K
    Post edited by wowie on
  • Sven DullahSven Dullah Posts: 7,621
    wowie said:

    @wowie

    With the 1.3 build there are still issues when using opacity maps with the PT area light shader (to be clear, when using a map in the area light shader opacity slot and with opacity enabled). The maps work with diffuse rays but not with reflections.

    That's not an issue with AWE Surface, but rather AWE Area PT. And actually, it's already fixed awhile back.

    With a checkered opacity map.

     

    With a different map.

     

    One of those stock stuff, hence the watermark showing up.

    That's great! Tks a lot:)

  • Sven DullahSven Dullah Posts: 7,621
    edited May 2020

    So I got this idea from the IRay photo realism thread about building a ring light rig within an actual enclosed space, just a simple cube, to maybe catch some more bounce light. Also testing to raise bump levels and decreasing specular for the skin, and using the specular to roughness with about 80% strength. Granted, the torus (with pretty much the minimum polygon number possible) produces an interesting shadow fall off, and also very long render times, as expected. I first used two cubes as rim/fill lights, but replaced them with wowie's emitters (front&back enabled) to speed up things a bit. Still struggling a bit with GB hair (brows) with the aweHair shader, they tend to look a bit blown out no matter specular levels...more testing needed. Sure I can make them look dark, but then they just look kind of painted on.

    Well my first humble attempt looks like this, no postwork except removing some fireflies and a bit of gamma correction. Suggestions about the setup and everything else are welcome, as alwayscool I can already see an unlit area under the left armpit that doesn't look too nice, so have to move around stuff abit for the next render.

    Converted to jpeg due to size:(

    image

    The setup used. The small emitter is on her left side and the larger one serves as a rim.

    image

    50% scale png:

    image

    Ooka ringlight awe.jpg
    1800 x 2700 - 5M
    Ringlight setup.png
    1458 x 906 - 2M
    Ooka ringlight awe 50%size.png
    900 x 1350 - 2M
    Post edited by Sven Dullah on
Sign In or Register to comment.