Author Topic: Adaptivity - questions  (Read 4240 times)

2016-05-20, 18:12:35

pokoy

  • Active Users
  • **
  • Posts: 1874
    • View Profile
Adaptivity works really in an unexpected way for my production scenes or maybe I'm just not getting it. The render time estimation keeps growing no matter what and I end up with rendertimes of 25+ hours where the same setup without adaptivity renders a clean image in 3 hours, that is for the same number of passes which I admit will be too much with adaptivity enabled. Looking at the SamplingFocus doesn't help since I don't know how to 'read' it.

I need to understand adaptivity better and have some questions:

- With adaptivity on, is estimated remaining time shown still valid? Should it behave like it does without adaptivity, start with an estimation and then decrease linearly until the render is finished?

- How to read SamplingFocus pass? What does a dark grey mean, what does white mean? Is the pass expected to show black areas?
For example, my backplate (CoronaLightMtl with no emission, not visible to anything except direct rays) displays a value of RGB 50-60. Shouldn't it be completely black or is this the neutral value? The ground plane has a similar material for the direct rays and instead of just being rendered 'as is' like the backplate it shows a lot of white and different grey speckles as if i needs to sample a lot.

- Should the SamplingFocus pass change with render progress? If the beauty pass is noise free, should the pass fade to black/grey/white or whatever color means to be neutral?

I'm not trying to say it's useless - quite the contrary - it really helps to get cleaner images in the same time, but I realize that I need to understand it before being able to get the best out of it.
(P.S. I know about the noise limit, I just would like to learn the answers to the question above)

2016-05-20, 19:43:51
Reply #1

Ondra

  • Administrator
  • Active Users
  • *****
  • Posts: 9048
  • Turning coffee to features since 2009
    • View Profile
I am thinking about removing the pass limit ;). It seems to not mesh well with adaptivity, and is not really that needed anymore ;)

As for your questions:
- Sampling focus pass is simple: the brighter the pass, the more total samples were placed at that pixel. It is linearly dependent and relative - so twice the brightness, twice the number of samples. Average color in the pass = average number of samples = 1 sample per pass. You can change the intensity spinner for the pass to change the color of "1 sample per pass" pixels.
- Nothing in the image can be completely black in sampling focus pass, you always need some samples in the beginning to establish that there is nothing there.
- sampling focus pass shows the total number of samples from the beginning of the render, so even when noise equalizes, it wont equalize to gray
- with adaptivity on and pass limit the estimated time should change dramatically immediately when the adaptivity kicks in, and then should converge to some reasonable estimate, once the image noise stabilizes
Rendering is magic.How to get minidumps for crashed/frozen 3ds Max | Sorry for short replies, brief responses = more time to develop Corona ;)

2016-05-21, 09:23:24
Reply #2

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8885
  • Let's move this topic, shall we?
    • View Profile
    • My Models
I am thinking about removing the pass limit ;). It seems to not mesh well with adaptivity, and is not really that needed anymore ;)

I don't mind to loose pass limit, but only if you bring noise calculation to rendering without adaptivity, otherwise there may be situations that is hard to solve: https://forum.corona-renderer.com/index.php/topic,12024.0.html
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2016-05-21, 11:36:01
Reply #3

PROH

  • Active Users
  • **
  • Posts: 1219
    • View Profile
Well I don't see any reason to remove it. IMHO there are still situations we're pass limit is the most obvious starting point.

2016-05-21, 12:42:51
Reply #4

Juraj

  • Active Users
  • **
  • Posts: 4768
    • View Profile
    • studio website
Pass limit is rather good threshold because of it's linearity compared to noise threshold. Sure, time limit is also linear, but doesn't say anything about quality without prior testing and doesn't scale across different machines. Passes do both.
Please follow my new Instagram for latest projects, tips&tricks, short video tutorials and free models
Behance  Probably best updated portfolio of my work
lysfaere.com Please check the new stuff!

2016-05-22, 11:56:29
Reply #5

pokoy

  • Active Users
  • **
  • Posts: 1874
    • View Profile
