Page 6 of 23

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Mon Jun 24, 2019 7:41 pm
by B.Y.O.B.
provisory wrote: Mon Jun 24, 2019 6:06 pm How to disable the light visibility in specular paths?
In BlendLuxCore, this is possible for the following light types:
- sky
- sun
- infinite (aka "HDRI" in world or hemi settings)
- constantinfinite (aka "flat color" in world or hemi settings)

The setting can be found in the "Visibility" panel of the lamp properties.
https://wiki.luxcorerender.org/BlendLux ... Visibility

In LuxCore, it is also possible to set these flags on materials, however this was apparently never exposed in BlendLuxCore (I guess I simply forgot it).
However, I have a comment in the area light code:
# Note: do not add support for visibility.indirect.* settings, they are useless here
# because the only sensible setting is to have them enabled, otherwise we lose MIS
https://github.com/LuxCoreRender/BlendL ... ht.py#L322
The problem was that making an emissive material invisible to certain rays creates excessive noise because of missing MIS.
I'm not sure if this new hybrid back/forward feature would be an exception to this rule?

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Mon Jun 24, 2019 8:33 pm
by provisory
Thank you!

I was looking for it at the area lights for testing, but it's not that important.

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Mon Jun 24, 2019 10:28 pm
by Dade
B.Y.O.B. wrote: Mon Jun 24, 2019 7:41 pm I'm not sure if this new hybrid back/forward feature would be an exception to this rule?
Nope, it isn't.

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 10:12 am
by B.Y.O.B.
I have exposed this feature in BlendLuxCore.
If OpenCL is used, the CPU is completely dedicated to light tracing automatically.
If only the CPU is used, the user can control the amount of computing power to spend on light rays (default: 20%).

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 11:11 am
by Dade
Dade wrote: Sun Jun 23, 2019 12:42 pm Glossy caustics

If this solution replaces caustic cache, I will add the support for glossy caustics too. It currently render only specular caustics like caustic cache.
I added the support for rendering glossy caustics. This is normal path tracing:

off.jpg

and this is Hybrid:

on.jpg

The threshold to handle a glossy surface like specular ones can be defined with:

Code: Select all

path.hybridbackforward.glossinessthreshold = 0.05
It works exactly like PhotonGI glossiness threshold.

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 11:19 am
by Sharlybg
and this is Hybrid:
in the hybrid render caustics are not reflected on the cube. is this is the normal behaviour ?

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 11:36 am
by Dade
Sharlybg wrote: Tue Jun 25, 2019 11:19 am in the hybrid render caustics are not reflected on the cube. is this is the normal behaviour ?
It is the definition of SDS path: you can not see caustics reflected in mirrors(-like).

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 11:41 am
by FarbigeWelt
Sharlybg wrote: Tue Jun 25, 2019 11:19 am
in the hybrid render caustics are not reflected on the cube. is this is the normal behaviour ?
This is a good question. Looks like BiDir behavior. BiDir does not mirror everything, e.g. scattered laser beams, it looks like BiDir only renders with max depth of one in these cases. Is there any good reason? Is not every reflection, diffuse or specular, similar to a new light source casting in any or a specific direction? LucCoreRender is able to handle more than a million lights per scene. Why not treating intersections of rays with surfaces or scattering volumes as new lights?

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 11:44 am
by provisory
Just out of curiosity, LIGHTCPU in itself can trace SDS paths?

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Posted: Tue Jun 25, 2019 12:02 pm
by happyboy
I've tried it with a bathroom scene (there is a glass shower and a mirror), which looks good. However, all my emissive objects are black. Is it intended or a bug? After disabling Hybrid Back/Foward path tracing, these objects are emissive again. I'm using OCL and partition = 0 (CPU only do light paths).

Thanks!