How to imitate real world materials

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

How to imitate real world materials

Post by lighting_freak »

Hello all,

I'm a bit lost while trying to create a specific material. There are lots of numbers in node tree and I don't know what they are exactly doing.

This is an very simple example, maybe someone could help me to create the first node tree for that.

From light measurements I know that the surface that I want to imitate in luxcorerender has an overall (integral) reflectivity of 60% in neutral white color. 40% are absorbed.

This is the ratio for directional depencies of this 60% of reflection:
20% are matte (ideal lambertian diffuser)
40% are glossy with 0,1 roughness (kind of gaussian scattering with a given half angle)
40% is mirror like scattering (ideal specular reflection)

Let's assume that this ratio is valid for every incidence angle.

I'm really looking forward to your help.
Thank you.

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
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: How to imitate real world materials

Post by Dade »

lighting_freak wrote: Fri Nov 16, 2018 9:30 am From light measurements I know that the surface that I want to imitate in luxcorerender has an overall (integral) reflectivity of 60% in neutral white color. 40% are absorbed.

This is the ratio for directional depencies of this 60% of reflection:
20% are matte (ideal lambertian diffuser)
40% are glossy with 0,1 roughness (kind of gaussian scattering with a given half angle)
40% is mirror like scattering (ideal specular reflection)
You have to transform your Mix of 3 materials in a chain of Mix of 2 materials with something like:

Mix material(20% A, 40% B, 40% C) = Mix material(20% A, 80% Mix material(50% B, 50% C))

80% * 50% equal to the 40% you need. This trick can be applied to any number of mixed materials.
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: How to imitate real world materials

Post by lighting_freak »

Hi,

thanks for your support:
Is that the right nodetree to fullfil the describes requirements?
Node.jpg
To see more details - this is the related blend file:
real world material.blend
(562.93 KiB) Downloaded 191 times
Thank you.

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
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: How to imitate real world materials

Post by B.Y.O.B. »

I think your matte mix-in is reversed. Either switch the inputs or change the mix amount to 0.8.
(When the slider is at 0, only Material 1 is used. If the slider is at 1, only Material 2 is used)
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: How to imitate real world materials

Post by lighting_freak »

I dont't get it.

I thought this is the logic:

Section 1
Mixed with 0.5 factor (so 50% M1 and 50% M2)
M1 Glossy with 0.1 roughness (Color 0 (black) Diffuse and 1 (white) for specular color)
M2 Mirrot (Color 1 (white))

Section 2
Mixed with 0.2 factor (so 20% M1 and 80% M2)
M1 Matte material (Color 1 (white))
M2 Mixed material from section 1

Section 3
Mixed with 0.6 factor (so 60% M1 and 40% M2)
M1 Mixed material from section 2
M2 Matte material (Color 0 (black)) - my overall absorption

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
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: How to imitate real world materials

Post by Dade »

B.Y.O.B. wrote: Fri Nov 16, 2018 1:19 pm I think your matte mix-in is reversed. Either switch the inputs or change the mix amount to 0.8.
It looks correct to me :?:

The section #3 could be avoided (for instance by using kd=0.6 instead of kd=0.8) but it would me hard to do in the case of glossy material and it is probably easier to read as it is).

Does it work ? I mean does the material look like it should ?
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: How to imitate real world materials

Post by lighting_freak »

Hi,

Not yet. This my first test for working with values.
Those numbers came more or less free from mind.

Let's assume I've a real sample in front of me. How would you test whether is representation in luxcorerender is right? I can't reproduce the lighting conditions of my appartment easily (quickly) in blender.

For more realistic appearance I've to figure out much more details. But thanks to your help I've a valid point to start from.

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
kintuX
Posts: 810
Joined: Wed Jan 10, 2018 2:37 am

Re: How to imitate real world materials

Post by kintuX »

lighting_freak wrote: Fri Nov 16, 2018 4:50 pm Let's assume I've a real sample in front of me. How would you test whether is representation in luxcorerender is right? I can't reproduce the lighting conditions of my appartment easily (quickly) in blender.
For starters you create a controlled environment: a studio or a lab (ie. Cornell Box). You can also go in opposite direction, synthesize first and then try to reproduce for real (ie. Still File).
After, it becomes much easier to do comparative studies.
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: How to imitate real world materials

Post by lighting_freak »

Hi,

I've updated my real world material node.
Now there is a reflection, transmission and absorption portion available.
Each, the reflective and transmittive portion, could be separated into lambertian, gaussian and specular elements.
Node_ext.jpg
While testing the node setup an strange behaviour could be observed.
While entering 100% gaussian reflection and 100% gaussian transmission (both wirh tinies possible roughness) the transmitted part seems to be lambertian scatterd.
Is this a bug? There is the blend file.
real world material.blend
(872.66 KiB) Downloaded 157 times
Thanks for your advice

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
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: How to imitate real world materials

Post by Dade »

I'm not sure if it is intended but your "transition" and "reflection" sections are not transition-only and reflection-only: for instance the matte translucent material in your "transmission" section will also reflect (so the name of the two sections are quite misleading, is it intended ?).
Support LuxCoreRender project with salts and bounties
Post Reply