Reflection softness

Started by KlausK, December 20, 2016, 05:49:09 AM

Previous topic - Next topic

KlausK

hi everyone, it`s been a while...

While playing around with the Reflective Shader I stumbled upon what you can see in the attached picture.
As soon as I set the "Reflection softness" under "Ray traced reflections" to anything other than "0" I cannot get rid of the quadrants pattern anymore.
Pumping up the "Number of samples" on the "Quality" tab (128 was the highest I tried) does not really help, but adds to render time, obviously.
Also, raising the "Ray detail multiplier" in "Render subdiv settings" in the "Renderer" node to "1" did not do it.

I am on a Dual Xeon with 2x 8 cores, so TG detects 32 processor cores (when left on automatic core detection).
There is a noticable difference in the rendered picture when I change the cpu cores I let TG use.
The attached picture shows renders with cores and threads set to 16-16, 32-32,16-2 etc..

It looks a little bit like the problem in the other thread a few days back, where someone posted a picture rendered by pixel plow render farm.

Would anybody have any idea what I might be missing here?
Or does someone experience the same behaviour with this scene, perhaps?

cheers, Klaus

/ ASUS WS Mainboard / Dual XEON E5-2640v3 / 64GB RAM / NVIDIA GeForce GTX 1070 TI / Win7 Ultimate . . . still (||-:-||)

archonforest

I had a somewhat similar problem. What I did is I kept the softness on 0 and used the Blinn-Beckmann only. Then there were no more squares....
Dell T5500 with Dual Hexa Xeon CPU 3Ghz, 32Gb ram, GTX 1080
Amiga 1200 8Mb ram, 8Gb ssd

KlausK

Thanks.
That is what you see in the top left render of the attached picture.

But if I wanted to soften the reflection of the sphere all around the Blinn-Beckmann does not help, I think.
It only affects the highlights, doesn`t it? I put in very high numbers for a try into the specular roughness
of the "Specular highlights" and raised the "Highlight intensity" as well.
So, knowing nothing about the inner workings of TG, and presuming there is something going on between
the reflection softness and the number of cores and/or threads, and not me doing something wrong,
this seems not to be working correctly (I do not want to cry BUG because, you know, I don`t...know).
But I would rather have to do it in post then, I guess?

cheers, Klaus



/ ASUS WS Mainboard / Dual XEON E5-2640v3 / 64GB RAM / NVIDIA GeForce GTX 1070 TI / Win7 Ultimate . . . still (||-:-||)

pokoy

Quote from: KlausK on December 20, 2016, 07:06:11 AM
Thanks.
That is what you see in the top left render of the attached picture.

But if I wanted to soften the reflection of the sphere all around the Blinn-Beckmann does not help, I think.
It only affects the highlights, doesn`t it? I put in very high numbers for a try into the specular roughness
of the "Specular highlights" and raised the "Highlight intensity" as well.
So, knowing nothing about the inner workings of TG, and presuming there is something going on between
the reflection softness and the number of cores and/or threads, and not me doing something wrong,
this seems not to be working correctly (I do not want to cry BUG because, you know, I don`t...know).
But I would rather have to do it in post then, I guess?

cheers, Klaus

Could be that blurry reflections are calculated together with GI to speed them up, in that case increasing GI samples/quality would help.

Dune

How soft do you need it? It's best not to overdo the smoothing in the reflective shader, I usually do 0.002 or 0.004, without needing to up samples. Another way would perhaps be to first render a spherical image of the terrain without the ball and then smooth this in PS, project it onto the ball. I don't know if that would work well

Kadri

#5

Years ago when i tried reflections(transparancy?) i had the same problem sometimes.
The bucket size or any other option i tried didn't matter. It worked without a problem only when i rendered with only one thread.
Pure speculation but this setting might have the same problem maybe.

Don't know what you want to do, but if you want to do an animation and can use the render layers-elements, render all parts except the reflective ones normally with many threads you want. And the reflective parts by themselves with only one thread separately and comp them later.
You can use more then one instances of Terragen to make it work faster too anyway. Postwork might be easier probably.

fleetwood

You might want to read these posts on about the same problem. I thought it was a bug but the problem was using values for softness that are too high causing those squares. Very tiny values are what is needed.

http://www.planetside.co.uk/forums/index.php/topic,20380.msg202056.html#msg202056

KlausK

Thanks everybody.
I hope I did not waste your time with this but there is no "Real Working" problem behind this.
Simply because the renders looked like this I am trying to figure out and understand what is going on.

pokoy: yes, upping the GI sample quality helps to some degree

dune: see above. It`s only playing around with the settings and coming across stuff I can`t make sense of.
The examples are completely overdone, of course. Reflection softness was set to 0.9, 2, 4, and even higher numbers.
Surely I did not know what suitable numbers to put in, at first.
But your solution would be a good workaround for sure.

kadri: also a good workflow to get this out of the way.
And your observations regarding the cores and threads seem to come close to mine.

It is simply puzzling me, why that happens. Take a look at the new attachments.
I think the softness in this picture might be one might want or use in a project.
Maybe like a blurry smeary magic crystal ball reflection or something.

I set the cores to 16 and to maximum 16 threads as well.
The softness in 01...jpg does not look too exaggerated, I think. This was set to 0.2.
Reflection softness set to 0.1 and the edges are visible still.
Picture 02...jpg has softness set to 0.05 and it is ok regarding the edges but already too "sharp".

It`s about finding the right balance between these values, as it always is (yawn ::) ) and there are workarounds.
That is good to know. Because upping all the samples settings available in the involved nodes makes this almost unusable.
The render times simply go through the roof.
I really wonder why it occurs at all.

cheers, Klaus

ps: fleetwood - that`s very helpful. Thanks. I did not search long enough...





/ ASUS WS Mainboard / Dual XEON E5-2640v3 / 64GB RAM / NVIDIA GeForce GTX 1070 TI / Win7 Ultimate . . . still (||-:-||)

Kadri

Quote from: fleetwood on December 20, 2016, 10:14:12 AM
You might want to read these posts on about the same problem. I thought it was a bug but the problem was using values for softness that are too high causing those squares. Very tiny values are what is needed.

http://www.planetside.co.uk/forums/index.php/topic,20380.msg202056.html#msg202056

Yes if you use high number of samples the problem goes away in the end.
But still, if you render with one thread it doesn't matter how many samples you use.
Try it with your example in your post. You got no square render problems at all.

Hannes

Is "stabilize ray detail" (Render subdivision settings) unchecked? I remember I had similar problems and found that unchecking this solved it.

Oshyan

This is a known issue with the current rendering method for soft reflections. The intended current method to get good results is to use rather small values for softness, as others have said, and then to increase samples to get rid of any artifacts. Using higher values (and I realize that "high" is a funny word here because even anything above 0.1 is a problem actually) will cause problems almost no matter what your sample values, detail, or other settings, because it's fundamentally limited in the renderer in some respects.

The good news is we are working on a new method for rendering soft reflections, along with other effects, with much better quality and performance (for a given quality level). You can see an example in our Holiday Sale image this year, which was rendered entirely in Terragen using an in-development path tracing mode for the renderer:
https://pbs.twimg.com/media/CzG1ZkrUAAAZKs2.jpg:orig

- Oshyan

Hannes

Another way to get smooth reflections is to apply a subtle displacement to the object (very, very small PF for example).

KlausK

As kadri wrote: the edges only show up if you use more than 1 core and more than 1 thread.

The attached pictures were rendered with core set to 1 and thread max set to 1 as well.
04...jpg has set Reflection softness set to 0.2 like in one of the first examples and picture 03...jpg has set it to 0.5.
No edges, pattern, quadrants whatsoever.
A causal connection between the number of cores and threads when using a higher Reflection softness setting seems to be there.
Anyways, I'll keep this in my little black book of things to be aware.

cheers, Klaus

Hannes: Stabilize Ray detail is unchecked. Subtle Displacement is a good workaround, true.
Oshyan: Yeah, I saw that Holiday Sale picture, very nice. And very excited about the progress in the renderer too ;)
/ ASUS WS Mainboard / Dual XEON E5-2640v3 / 64GB RAM / NVIDIA GeForce GTX 1070 TI / Win7 Ultimate . . . still (||-:-||)