Page 1 of 3

New Albedo settings and more Denoiser related changes

Posted: Mon Jun 28, 2021 10:08 am
by Dade
Introduction

I have added few new options and chages with the aim to improve the Intel OIDN denoiser output. This is a rendering with v2.5:

dnone.jpg

and this with v2.6:

dboth.jpg

Albedo AOV new specular reflections and transmissions settings

It is now possible to define how ALBEDO AOV will handle reflections and transmissions:

Code: Select all

# Possible settings NO_REFLECT_TRANSMIT, ONLY_REFLECT, ONLY_TRANSMIT, REFLECT_TRANSMIT
# New default REFLECT_TRANSMIT (v2.5 hard-coded behavior was ONLY_REFLECT)
path.albedospecular.type = REFLECT_TRANSMIT
path.albedospecular.glossinessthreshold = 0.05
The is the result of NO_REFLECT_TRANSMIT setting:

noreflecttransmit.jpg

This is the result of REFLECT_TRANSMIT setting:

reflecttransmit.jpg

New Intel OIDN plugin option for auxiliary buffers pre-filtering

It is now possible to enable/disable auxiliary buffers pre-filtering:

Code: Select all

film.imagepipelines.1.0.type = INTEL_OIDN
# 1 or 0 to enable/disable
film.imagepipelines.1.0.prefilter.enable = 1
This is Albedo without/with pre-filtering:

prefilter.jpg

I doubt it is necessary to expose this setting in Blender because having pre-filtering should always be better.


Pixel filtering to preserve details

As some recent test has shown, pixel filtering should be enabled (with path tracing) even when using Intel OIDN:

pf1.jpg
pf2.jpg

It can be enabled only for path tracing and not for BiDir because BiDir pixel filtering drives OIDN crazy while it seems to tollerate path tracing pixel filtering. Some further test may be required.

Re: New Albedo settings and more Denoiser related changes

Posted: Tue Jun 29, 2021 8:23 pm
by juangea
Super cool!

I’ll test it ASAP, having the transmissible option is awesome :)

Re: New Albedo settings and more Denoiser related changes

Posted: Tue Jun 29, 2021 9:59 pm
by B.Y.O.B.
I added support in BlendLuxCore, in the denoiser settings in the render properties.

Some test images:
"old" = like 2.5, with albedo being NO_REFLECT_TRANSMIT and prefiltering off
"new" = albedo is REFLECT_TRANSMIT and prefiltering on

Re: New Albedo settings and more Denoiser related changes

Posted: Tue Jun 29, 2021 11:24 pm
by Dade
It looks good to me.
B.Y.O.B. wrote: Tue Jun 29, 2021 9:59 pm Some test images:
"old" = like 2.5, with albedo being NO_REFLECT_TRANSMIT and prefiltering off
"new" = albedo is REFLECT_TRANSMIT and prefiltering on
Have you tried to re-enable pixel filtering (only for path tracing) even with OIDN ? The difference should be visible on a scene with bump mapping :idea:

Re: New Albedo settings and more Denoiser related changes

Posted: Wed Jun 30, 2021 7:10 am
by B.Y.O.B.
Pixel filtering was already used with OIDN.
In the Blender addon, it was only disabled when using Bidir or Path + Light Tracing (because light traced caustics are not properly denoised by OIDN when they have pixel filtering).

In the test scene above, pixel filtering is not used because of light tracing.

Re: New Albedo settings and more Denoiser related changes

Posted: Wed Jun 30, 2021 8:17 am
by Sharlybg
B.Y.O.B. wrote: Wed Jun 30, 2021 7:10 am Pixel filtering was already used with OIDN.
In the Blender addon, it was only disabled when using Bidir or Path + Light Tracing (because light traced caustics are not properly denoised by OIDN when they have pixel filtering).

In the test scene above, pixel filtering is not used because of light tracing.
With this new addition. Do user have something to setup or it is done internally according to render engine setting.

Re: New Albedo settings and more Denoiser related changes

Posted: Wed Jun 30, 2021 8:23 am
by B.Y.O.B.
These new features are enabled by default.

Re: New Albedo settings and more Denoiser related changes

Posted: Wed Jun 30, 2021 8:48 am
by Sharlybg
B.Y.O.B. wrote: Wed Jun 30, 2021 8:23 am These new features are enabled by default.
Great ;)

Re: New Albedo settings and more Denoiser related changes

Posted: Fri Jul 02, 2021 11:06 am
by daros
HI, we are experiencing some strange behaviour with Lux 2.6 alpha 0 + oidn 1.4.
In some cases results are worst as with the previous. What are we doing wrong?

albedo reflect+transmit on, treshold 0.5
View 01 600x300_1.jpg

this is the old luxcore and old oidn
View 01 600x300old_1.jpg

albedo reflect+transmit on, treshold 0.5
View 01 600x300new_1.jpg

this is the old luxcore and old oidn
View 01 600x300_2.jpg
0_FI_69544_274697_0000_albedo_1.jpg
0_FI_69544_274697_0000_avgShadingNormal_1.jpg

this one is with higher sampling level:
View 01 600x300high_1.jpg

Re: New Albedo settings and more Denoiser related changes

Posted: Fri Jul 02, 2021 1:28 pm
by Dade
daros wrote: Fri Jul 02, 2021 11:06 am albedo reflect+transmit on, treshold 0.5
Have you misread the default value ? You should use 0.05, not 0.5.

It is a glossiness threshold used here like on other contexts of LuxCore: it is a roughness threshold under which a glossy material will be considered as specular (i.e. nearly like a mirror and/or glass if it is a transmitting material).