DLSC Explained

Discussion related to the LuxCore functionality, implementations and API.
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

DLSC Explained

Post by Sharlybg »

Hi ! As there already a lot of project starting to use DLCS feature i open this thread to let developper Give complete information on how each DLCS settings work and impact rendering. Maybe also the place to know wich parameters need to be expose or which one can be automatically be computed with user given Data so we avoid hyper trial error learning process and also too much setting complexity (like Old Vray).
After getting clear understanding of that The Wiki/Tutorial phase will be more effective. So let Demistify DLCS together :

1/ What are all DLCS available parameters ?

2/ What each of them does ?

3/ Which one could be automatically computed ?

4/ Any possibility to have live render efficiency number to clearly see when to use and when DLCS outperform other Light strategy ?
Last edited by Sharlybg on Sun Dec 02, 2018 4:26 pm, edited 2 times in total.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: DLCS Explained

Post by Sharlybg »

Dade and BYOB :?:
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: DLCS Explained

Post by Dade »

Your a mostly going to face 2 types of problems when using DLSC:

1) some area can include a LOT of noise if it is not covered by a cache entry (note noise, not artifacts);

2) some area can be in shadow while it shouldn't if the cache entry has wrong list of visible lights attached;

The problem #1 can happen when you are rendering a scene with a scale significantly different from the one of the small room (the default cache entry radius is 0.15m, 15cm). For instance, if you are rendering a city, you will have to increase the radius a lot otherwise you will end with problem #1.

The problem #2 can happen when you are rendering some "hard" to find light source. The default number of samples used to establish if a light source is visible or not is 12 (aka the warmup parameter). It is a very low value, it can easily lead to false result. If you have problems like #2, just increase the value until when the artifacts are gone (indeed, this will increase the pre-processing time).
Support LuxCoreRender project with salts and bounties
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: DLCS Explained

Post by Sharlybg »

Dade wrote: Wed Oct 24, 2018 10:40 am Your a mostly going to face 2 types of problems when using DLSC:

1) some area can include a LOT of noise if it is not covered by a cache entry (note noise, not artifacts);

2) some area can be in shadow while it shouldn't if the cache entry has wrong list of visible lights attached;

The problem #1 can happen when you are rendering a scene with a scale significantly different from the one of the small room (the default cache entry radius is 0.15m, 15cm). For instance, if you are rendering a city, you will have to increase the radius a lot otherwise you will end with problem #1.

The problem #2 can happen when you are rendering some "hard" to find light source. The default number of samples used to establish if a light source is visible or not is 12 (aka the warmup parameter). It is a very low value, it can easily lead to false result. If you have problems like #2, just increase the value until when the artifacts are gone (indeed, this will increase the pre-processing time).

NIce thank you for your explanation.

So the end user just need theses only two parameters to work with ?

. Cache entry radius : The bigger the scene the bigger the number

. Warmup parameter : The harder light source can be find higher the number should be

So is there any reason to keep other settings available ?
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: DLCS Explained

Post by Dade »

Sharlybg wrote: Wed Oct 24, 2018 11:19 am So the end user just need theses only two parameters to work with ?
99% of times, yes.
Sharlybg wrote: Wed Oct 24, 2018 11:19 am . Cache entry radius : The bigger the scene the bigger the number
And smaller scenes and smaller is the number.
Sharlybg wrote: Wed Oct 24, 2018 11:19 am . Warmup parameter : The harder light source can be find higher the number should be

So is there any reason to keep other settings available ?
Corner cases but they can be under and "Advanced" tab as usual.
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: DLCS Explained

Post by B.Y.O.B. »

Sharlybg wrote: Wed Oct 24, 2018 11:19 am Cache entry radius : The bigger the scene the bigger the number
Could we automatically compute this? (Maybe from scene bounding box)
If yes, we could show a multiplier to the user for those cases where the auto-computed value has to be adjusted.
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: DLCS Explained

Post by lacilaci »

btw, was this issue (viewtopic.php?f=4&t=483&start=20) with skylight fixed?
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: DLCS Explained

Post by Dade »

B.Y.O.B. wrote: Wed Oct 24, 2018 2:38 pm
Sharlybg wrote: Wed Oct 24, 2018 11:19 am Cache entry radius : The bigger the scene the bigger the number
Could we automatically compute this? (Maybe from scene bounding box)
If yes, we could show a multiplier to the user for those cases where the auto-computed value has to be adjusted.
Not really: you can still have the model of a city and just be inside a room (so using the scene bounding box would be very misleading). It is also related to the "size" of observer/camera: an ant would need tiny values while a elephant would use larger one (i.e. it is related to the portion of the scene you are looking at).
Support LuxCoreRender project with salts and bounties
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: DLCS Explained

Post by Dade »

lacilaci wrote: Wed Oct 24, 2018 3:06 pm btw, was this issue (viewtopic.php?f=4&t=483&start=20) with skylight fixed?
It is exactly problem #2 listed here.
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: DLCS Explained

Post by B.Y.O.B. »

lacilaci wrote: Wed Oct 24, 2018 3:06 pm btw, was this issue (viewtopic.php?f=4&t=483&start=20) with skylight fixed?
In the next release, you will have the "warmup samples" parameter available to fix it.
Post Reply