10-11-2020, 11:34 AM
Thanks oort for making available the unofficial Yafary plugin, and thanks a lot Micheus for going on improving things for Wings3D. I like all these new tabs with plenty of new parameters to test
Just a short comment about the "Advanced" tab: even if I haven't read the whole Yafaray doc yet, I'm pretty sure about the role of the two options presented in there, because I've read about them in other sources. One common pb with shadow rays in ray-tracing applications, is that floating-point arithmetics used when computing ray/object intersection may find the intersection point slightly INSIDE the object instead of being on the surface (let's say 0.00001 unit distance just under the surface). So when casting shadow rays towards the light sources from this false intersection point, a shadow ray may encounter the object surface just above the intersection point, and thus may incorrectly set the intersection point as being in the shadow for the corresponding light source. Two solutions exist to solve that issue: either perform a so-called "shadow bias" (which is the first check on the "Advanced" tab) by moving the intersection point a little bit along the normal vector to ensure that the starting point is located ABOVE the surface, or use a "min ray distance" threshold (which is the second check on the "Advanced" tab) saying that when the new intersection point is too close to the previous intersection, it should be discarded as a false intersection. Both heuristics may fail for some pathological cases (e.g. fractal 3D objects), that's why the option may be unchecked on the plugin, but in most cases, I guess that it is pretty safe to let both options checked.
Just a short comment about the "Advanced" tab: even if I haven't read the whole Yafaray doc yet, I'm pretty sure about the role of the two options presented in there, because I've read about them in other sources. One common pb with shadow rays in ray-tracing applications, is that floating-point arithmetics used when computing ray/object intersection may find the intersection point slightly INSIDE the object instead of being on the surface (let's say 0.00001 unit distance just under the surface). So when casting shadow rays towards the light sources from this false intersection point, a shadow ray may encounter the object surface just above the intersection point, and thus may incorrectly set the intersection point as being in the shadow for the corresponding light source. Two solutions exist to solve that issue: either perform a so-called "shadow bias" (which is the first check on the "Advanced" tab) by moving the intersection point a little bit along the normal vector to ensure that the starting point is located ABOVE the surface, or use a "min ray distance" threshold (which is the second check on the "Advanced" tab) saying that when the new intersection point is too close to the previous intersection, it should be discarded as a false intersection. Both heuristics may fail for some pathological cases (e.g. fractal 3D objects), that's why the option may be unchecked on the plugin, but in most cases, I guess that it is pretty safe to let both options checked.
>>> sciroccorics <<<