dark juice

Use this forum for general user support and related questions.
Forum rules
Please upload a testscene that allows developers to reproduce the problem, and attach some images.
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: dark juice

Post by lighting_freak »

Hi everyone,

it's more a question than a solution.
If the light source is not intersectable, why don't we make the eye point intersectable?
In all professional light simulation software solutions a pure forward simulation mode is used. I'm quite sure this forward (light) tracing could be speed up OpenCL. I know it works with CUDA.

To make the eye intersectable an integration cone for the camera is introduced... to define the cone usually an angle is used as a paramter that has the be defined by the user.
Integration_cone.zip
Excerpt of software manual
(189.58 KiB) Downloaded 168 times
This tracing type is of course only usable for tiny (or completly not intersectable) light sources.
Using such an algorythm may open a door to use measured light source files (ray files) to insert far field distribution as well as near field appearance of real light sources. Such ray files are usally delivered by the light source manufactureres (see example):

https://www.osram.com/apps/downloadcent ... LCY%20CEUP

BR
OS - Windows 7 X64
CPU - Intel CORE i7
GPU1 - Variants of notebook card from nVidia
GPU2 - Variants of notebook onboard card from Intel
Lux - Latest possible relaease
User avatar
Mango3
Posts: 32
Joined: Sun Oct 28, 2018 7:09 pm

Re: dark juice

Post by Mango3 »

Sharlybg wrote: Mon Aug 19, 2019 1:07 pm Example :

Dispersion node in cycles :
Image

Dispersion in luxcore :

disper.jpg
The node setup in Cycles (variation of the IOR for R,G, and B is exactly what LuxCore does automatically in the core. It is not any more a spectral render engine (like Lux-Classic, Maxwell or indigo) is in the sense that it traces a large range of wavelengths across the visible spectrum.

I fully agree with you that an efficient workflow with as view as possible but as many as necessary, unambiguous settings are desirable.

Corona is an example of an engine with an emphasis on artist centric settings which are relatively easy to newcomer and powerful enough for advanced users.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: dark juice

Post by Dade »

lighting_freak wrote: Mon Aug 19, 2019 3:16 pm If the light source is not intersectable, why don't we make the eye point intersectable?
It has been done only on some research renderer (for instance Mitsuba), the probability to hit the eye is so low, for a light path, that has very little practical application.
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: dark juice

Post by Dade »

Mango3 wrote: Mon Aug 19, 2019 6:36 pm The node setup in Cycles (variation of the IOR for R,G, and B is exactly what LuxCore does automatically in the core)
Uh ? No, LuxCore sample exactly all the visible wave lengths but only if required. Cycles trick produces a far worse results and it is totally inaccurate.
Support LuxCoreRender project with salts and bounties
User avatar
Mango3
Posts: 32
Joined: Sun Oct 28, 2018 7:09 pm

Re: dark juice

Post by Mango3 »

Dade wrote: Mon Aug 19, 2019 7:10 pm Uh ? No, LuxCore sample exactly all the visible wave lengths but only if required. Cycles trick produces a far worse results and it is totally inaccurate.
Sorry Dade if I stated some incorrect comments about LuxCore.
I think to remember that I read in this forum that when you rewrote LuxCore you decided to use RGB rendering for performance reasons and calculate dispersion in the core from RGB values instead of tracing > 10 wavelength bands like spectral renderer do. Seems my memory failed me on this one. No offence meant.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: dark juice

Post by Dade »

Mango3 wrote: Mon Aug 19, 2019 7:36 pm I think to remember that I read in this forum that when you rewrote LuxCore you decided to use RGB rendering for performance reasons and calculate dispersion in the core from RGB values instead of tracing > 10 wavelength bands like spectral renderer do.
Old Lux was tracing 4 sampled wave lengths and switching to a single wavelength in case of dispersion, LuxCore traces RGB (i.e. 3 fixed wavelengths) and switch to a single wavelength in case of dispersion. It is not so much different, it just produces a LOOOOT less noise.

It was called "heroic" wavelength or something like that, there must be a paper about this topic (it should be this one: https://cgg.mff.cuni.cz/~wilkie/Website ... 14HWSS.pdf).
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: dark juice

Post by lighting_freak »

Hi Dade,

Thanks for your feedback.
Dade wrote: Mon Aug 19, 2019 7:07 pm
lighting_freak wrote: Mon Aug 19, 2019 3:16 pm If the light source is not intersectable, why don't we make the eye point intersectable?
It has been done only on some research renderer (for instance Mitsuba), the probability to hit the eye is so low, for a light path, that has very little practical application.
The probabilty might be low, but it's not zero (as for none intractable light sources). This probability is influenced by the integration angle that should be a user parameter. Especially in case most light is somehow concentrated into the observer direction this tracing type seems to work very well.

Think about all cases the light source is behind a glass (bulb). There must be a reason for using this in professional software for lighting development.
OS - Windows 7 X64
CPU - Intel CORE i7
GPU1 - Variants of notebook card from nVidia
GPU2 - Variants of notebook onboard card from Intel
Lux - Latest possible relaease
User avatar
FarbigeWelt
Donor
Donor
Posts: 1046
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

It is Not the Glass Container, it is the Glass Itself

Post by FarbigeWelt »

It is Not the Glass Container, it is the Glass Itself :!:
This means intensity of volume scattering is limited by material glass properties to approximately the same energy level glass transmission is. What is okay for transmission is wrong for scattering because scattering might be as bright as if there were a (weak) light emission. Scattering material like matte transluscent wrapped in glass is rendered more correctly than glass own scattering volume. This means there is an error in glass‘ calculations.
Comparison of different material properties
Comparison of different material properties
Light and Word designing Creator - www.farbigewelt.ch - aka quantenkristall || #luxcorerender
MacBook Air with M1
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: It is Not the Glass Container, it is the Glass Itself

Post by Dade »

FarbigeWelt wrote: Tue Aug 20, 2019 6:58 am It is Not the Glass Container, it is the Glass Itself :!:
You need to have half of the juice directly visible to notice the difference (like in the original test scene). In your test, all the juice is under glass shadow.
Support LuxCoreRender project with salts and bounties
User avatar
FarbigeWelt
Donor
Donor
Posts: 1046
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

Re: It is Not the Glass Container, it is the Glass Itself

Post by FarbigeWelt »

Dade wrote: Tue Aug 20, 2019 7:36 am
FarbigeWelt wrote: Tue Aug 20, 2019 6:58 am It is Not the Glass Container, it is the Glass Itself :!:
You need to have half of the juice directly visible to notice the difference (like in the original test scene). In your test, all the juice is under glass shadow.
I think I see what you mean. I can arrange the cubes in a way they do not get any shadow. However, the sun is not directly top down the sun is tilted.
Light and Word designing Creator - www.farbigewelt.ch - aka quantenkristall || #luxcorerender
MacBook Air with M1
Post Reply