3Delight Laboratory Thread: tips, questions, experiments

17879818384100

Comments

  • kyoto kidkyoto kid Posts: 40,575

    ...I still tend to avoid Uber lights/environment as they bloat render times beyond what I prefer for my workflow..

  • Mustakettu85Mustakettu85 Posts: 2,933
    kyoto kid said:

    ...I still tend to avoid Uber lights/environment as they bloat render times beyond what I prefer for my workflow..

    You forgot to use the quote button and/or name tagging so we don't know who you are replying to.

  • wowiewowie Posts: 2,029

    OK, asking for some input here for my GI light.

    Can you tell the difference between the two ? Which one of these would you consider acceptable noise levels ?

    AA.jpg
    607 x 1000 - 198K
    BB.jpg
    607 x 1000 - 182K
  • timeofftimeoff Posts: 49
    wowie said:

    OK, asking for some input here for my GI light.

    Can you tell the difference between the two ? Which one of these would you consider acceptable noise levels ?

    To an untrained eye, the difference is minimal. Either would be acceptable (to me).

  • Sven DullahSven Dullah Posts: 7,621
    wowie said:

    OK, asking for some input here for my GI light.

    Can you tell the difference between the two ? Which one of these would you consider acceptable noise levels ?

    Not very big difference but the first one looks better to my eyes;)

  • Mustakettu85Mustakettu85 Posts: 2,933
    wowie said:

    OK, asking for some input here for my GI light.

    Can you tell the difference between the two ? Which one of these would you consider acceptable noise levels ?

    Forum JPEG recompression has mangled the files bad enough =( I can barely see any difference (which mostly looks like bounce brightness and not noise because of blur). What if you could upload PNG?

  • wowiewowie Posts: 2,029

    Forum JPEG recompression has mangled the files bad enough =( I can barely see any difference (which mostly looks like bounce brightness and not noise because of blur). What if you could upload PNG?

    The actual render was saved out of DS as JPEG. But here goes.

    AA.png
    607 x 1000 - 360K
    BB.png
    607 x 1000 - 329K
  • Mustakettu85Mustakettu85 Posts: 2,933
    wowie said:

    Forum JPEG recompression has mangled the files bad enough =( I can barely see any difference (which mostly looks like bounce brightness and not noise because of blur). What if you could upload PNG?

    The actual render was saved out of DS as JPEG. But here goes.

    Thanks! Visibly less mangling now.

    I prefer the right one, with less bounce. Not that I can see much noise, but the aliasing in the brighter bounce along the bottom edge of the card seems more pronounced.

    ...but maybe it's a DS JPEG export problem.

     

  • wowiewowie Posts: 2,029
    edited January 2018

    Thanks! Visibly less mangling now.

    I prefer the right one, with less bounce. Not that I can see much noise, but the aliasing in the brighter bounce along the bottom edge of the card seems more pronounced.

    ...but maybe it's a DS JPEG export problem.

    That's the one with higher max samples. So it actually should be more accurate. I just want to see if my eyes weren't playing tricks. laugh

    They were rendered with 8x8 pixel samples at 1024 and 2048 max samples. I think it took something like 3 and 5 minutes.

    Fun facts I discovered during testing with the GI light.

    Using kettu's script to pass raycache option - 10 x speed up

    Using progressive rendering - 2 x speed up

    Using my GI light (rather than UE2 IDL) - 3 x speed up .

    Roughly translates to 60 x speed up (compared to DS default render settings). cheeky

    Finally hit my performance milestone. Fully path traced global illumination with plausible glass, metal and dielectric. Lit purely by the HDRI on the environment sphere.

    In 2 min 23.92 secs laugh Hell, I think that's even faster than most of my AO renders. cheeky

    2 minutes 23.92 seconds.jpg
    607 x 1000 - 407K
    Post edited by wowie on
  • Mustakettu85Mustakettu85 Posts: 2,933
    wowie said:

    That's the one with higher max samples. So it actually should be more accurate. I just want to see if my eyes weren't playing tricks. laugh

    =D

    wowie said:

    Finally hit my performance milestone. Fully path traced global illumination with plausible glass, metal and dielectric. Lit purely by the HDRI on the environment sphere.

    In 2 min 23.92 secs laugh Hell, I think that's even faster than most of my AO renders. cheeky

    Awesome =) The dragon's a bit noisy though? Or is it bump?

  • wowiewowie Posts: 2,029
    Awesome =) The dragon's a bit noisy though? Or is it bump?

    Nope. That's undersampling cause I was just using max samples of 128 and 4x4 samples. Bumping up quality to 16x16 samples made it something like 13 minutes.

    I added some stuff in since the last feature post. A slider setting to control opacity optimizations levels, a fallback for forcing reflections with Ashikhmin Shirley but use GGX specular, a switch to enable using Transmission color instead of Scatter color for SSS plus some extra cleanup on the code.

    Presets are done, just need to render out thumbnails and promos. If anyone has questions about the shader, feel free to ask here - once it's approved, I'll make a new thread with the brief manual and a FAQ.

    13 minutes 0.55 seconds.jpg
    607 x 1000 - 313K
  • Sven DullahSven Dullah Posts: 7,621
    wowie said:
    Awesome =) The dragon's a bit noisy though? Or is it bump?

    Nope. That's undersampling cause I was just using max samples of 128 and 4x4 samples. Bumping up quality to 16x16 samples made it something like 13 minutes.

    I added some stuff in since the last feature post. A slider setting to control opacity optimizations levels, a fallback for forcing reflections with Ashikhmin Shirley but use GGX specular, a switch to enable using Transmission color instead of Scatter color for SSS plus some extra cleanup on the code.

    Presets are done, just need to render out thumbnails and promos. If anyone has questions about the shader, feel free to ask here - once it's approved, I'll make a new thread with the brief manual and a FAQ.

    That looks really really nice! I really hope you include a couple of shader presets as starting points, cause that interface looks scary, I can see myself getting totally lost in there for a couple of yearsblushlaugh

  • Takeo.KenseiTakeo.Kensei Posts: 1,303
    wowie said:
    Awesome =) The dragon's a bit noisy though? Or is it bump?

    Nope. That's undersampling cause I was just using max samples of 128 and 4x4 samples. Bumping up quality to 16x16 samples made it something like 13 minutes.

    I added some stuff in since the last feature post. A slider setting to control opacity optimizations levels, a fallback for forcing reflections with Ashikhmin Shirley but use GGX specular, a switch to enable using Transmission color instead of Scatter color for SSS plus some extra cleanup on the code.

    Presets are done, just need to render out thumbnails and promos. If anyone has questions about the shader, feel free to ask here - once it's approved, I'll make a new thread with the brief manual and a FAQ.

    From all the pics you posted I assume you need to put the IBL map onto an environment sphere ? Or is it done direcrly in the light shader?

  • wowiewowie Posts: 2,029

    That looks really really nice! I really hope you include a couple of shader presets as starting points, cause that interface looks scary, I can see myself getting totally lost in there for a couple of yearsblushlaugh

    For the commercial pack, there will be a base preset for glass, metal and dielectric, various levels of roughness presets, some presets based of IOR for dielectrics and several metal types ie gold, silver, etc. Plus some scripts to manage specular maps (mainly copying from the first specular strength to 2nd specular 2 and coat strength.

    The workflow goes something like - apply a metal shader, apply a metal type, then apply the roughness. Dielectrics and glass follow pretty much the same workflow - apply the base dielectric, apply an IOR preset and then the roughness preset.

    There's also some SSS scatter/absorption profile presets, mostly from Jensen's paper. I did find some other measurements from Anders Langlands, but not really sure about them.

    Last but not least, shader presets for typical character surfaces and base quick character MAT presets for Gen4, Genesis, Genesis 2, Genesis 3, and Genesis 8. These will be generic, non-mapped presets and if I made them the right way, shouldn't replace/remove existing maps. I don't have non DAZ characters, but you should be able to use the shader presets for those.

    As I noted, the shader will import most settings from dsDefaultMaterial, Human Surface Shader, UberSurface and UberSurface2. The only thing it won't import is specular maps inserted into specular color. If you happen to have such materials, you will need to copy/place the map into the specular strength map first before applying the shader. Actually made a script to do just that.

    The shader will likely not be compatible with iray Uber Shader and its presets.

    From all the pics you posted I assume you need to put the IBL map onto an environment sphere ? Or is it done direcrly in the light shader?

    Yes, that's correct. You will need to use an environment sphere or use an actual scene. The shader only does pure raytraced reflections. No environment maps.

    It's done to avoid the coordinate spaces mess used by UE2 and also means users don't need to update to DS 4.10 beta. My go to setup is your typical DAZ sphere primitive with one of the scale axis set to -100%. Doing so means the texture is oriented properly when raytraced from within the sphere. It does mean the sphere is totally black in the viewport, but that's unavoidable since the sphere still has its normals facing outward. I did try exporting a sphere primitive and flip the normals in a modeller, but the re-imported prop always have the UV mapping mangled.

    I'll try again, who knows? Maybe it was just bad luck.

    I'll be including a scene subset of the setup on the commercial pack, so users could just load that instead. I do plan on making a new ambient surface though. With it, you could effectively rotate the map via a tile offset rather than rotating the sphere. Should be less hassle to work with, particularly when doing lookdev with IPR.

    What else?

    Oh yeah - the shader doesn't include glossiness so surfaces with it applied will have a white look in the viewport from the 1st specular. I did thought about using glossiness instead, but that means messy parameter remapping that's just not worth the effort.

    Here's a draft of the readme. No pictures for now, but it should provide a fairly good idea of the features.

    aweSurface 1.0 Documentation

    aweSurface is a new, robust, highly optimized physically plausible shader for DAZ Studio and 3Delight employing physically based rendering (PBR) metalness / roughness workflow. Using an Über shader approach, it can be used to render materials such as dielectrics, glass and metal, or a mix of all three within the same surface zone.

    Features Highlight

    • Physically based BRDF (Oren Nayar for diffuse, CookTorrance, Ashikhmin Shirley and GGX for specular).

    • Microfacet energy loss compensation.

    • Transmission with Beer-Lambert based absorption.

    • BRDF based importance sampling.

    • Explicit Russian roulette for next event estimation.

    • Raytraced subsurface scattering with forward/backward scattering via Henyey Greenstein phase function.

    • Physically based Fresnel for both dielectric and conductor materials.

    • Unified index of refraction value for both reflection and transmission.

    • Artist friendly metallic Fresnel based on Ole Gulbrandsen model using reflection color and edge tint to derive complex IOR.

    • Physically based thin film interference (iridescence).

    Other important features:

    • Toggle switches for each lobe.

    • Oren Nayar diffuse based translucency with support for bleed through shadows.

    • Separate front/back facing side diffuse.

    • Two specular lobes for the base, one specular lobe for coat.

    • One reflection lobe for the base, one reflection lobe for coat.

    • Anisotropic specular and reflection (with Ashikhmin Shirley and GGX BRDF) with mappable direction controls.

    • Glossy Fresnel.

    • Can use either roughness (default) or glossiness/smoothness (with a switch).

    • Heavily optimized opacity handling

    • Imports most settings and values when converting materials from dsDefaultMaterial, HumanSurface Shader, UberSurface and UberSurface 2.

    Overview

    The aweSurface material consist of a base layer and a toggle-able coat layer. By default, the material is set to dielectric. To render metal, simply change Metalness to 1. Similarly for glass, change Transmission to 1. Metalness takes precedence over Transmission. Both parameters accept texture masks.

    Unified Mode

    For those who prefer a unified approach, Use Base Values allows most of the base layer properties to be controlled with just two controls – Base Color and Base Roughness.

    As per PBR conventions, in this mode both metal and transmission color will use Base Color and any texture inserted in this slot. Likewise, specular/reflections and transmission roughness will use Base Roughness.

    Reflectivity of each layer can be adjusted via each layer's respective Index of Refraction settings, though this only applies to dielectric parts of the base. By default, this is set to 1.5, which is common for glass and most dielectrics.

    Classic Mode

    For those who want more control, you can fine tune each section to get the material you desire. To do this, simply disable Use Base Values.

    This mode allows for robust flexibility in fine tuning the shader to get the look you want. You can choose to have fully reflective or glossy specular reflections, while keeping a rough diffuse or transmission look. Vice versa, you can get fully smooth diffuse or transmission, and have rougher, less glossy specular highlights and reflection.

    In this mode, Fresnel for metal will be derived from reflection color and edge tint. The resulting render will be pure metal and does not take into account Base Color or Diffuse Color. To override this, simply toggle Use Diffuse Textures switch so the shader takes into account the diffuse texture. To adjust its influence, simply use Diffuse Texture Strength until you get the look you want.

    Base Layer

    Diffuse (enabled by default)

    Diffuse is based off Oren-Nayar BRDF, with a roughness parameter from 0 (zero) to 1 (one). A roughness of 0 (zero) will give pure Lambert diffuse.

    The diffuse lobe supports translucency and double sided shading, each side with a separate color and/or texture. Translucency will allow raytraced shadow cast onto the front of the polygon to be visible on the back. Double side shading is also supported with translucency.

    Translucency Shadow allows you to cast colored shadows based of the translucency color of the material. You can adjust the intensity of the translucency shadows to be weaker ( near zero will be closer to standard shadows) or stronger (1 will be fully translucent, colored shadows).

    Specular (enabled by default)

    By default, the specular BRDF is set to Ashikhmin Shirley. The chosen BRDF will be used by both specular lobes and reflection lobes. For models without UVs, Cook-Torrance is recommended to avoid shading artifacts with direct lighting. GGX BRDF will give highlights higher peaks and longer tails, but incurs a rather large performance hit when reflections are enabled.

    Roughness have a value between 0 and 1, where increasing values will render increasingly rougher highlights.

    As noted before, both specular and reflection is controlled by Fresnel via the base index of refraction. For metals, Fresnel will be derived from specular/reflection color and edge tint. For plausible materials, it is recommended to use the same value for both specular lobes.

    The first specular lobe is a specular only BSDF that respond only to direct lighting. The second specular lobe is both a specular BSDF and raytraced reflections (indirect specular).

    Each lobe have separate control settings so they can be controlled separately.

    This arrangement allows you to mix and match between the two. You can simply turn off the specular on the 2nd lobe and rely sole on the 1st lobe for specular. Or you can disable reflections completely and rely solely on both BSDF specular lobes.

    As the name implies, anisotropy controls anisotropy of each lobe. The anisotropy direction uses a color value to control the anisotropy angle/direction. Of the three channels, only the first (red) and second (green) channel is used. The default values ( 255, 0, 255 ) gives a horizontal angle while using cyan ( 0, 255, 255 ) gives a vertical angle. Values in between will be a mix between the two.

    Anisotropy direction accepts maps as input, so you can control the direction with textures. It is recommended to only use models with subdivision with anisotropy. Low polygon models may display facets with very high anisotropy.

    Both specular lobe and the reflection lobe is enabled by default.

    Transmission

    Resulting refraction is controlled with the same index of refraction value as specular and reflection. Both Transmission Distance and Transmission Color directly determine the resulting absorption color when rendered. Transmission Color will not have any effect when Transmission Distance is 0. To avoid confusion, Transmission Distance is set to 0.5 by default

    Transmission Roughness controls how blurry or cloudy the refraction will be. A value of 0 (zero), which is the default, will give a clear glass look while increasing values produce a more frosted / rough glass appearance.

    To render non-refracting glass, simply enable Thin Glass. The resulting material will not have refraction, but can still exhibit absorption.

    Enabling Transmission Shadow will produce colored shadows based off Transmission Color.

    There are no toggle for transmission because it is directly controlled by the Transmission slider in the root Base section.

    SSS / Subsurface Scattering (disabled by default)

    Subsurface scattering in aweSurface solely employs 3Delight raytraced based subsurface scattering. Like many other contemporary shaders, it allows anisotropic (directional) scattering via the use of Henyey Greenstein phase function. This is controllable via the Subsurface Phase slider, where 0 (zero) constitutes isotropic / neutral scattering, negative values produces more back scattering and positive values produces more forward scattering. Recommended values are between -0.75 and 0.75.

    The subsurface scatter/absorption color and strength is based of values found in literature, mainly Henrik Wann Jensen's paper. By default, the values are set to Skin2 profile found in the paper.

    aweSurface employs this scheme so it can import values used by preceding shaders, mainly UberSurface2. As a rule of thumb, think of scatter color as the inverse of transmission color (1 – transmission color). Those who prefer transmission color can simply toggle Scatter is Transmission switch. In this mode, the shader automatically does the conversion for you.

    Subsurface Scale determines how far subsurface ray travels below the surface. Generally, result below 1 is appropriate for most materials. As the name implied, Subsurface Boost will boost the subsurface scattering effect with the chosen multiplier value.

    Use Diffuse Texture with SSS is a convenience function. When enabled, subsurface scattering will take diffuse texture into account without having to insert diffuse textures into the subsurface scattering color inputs. This is enabled by default. Textures inserted into subsurface scattering color and strength will still be taken into account even when this is enabled.

    Coat Layer

    The coat layer is a dielectric coat with controllable thickness. By default, thickness is set to 0 (zero) to simulate infinitely thin coat. With values more than 0, Coat Transmission Color can be used to tint the base layer. Similar to Transmission Color, the color chosen directly determines the tint applied to the underlying base. Appropriately, Color Transmission Color have no effect when Thickness is set to 0 (zero).

    The coat layer also doubles as a thin film coat. Simply toggle Coat Thinfilm and the shader will produce an iridescent coat. To control the appearance, you can use Coat Thinfilm Thickness and the coat's index of refraction. It is recommended to use at least an IOR value of 2 to see the result.

    Coat Thinfilm Thickness is employed as a percentage of the value between 250 and 400 nm. For example, a 300 nm thin film would be 33% ( 250 nm + ( 50 / (400 – 250 ) ). This parameter mainly determines the color you will see on the coat.

    Controls for the coat are similar to those found in the 2nd base specular/reflection settings, with the exception of specular/reflection color and edge tint. This is because the coat will always be dielectric.

    Tiling

    Tiling controls are provided and follows the scheme employed by dsDefault material. Both vertical and horizontal tiling is supported, as is a tiling multiplier and an offset value. For flexibility, the base and coat layer can be tiled independently of each other.

    Bump and Displacement (enabled by default)

    Both bump and displacement mapping is supported and affects both base and coat when enabled. Controls are similar to dsDefault material, with the exception being Trace Displacements is off by default. To render actual displacement, Trace Displacements needs to be enabled.

    Options

    Additional options are available to control specific features of aweSurface. They have been categorized into subsections – general, specular and visibility.

    General Options

    Use Face Forward (disabled by default)

    This is a toggle-able switch between shading a single side and both sides of the polygon. This should only be enabled on infinitely thin surfaces with single side normals (for example, the planet primitive).

    Use Face Forward with Reflection (disabled by default)

    When this option is enabled, raytraced reflections will be enabled on both sides Only affects dielectric materials, there's no need to toggle this for metals.

    Light Category

    This feature allows light linking between surfaces and a single/ group of light sources. You can include or omit certain lights from affecting certain materials. By default, this is empty so surfaces honor all light in the scene.

    Usage Syntax (enter these values in the Light Category field without quotes)

    "" (empty field, default) - Matches all lights regardless of their category.

    "name" - Matches lights that belong to category ‘name’.

    "-name” - matches lights that do not belong to category ‘name’, including lights that do not belong to any category.

    "*" - Matches every light that belongs to at least one category.

    "-" - Matches nothing.

    Example: “specular&-crowd” - All lights in the "specular" category but omit ones in the "crowd" category

    Trace Group & Trace Group Membership

    Similar to light categories, but applied to reflections and refractions. To omit surfaces, enter the Trace Group Membership of said surfaces in the Trace Group field of the surface that has the reflection and refraction.

    Usage Syntax (enter these values in the Trace Group field without quotes)

    "" (empty field, default ) - Objects which don’t belong to any group.

    "group1" – Only objects which belong to group1.

    "group1,group2" - Only objects which belong to group1 or group2.

    "+group1" - Objects which belong to group1 or which don’t belong to any group.

    "-group1" - Objects which don’t belong to group1.

    Example: “metal,-dielectric” - All materials in the "metal" category but omit ones in the "dielectric" category

    Max Diffuse Depth and Max Specular Depth

    Sets each respective ray bounce depth limit of the material. By default, max diffuse depth is set to 3 bounces, while max specular depth is set to 16. If maximum trace depth in the renderer settings is lower, it will use the limit set in the renderer settings. Vice versa, if maximum trace depth in the renderer settings is higher, it will use the max depth set in the material.

    To optimize render performance, it is highly recommended to set Max Diffuse Depth to 1 when either Transmission or Metalness is 1. This avoids shooting diffuse rays that will not be used anyway and does not contribute to the final image.

    Specular Options

    Multiply Specular & Reflection with Opacity (disabled by default)

    As the name implies, this option honors opacity values, either the absolute value in the Opacity setting or a texture mapped to the parameter. Disabling this allows you to have opacity affect diffuse, but not specular and reflection.

    Normalize Specular Map & Specular Map Strength (disabled by default)

    Convenience features to deal with very low, dark specular maps. It will only work when a specular map is used. Applies to all lobe (1st specular, 2nd specular/reflection and coat specular/reflection) when enabled. Normalize Specular Map will try to normalize values in the specular map so values are closer to 1, while Specular Map Strength will boost values found in the map with the chosen multiplier.

    Specular Map to Roughness and Specular Map to Roughness Factor (disabled by default)

    Another set of convenience features to derive roughness values from specular maps. A factor of 0 will be the same as not enabling the feature, while 1 and 2 will scale roughness value resulting in more glossy/reflective looking material.

    Glossy Fresnel (enabled by default)

    Toggling this will change the roughness of the material to be more glossy/reflective near grazing angles. Affects all specular/reflection lobes when enabled.

    Roughness is Glossiness (disabled by default)

    Toggle this to convert the specular/reflection roughness into glossiness/smoothness. With this enabled, increasing values will result in more glossy, reflective highlights. Lower values will produce rough, wider highlights.

    Trace BRDF Override (disabled by default)

    When enabled, forces reflections to use Ashihkmin Shirley instead of GGX BRDF, for both the base reflection lobe and the coat reflection lobe. Useful if you like to use the GGX BSDF only specular, but do not want the performance hit of raytracing GGX reflections.

    Visibility Options

    As the name implies, visibility options toggles visibility of the material in certain scenarios. Toggling camera visibility on and off will make the material visible or invisible to the camera. Diffuse and occlusion visibility controls whether or not the material is visible to occlusion and indirect light / global illumination. Reflection and refraction visibility does the same thing, but determines whether or not the material will be visible in other materials raytraced reflections and refraction. Last, but not least, shadows visibility determines whether or not the material cast shadows or do not cast shadows.

    Opacity Optimization

    You can find this control inside the Opacity section of the shader. The slider controls the level of optimization used by the shader. Only applicable when a texture is used as an opacity mask. Defaults to 0 (zero) which employs a more relaxed optimization. A setting of 1 works best with dark and saturated colors.

  • kyoto kidkyoto kid Posts: 40,575

    ..OK a bit of a strange situation here.  I've been running tests wit the new IBL Master on my bus stop scene. Renders much quicker than UE or Iray however been running into a few small but annoying matters. 

    In Default render mode I an geting shadow artefacts on one of the characters in the collar bone area. It was suggested I switch to Progressive mode, which I did, only to have it take much longer than Default bucket mode (more than three times longer 21m.20s for Bucket mode 1h:03m:57s for progressive mode) . Furthermore the highlight on the edge of the schoolbag in the scene has noticable  "jaggies" which is characteristic of poor anti aliasing which doesn't appear in Default render mode.  Even upping the pixel sample rate doesn't fix that and only slows the process down even more. Position and angle of the render camera are the same for both tests.

    Samples of the schoolbag highlight attached below.

    Image One: Default render

    Image Two: Progressive Render

    Image Three: Default render (the character on the left has the artefact issue).

    schoolbag default.jpg
    289 x 196 - 52K
    schoolbag Progressive.jpg
    380 x 212 - 77K
    bus stop HDR only.jpg
    1200 x 900 - 801K
  • Sven DullahSven Dullah Posts: 7,621
    edited January 2018
    kyoto kid said:

    ..OK a bit of a strange situation here.  I've been running tests wit the new IBL Master on my bus stop scene. Renders much quicker than UE or Iray however been running into a few small but annoying matters. 

    In Default render mode I an geting shadow artefacts on one of the characters in the collar bone area. It was suggested I switch to Progressive mode, which I did, only to have it take much longer than Default bucket mode (more than three times longer 21m.20s for Bucket mode 1h:03m:57s for progressive mode) . Furthermore the highlight on the edge of the schoolbag in the scene has noticable  "jaggies" which is characteristic of poor anti aliasing which doesn't appear in Default render mode.  Even upping the pixel sample rate doesn't fix that and only slows the process down even more. Position and angle of the render camera are the same for both tests.

    Samples of the schoolbag highlight attached below.

    Image One: Default render

    Image Two: Progressive Render

    Image Three: Default render (the character on the left has the artefact issue).

    I may have a workaround for you to remove the jaggies in progressive mode. Use DOF with the camera and slightly offset the focal point. Takes a bit of adjusting the DOF parameters, but when you get it right it works quite well, the quality of blur is controlled by sample pixels in render settings. It works in default mode too of course. As usual it's at the cost of slightly longer rendertimes.

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

    Decided to combine two shader into one.

    The soft shadows is calculated automatically based off the environment sphere. The scene literally is just an environment sphere, the metal/diffuse sphere  and a plane. Both the metal/diffuse sphere and plane used aweSurface.

    aweSurface now has shader based, global illumination. This is based of the variance based adaptive sampling GI shader I've been working on. With this enabled, you don't really need any other ambient, IBL, indirect light. Just use a primitive or an environment sphere with ambient enabled or have a scene and light it with any standard lights. You'll automatically get indirect / bounce light.

    It also smartly disables shooting indirect / bounce rays for parts of a material that doesn't have diffuse (ie full on glass or metal). Or shoot additional needed rays for translucency.

    I've also successfully made an environment sphere with correct orientation. Lets you actually see the environment texture in the viewport. The catch is that you need to disable 'Preview Lights' for the viewport since your scene is technically inside a solid sphere. Just remember that like omnifreaker's simpleSurface, you need to load the same texture into the diffuse color slot and ambient color slot.

    Last but not least, a new ambient shader for the environment ball or any other ambient-only surface with tiling controls. Since it has an offset, you can actually rotate the environment texture without manually rotating the sphere. It also comes with the usual visibility flags - camera, occlusion/indirect light, reflctions/refractions and shadows.

    Shader based GI 2.jpg
    1364 x 732 - 210K
    Shader based GI 3.jpg
    1362 x 730 - 183K
    Shader based GI.jpg
    1362 x 726 - 212K
    aweSurface GI.jpg
    636 x 1000 - 493K
    Post edited by wowie on
  • kyoto kidkyoto kid Posts: 40,575
    edited January 2018

    ...wrong thread.

    Post edited by kyoto kid on
  • Sven DullahSven Dullah Posts: 7,621
    edited January 2018

    I understand it's possible to access the pixel filters in progressive mode via scripting. Can it be done inside DS or do you have to use the 3Delight standalone renderer? I've found that the IBL Master lightshader renders about three times faster with progressive on my machine even without a lot of reflective/refractive stuff, but since progressive uses the box filter at 1x1 you often get jagged edges in areas with high contrast. Would be neat to be able to use for example the Catmull Rom or gaussian.

    Post edited by Sven Dullah on
  • kyoto kidkyoto kid Posts: 40,575

    ..has anyone written scripts to deal with the above?

  • timeofftimeoff Posts: 49

    I understand it's possible to access the pixel filters in progressive mode via scripting. Can it be done inside DS or do you have to use the 3Delight standalone renderer? I've found that the IBL Master lightshader renders about three times faster with progressive on my machine even without a lot of reflective/refractive stuff, but since progressive uses the box filter at 1x1 you often get jagged edges in areas with high contrast. Would be neat to be able to use for example the Catmull Rom or gaussian.

    I think kettu's scripted render is what you are looking for: https://www.daz3d.com/forums/discussion/comment/642793/#Comment_642793

  • Sven DullahSven Dullah Posts: 7,621
    timeoff said:

    I understand it's possible to access the pixel filters in progressive mode via scripting. Can it be done inside DS or do you have to use the 3Delight standalone renderer? I've found that the IBL Master lightshader renders about three times faster with progressive on my machine even without a lot of reflective/refractive stuff, but since progressive uses the box filter at 1x1 you often get jagged edges in areas with high contrast. Would be neat to be able to use for example the Catmull Rom or gaussian.

    I think kettu's scripted render is what you are looking for: https://www.daz3d.com/forums/discussion/comment/642793/#Comment_642793

    Thank you so much timeoff! I knew I had seen it somewhere but...great! I will have a go at it:)

  • Sven DullahSven Dullah Posts: 7,621
    timeoff said:

    I understand it's possible to access the pixel filters in progressive mode via scripting. Can it be done inside DS or do you have to use the 3Delight standalone renderer? I've found that the IBL Master lightshader renders about three times faster with progressive on my machine even without a lot of reflective/refractive stuff, but since progressive uses the box filter at 1x1 you often get jagged edges in areas with high contrast. Would be neat to be able to use for example the Catmull Rom or gaussian.

    I think kettu's scripted render is what you are looking for: https://www.daz3d.com/forums/discussion/comment/642793/#Comment_642793

    Thank you so much timeoff! I knew I had seen it somewhere but...great! I will have a go at it:)

    Ok had a look at it but it didn't give me any hints on how to add the pixel filter function to the script. So I presume it's possible to use inside DS with scripted rendering but I would need some help on what to add to the script to be able to use the filters:)

  • Mustakettu85Mustakettu85 Posts: 2,933

    Ok had a look at it but it didn't give me any hints on how to add the pixel filter function to the script. So I presume it's possible to use inside DS with scripted rendering but I would need some help on what to add to the script to be able to use the filters:)

    If you look at the comments in the code (the forum displays it on black somehow, so it's better to paste into a code text editor for reading even - on Windows Notepad++ is a good choice, hopefully there is something like that for Mac), it gives you step-by-step instructions. See the thing about basing the new script off the Standard Example? This example has the basic functions like the filter etc.

    What you may want later is either alter the default filter number in the interface script in the resource folder or (probably easier) save out a render settings preset that would load a decent filter for you. The standard DS default filter is sinc. At 6x6. Very REYES.

    IMO Catmull-Rom and gaussian look identical right now with the pathtracer at 2x2 widths, and offer almost identical performance as well.

  • Mustakettu85Mustakettu85 Posts: 2,933

    I understand it's possible to access the pixel filters in progressive mode via scripting. Can it be done inside DS or do you have to use the 3Delight standalone renderer? I've found that the IBL Master lightshader renders about three times faster with progressive on my machine even without a lot of reflective/refractive stuff, but since progressive uses the box filter at 1x1 you often get jagged edges in areas with high contrast. Would be neat to be able to use for example the Catmull Rom or gaussian.

    If you're only about to render with IBLMaster, BTW, which is AO only, you may want not to enable GI caching because it won't help.

  • Sven DullahSven Dullah Posts: 7,621

    @Mustakettu85

    Thanks a lot for the good advice! I will look into it and get back with more questions when I get lost:)

  • wowiewowie Posts: 2,029
    edited January 2018

    Global illumination tests. Render times are between 5 to 8 minutes, with 8x8 pixel samples. Lit with two area lights outside the room.

    Pretty much just ported the dsDefaultMaterials used by Stonemason to aweSurface. I did tweaked the colors for the brick wall, the floor and leaves (both on the indoor plants and outdoor one), mainly to get more saturated colors. Also boosted the displacements on the brick walls.

    5 minutes 51.60 seconds.jpg
    800 x 600 - 357K
    7 minutes 25.39 seconds.jpg
    800 x 600 - 406K
    8 minutes 9.88 seconds.jpg
    800 x 600 - 407K
    Post edited by wowie on
  • Working great, wowie! I still can't wait.

  • khorneV2khorneV2 Posts: 146

    +1

  • RAMWolffRAMWolff Posts: 10,146

    IS this still happening Wowie?  Those test renders look beyond awesome! 

Sign In or Register to comment.