first test with water

Post your tests, experiments and unfinished renderings here.
blibli
Posts: 29
Joined: Thu Jan 18, 2018 2:52 pm

first test with water

Post by blibli »

Hi,

first of all, I'm very happy to see this project continue. I'll do my best to help with the little time I have. I made a quick test today. The new error log is extremely helpful !!! The new installation with just a click in user pref is also awesome. Some feedback on first test:
  1. When starting the rendering, there is always a 2second lag in the test scene I used (in the video below). Does the addon export all geometry every time? I couldn't find the older option to only export geometry that was not already exported (available in older luxcore versions).
  2. Sometime, it also stays at "creating session" for 20-30 seconds, but I couldn't find a way to make it reproducible, it seems random at first.
  3. Also, I got a lot of fireflies, any help appreciated if someone know how to get rid of them with a better water shader for example or to make nice stars with a bloom/convolution filter:
    https://streamable.com/s/lce1a/tvgfce
  4. The noise pattern of sobol are also pretty visible in videos but also in stills even at 64spp (in the shadow parts it's very visible).
    test0250.jpg
Other than that, it's fast, easy to use and give good results. I hope variance clamping and instances support will come back soon.
The new website is really cool and github is more practical for sources, tracker and builds in one place.

That's it at a first glance. I of course have ideas for new features, but I guess you already have a todo list, so I let you decide if you want more ideas or want to implements yours first.

Regards :)
Last edited by blibli on Sun Jan 21, 2018 8:26 am, edited 1 time in total.
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: first test with water

Post by B.Y.O.B. »

blibli wrote: Thu Jan 18, 2018 3:55 pm When starting the rendering, there is always a 2second lag in the test scene I used (in the video below). Does the addon export all geometry every time? I couldn't find the older option to only export geometry that was not already exported (available in older luxcore versions).
See this issue: https://github.com/LuxCoreRender/BlendLuxCore/issues/10
Yes, it's always re-exporting everything.
My attempts at a disk cache actually made the matter worse, so I didn't merge it.
blibli wrote: Thu Jan 18, 2018 3:55 pm Sometime, it also stays at "creating session" for 20-30 seconds, but I couldn't find a way to make it reproducible, it seems random at first.
I think the messages are not entirely deterministic. Sometimes LuxCore does something else in the background than what Blender shows in the status message.
Not sure where this comes from, I guess there is some threading involved.
blibli wrote: Thu Jan 18, 2018 3:55 pm Also, I got a lot of fireflies
You can try clamping.
I think it is already implemented in alpha1.

The todo list are the github issues. Feel free to add your feature requests there.
Attachments
df.png
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: first test with water

Post by B.Y.O.B. »

By the way, variance clamping is the one I meant above. There is no other clamping anymore.
I guess by "instance support" you mean dupliverts/particles etc.? It's under construction.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: first test with water

Post by Dade »

blibli wrote: Thu Jan 18, 2018 3:55 pm first of all, I'm very happy to see this project continue. I'll do my best to help with the little time I have. I made a quick test today. The new error log is extremely helpful !!! The new installation with just a click in user pref is also awesome. Some feedback on first test:
  1. When starting the rendering, there is always a 2second lag in the test scene I used (in the video below). Does the addon export all geometry every time? I couldn't find the older option to only export geometry that was not already exported (available in older luxcore versions).
  2. Sometime, it also stays at "creating session" for 20-30 seconds, but I couldn't find a way to make it reproducible, it seems random at first.
Are you using OpenCL (with NVIDIA GPU) ? I have the feeling what you are describing is the time required for kernel compilation by the driver (NVIDIA one is particularly slow).
There is also a kernel cache so a specific rendering kernel is compiled only the first time is encounter (this could explain the "random" behavior you are observing).
If you open the Blender console, you should see a lot of text messages, if you see something like:

Code: Select all