Thanks for the answers, Ondra, and good to hear others' opinions. I think it's good to talk a bit about the inner workings of adaptivity as it seems less intuitive to understand than the rest of Corona's features.

As for removing the pass limit... please postpone the decision to a later point than 1.5. There may be some cases that adaptivity misses to help with and these issues should be ironed out completely before doing so.

On the scene I mentioned above even a noise level of 2% - which seems to be much lower than the recommended levels in a thread about noise levels - is too noisy for me on some materials. It might have to do with layering materials with different glossiness levels for reflections similar to car paint, but I need to do more tests.
Also, LightMtl using a projected texture seems to confuse adaptivity. Instead of 'just' rendering the mapped texture values it engages adaptivity based on lightness values of the texture, leading to much longer render times than without adaptivity. If I zoom in on these objects I can clearly see areas that are quite noisy next to completely noise-free areas, looking like artifacts similar to jpeg compression. These take way longer to look really clean than without adaptivity, in fact rendering without adaptivity leads to a much more uniform noise level across the whole object. Again, I need to test why and when this happens but it does look like adaptivity is not working well enough to be the only option when rendering.
Sadly, I'll not have much time to test but I hope to come up with some results in the next two weeks or so.

2016-05-22, 16:10:40
Reply #6

Ondra

  • Administrator
  • Active Users
  • *****
  • Posts: 9048
  • Turning coffee to features since 2009
    • View Profile
dont worry, we wont remove pass limit unless all the potential problems outlined here and in other threads are resolved somehow
Rendering is magic.How to get minidumps for crashed/frozen 3ds Max | Sorry for short replies, brief responses = more time to develop Corona ;)

2016-05-22, 16:52:14
Reply #7

Juraj

  • Active Users
  • **
  • Posts: 4768
    • View Profile
    • studio website
Thanks for the answers, Ondra, and good to hear others' opinions. I think it's good to talk a bit about the inner workings of adaptivity as it seems less intuitive to understand than the rest of Corona's features.

As for removing the pass limit... please postpone the decision to a later point than 1.5. There may be some cases that adaptivity misses to help with and these issues should be ironed out completely before doing so.

On the scene I mentioned above even a noise level of 2% - which seems to be much lower than the recommended levels in a thread about noise levels - is too noisy for me on some materials. It might have to do with layering materials with different glossiness levels for reflections similar to car paint, but I need to do more tests.
Also, LightMtl using a projected texture seems to confuse adaptivity. Instead of 'just' rendering the mapped texture values it engages adaptivity based on lightness values of the texture, leading to much longer render times than without adaptivity. If I zoom in on these objects I can clearly see areas that are quite noisy next to completely noise-free areas, looking like artifacts similar to jpeg compression. These take way longer to look really clean than without adaptivity, in fact rendering without adaptivity leads to a much more uniform noise level across the whole object. Again, I need to test why and when this happens but it does look like adaptivity is not working well enough to be the only option when rendering.
Sadly, I'll not have much time to test but I hope to come up with some results in the next two weeks or so.

At 2perc. I still consider the image too noisy for production. Funnily at 1.5, it's oversampled to hell :- ) The difference between those two were 130 and 500 passes :- D So for me noise level is really kind of inconvenient threshold. It sure it's bullet-proof, but with high-res renders, it's just far too hard to estimate properly.
Please follow my new Instagram for latest projects, tips&tricks, short video tutorials and free models
Behance  Probably best updated portfolio of my work
lysfaere.com Please check the new stuff!

2016-05-22, 17:35:07
Reply #8

pedmar3d

  • Users
  • *
  • Posts: 4
    • View Profile
here i turn on adaptative ? or is always on ... just can see denoise check box ...

2016-05-22, 19:16:11
Reply #9

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8885
  • Let's move this topic, shall we?
    • View Profile
    • My Models
Yes, adaptivity is turned on by default.
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2016-05-22, 20:29:38
Reply #10

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12794
  • Marcin
    • View Profile
here i turn on adaptative ? or is always on ... just can see denoise check box ...
Hi, see: https://coronarenderer.freshdesk.com/support/solutions/articles/12000004975
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us