Ever lasting render

Post your tests, experiments and unfinished renderings here.
Post Reply
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Ever lasting render

Post by lighting_freak »

Hi,

I've seen lots of nice renders of prisms in the different forum topics, so I tried to do one on my own.
Since a mesh source with small spread is not working (see: viewtopic.php?f=4&t=87) I used a spot with narrow spread.

The major difference that I wanted to achive is that I wanted to see what happens inside the prism. To get this goal not only the world carries a scattering medium but the prism also.

The Prism IOR and Cauchy values are equal to SF10 coming from https://de.wikipedia.org/wiki/Cauchy-Gleichung. Sorry it's German.

Finally I receive that image:
Prisma.JPG
It took me about 2 days of continuous rendering.
How do some people receive almost noiseless results within minutes.
Is it possible to get results more quickly without faking anything? So multiple scattering and perfectly polished surfaces shall be kept to keep the real world physics alive.

I'm looking forward to your hints. This is the sample scene:
MyPrism.blend
(594.24 KiB) Downloaded 362 times
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: Ever lasting render

Post by Dade »

You are rendering 3840x2160 image with an eye path of 32 and a light path of 32 and multi-scattering. I will give you just some number so you can have an idea of what you are trying to achieve :D

- the average rays traced for each samples are 110 (it is the highest number I have ever seen !!!). It is a very important statistic you should always keep your eyes on :idea:

- at 3840x2160 pixel with 5000 samples per pixel, you are going to need 3840 * 2160 * 5000 = 41,472,000,000 samples in total (billions !)

- the total rays to traces are 3840 * 2160 * 5000 * 110 = 4,561,920,000,000 (trillions ?).

Now, the point is that you don't need to achieve such numbers to render this scene:

- multi-scattering is important to render some specific material. The classic example is milk (may sounds strange but true milk is something hard to render). It is a rare event for air and, I assume, for the prism material you are using.
Disabling multi-scattering takes the average rays per sample from 110 to 10. We are already running 11 times faster.

- your scene is highly dominate by light paths (it could even be rendered with LIGHTCPU and not BIDIRCPU). Eye paths are going to be very short. In general, without multi-scattering, we can reduce the eye to something like 5 and the light path to something like 10. This further reduce the the average rays per sample to 9.5. As you see, the difference is small because nearly all paths will never need to be longer than 5+10.

- I render the scene at 960x540 for doing a fast test.

The result in 10mins is:
prism.jpg
Which seems quite reasonable to me. As you see, the key point is to disable multi-scattering.
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: Ever lasting render

Post by Dade »

BTW, it is a beautiful scene, do you mind if I use it in https://github.com/LuxCoreRender/LuxCoreTestScenes :?:
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: Ever lasting render

Post by lighting_freak »

Hi,

I'm a bit surprised that you want to use that simple scene but yes, feel free to use it.

Do you need anything else or is the *.blend file enough?

Thanks for your detailed explaination.
My approach is to keep the physical correctness in the result.
In real world diffuse media show multiple scattering events, don't they?
I'm dreaming of a lux core that calculates real and reliable luminance values like false colour interpretation of classic lux as well as human eye like (so more than photo realistic) images.

Does the suggested changes influence the result quality regarding it's physics base?

Lot of my real work requires light scattering though very milky materials. Usually behind those materials is a clear light pipe that requires lots of total inner reflection intersection. This pipe are usually fed by tiny LED emitter chip (0.3mm x 0.3mm in size).

EDIT
Where do I find the described statistics?

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: Ever lasting render

Post by B.Y.O.B. »

The rays/sample statistic is not yet exposed in the addon.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Ever lasting render

Post by Dade »

An over night rendering on my old i7 860 (32,000 samples/pixel):
image.png
lighting_freak wrote: Thu Feb 08, 2018 6:47 am In real world diffuse media show multiple scattering events, don't they?
Not to a significative extend, in particular for air. At the end of the day, you can just do a test with and without multi-scattering (at a low resolution) and check if there is any difference. Comparing my rendering with your, I would say there isn't any difference.
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: Ever lasting render

Post by lighting_freak »

Hi,

Thanks for effort. You're right the image looks identical on a first glance... what is about the energy conservation?

Could one check the amount of energy in that scene?

Is there any rule that describes that this material thickness and this scattering value requires multi scattering?

I'll continue investigating this materials... thanks again.

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: Ever lasting render

Post by Dade »

lighting_freak wrote: Thu Feb 08, 2018 11:57 am Is there any rule that describes that this material thickness and this scattering value requires multi scattering?
Well, it is based on the probability of a scattering event: if the probability is low, the probability of 2+ scattering events in a single path is a lot lower so the contribution of multi-scattering to the rendering becomes very low. This is also true if the light absorbed in a scattering event is high (i.e. multiple scattering events will take the reflected light to nearly zero).

So you need a combination of high scattering probability and low light absorbed to have a significative impact on the visual result of multi-scattering.

If you check volume rendering related papers (like http://iliyan.com/publications/PointsBeamsPaths), you can find usually some details about this kind of stuff.
Support LuxCoreRender project with salts and bounties
lighting_freak
Posts: 234
Joined: Thu Jan 18, 2018 6:02 pm

Re: Ever lasting render

Post by lighting_freak »

Hello,

This is one of those milky materials I like to use in lux core as well as lux render. Even 1mm of this occurs like a white opaque plastic if you have done almost even environment illumination around it.
Albis Alcom diffuse PC
Albis Alcom diffuse PC
Albis_hotspot.jpg
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
SATtva
Supporting Users
Posts: 30
Joined: Sun Dec 17, 2017 10:27 am
Contact:

Re: Ever lasting render

Post by SATtva »

There was a 'scatter' material in Classic Lux useful for this kind of things (it required some elaborate setup though). I always wondered whether it's possible to have a translucent material but, unlike matte translucent, with configurable mean scattering angle.
Post Reply