[LuxCore][1.876] [PathOCLBaseRenderThread::0] Defined symbols:  -D LUXRAYS_OPENCL_KERNEL -D SLG_OPENCL_KERNEL -D RENDER_ENGINE_PATHOCL -D PARAM_RAY_EPSILON_MIN=1.000000e-05f -D PARAM_RAY_EPSILON_MAX=1.000000e-01f -D PARAM_LIGHT_WORLD_RADIUS_SCALE=1.050000e+00f -D PARAM_TRIANGLE_LIGHT_HAS_VERTEX_COLOR -D PARAM_ACCEL_BVH -D PARAM_FILM_RADIANCE_GROUP_0 -D PARAM_FILM_RADIANCE_GROUP_COUNT=1 -D PARAM_ENABLE_TEX_CONST_FLOAT -D PARAM_ENABLE_TEX_CONST_FLOAT3 -D PARAM_ENABLE_TEX_IMAGEMAP -D PARAM_ENABLE_TEX_NORMALMAP -D PARAM_ENABLE_TEX_IRREGULARDATA -D PARAM_ENABLE_TEX_FRESNELCOLOR -D PARAM_ENABLE_TEX_FRESNELCONST -D PARAM_ENABLE_MAT_MATTE -D PARAM_ENABLE_MAT_GLOSSY2 -D PARAM_HAS_PASSTHROUGH -D PARAM_CAMERA_TYPE=0 -D PARAM_HAS_TRIANGLELIGHT -D PARAM_MAX_PATH_DEPTH=3 -D PARAM_MAX_PATH_DEPTH_DIFFUSE=3 -D PARAM_MAX_PATH_DEPTH_GLOSSY=3 -D PARAM_MAX_PATH_DEPTH_SPECULAR=3 -D PARAM_RR_DEPTH=5 -D PARAM_RR_CAP=5.000000e-01f -D PARAM_SQRT_VARIANCE_CLAMP_MAX_VALUE=0.000000e+00f -D PARAM_IMAGE_FILTER_TYPE=5 -D PARAM_IMAGE_FILTER_WIDTH_X=2.000000e+00f -D PARAM_IMAGE_FILTER_WIDTH_Y=2.000000e+00f -D PARAM_IMAGE_FILTER_PIXEL_WIDTH_X=1 -D PARAM_IMAGE_FILTER_PIXEL_WIDTH_Y=1 -D PARAM_SAMPLER_TYPE=2 -D PARAM_SAMPLER_SOBOL_RNG0=9.965103e-01f -D PARAM_SAMPLER_SOBOL_RNG1=9.467506e-02f -D PARAM_SAMPLER_SOBOL_STARTOFFSET=32 -D PARAM_SAMPLER_SOBOL_MAXDEPTH=3
[LuxCore][1.876] [PathOCLBaseRenderThread::0] Compiling kernels 
[LuxCore][3.102] [PathOCLBaseRenderThread::0] Kernels not cached
The "Kernels not cached" means the driver is compiling the kernel.
blibli wrote: Thu Jan 18, 2018 3:55 pm Also, I got a lot of fireflies, any help appreciated if someone know how to get rid of them with a better water shader for example or to make nice stars with a bloom/convolution filter:
https://streamable.com/s/lce1a/tvgfce
As suggested by B.Y.O.B., just use variance clamping: it only needs a couple of rendering tests. If the value is too low, you will start to cut highlights, if it is too high, fireflies will start to appear. Just do a couple of tests to find the middle ground you like (an example: https://www.youtube.com/watch?v=9KqzfxgMRuA)
blibli wrote: Thu Jan 18, 2018 3:55 pm The noise pattern of sobol are also pretty visible in videos but also in stills even at 64spp (in the shadow parts it's very visible).
Image https://imgur.com/a/GI3zb
This is somewhat expected from Sobol sampler, it is noise under another form. Regular patterns Vs. random noise: in both case you need more samples for a clean image.
If you prefer one type over the other, you can use the RANDOM sampler instead of SOBOL. However, I'm not sure if BlendLuxCore exposes the RANDOM sampler :?:
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: first test with water

Post by B.Y.O.B. »

Dade wrote: Thu Jan 18, 2018 7:57 pm This is somewhat expected from Sobol sampler, it is noise under another form. Regular patterns Vs. random noise: in both case you need more samples for a clean image.
I also observe obvious patterns that don't disappear for a long time in some renderings.
See the attached image for example.
If you open this site http://noobody.org/is-report/simple.html and scroll to the bottom, that's more what I would expect from the Sobol sampler.
Cycles also does not show these patterns in its Sobol sampler.
Dade wrote: Thu Jan 18, 2018 7:57 pm However, I'm not sure if BlendLuxCore exposes the RANDOM sampler
It does not.

Testscene of the attached image: https://www.dropbox.com/s/2al6eptp472in ... l.zip?dl=1
Attachments
sobol.png
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: first test with water

Post by Dade »

https://github.com/LuxCoreRender/LuxCore/issues/49

BTW, another simple solution to the water "fireflies" is to disable visibility of the sun in indirect specular paths. Simon, it should be probably be default setting for any *PATH* render engine as the Sun is just fireflies generator for anything but BIDIR.
Support LuxCoreRender project with salts and bounties
blibli
Posts: 29
Joined: Thu Jan 18, 2018 2:52 pm

Re: first test with water

Post by blibli »

regarding the 20-30sec freeze, I'm indeed using both Nvidia and AMD, so it's what both of you said, a kernel compilation with the wrong status message in the UI, thanks. BYOB if you find the problematic code part, maybe the bug could be reported to the Blender tracker for hopefully a bugfix for 2.79a?
Regarding the pattern, it stays even at pretty high sample count, while Mitsuba for example has no pattern even at 4²=16 samples. It's very visible in renders with no or subtle textures where the pattern really pops-up like in BYOB's example.
Regarding fireflies, clamping works very good, but the patterns appear everywhere then:
Imagehttps://imgur.com/a/RUD4l
Sorry I somehow can't successfully add images in my post.
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: first test with water

Post by B.Y.O.B. »

blibli wrote: Fri Jan 19, 2018 7:01 am regarding the 20-30sec freeze, I'm indeed using both Nvidia and AMD, so it's what both of you said, a kernel compilation with the wrong status message in the UI, thanks. BYOB if you find the problematic code part, maybe the bug could be reported to the Blender tracker for hopefully a bugfix for 2.79a?
It's not a bug in Blender. It just is a bit random which of the messages we pass to engine.update_stats() are shown when Blender seems to "hang" during export.
Also, the kernels are compiled after the "creating session" message is shown, so technically it was correct, the wording was just a bit misleading. I changed that.
I now added the same message for OpenCL engines like we had in old LuxBlend: https://github.com/LuxCoreRender/BlendL ... a2f2e0R118
blibli
Posts: 29
Joined: Thu Jan 18, 2018 2:52 pm

Re: first test with water

Post by blibli »

Thanks, regarding the noise pattern and it's increase when using clamping, should I open an issue on github?
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: first test with water

Post by Dade »

blibli wrote: Sat Jan 20, 2018 7:18 am Thanks, regarding the noise pattern and it's increase when using clamping, should I open an issue on github?
It may be more visible but I doubt it objectively increase: for instance, you are using auto-linear tone-mapping and it was affected by the presence of fireflies (i.e. the image brightness was changing during the animation); without fireflies, the auto-linear use a more constant brightness and the pattern may be easier to spot.

Anyway, I will work on this topic after the release of alpha2, it shouldn't be hard to fix.
Support LuxCoreRender project with salts and bounties
Post Reply