Author Topic: UHD Cache counter-intuitive precision concept.  (Read 12062 times)

2015-05-01, 02:24:28

danielljunior

  • Active Users
  • **
  • Posts: 6
    • View Profile
Hello guys,

First of all I wish to apologize beforehand if this isn't the right category for this topic, this subject doesn't actually seems to be a bug to me. Also if this subject was already mentioned (I looked but didn't find). Anyway:

I did some tests regarding to UHD Cache precision. But it was a single frame test, in a very simple scene. I'm saying that 'cause it's description says it's flicker free when on higher values, which atm isn't one of my concerns and for those who pay more attention (not my case) it seems to be a setting aimed for animation purposes.

I used to believe that the higher precision would decrease noise and make the image brighter (hence the title of this topic) and only the GI computing would be longer. But what I found was quite the opposite. Not only it takes a lot longer (I'm talking about two extreme scenarios: 1 vs 99) but it also has more noise and dark areas. When it comes to the dark areas, looking closely, it does look more precise indeed, but it's a subtle difference to take into account when you put it against the time required (at least that's what I think).

The two following images are the render tests I did. Both of em use the same materials and settings but the precision, which on the first is 1 and on the second is 99. The first image (precision 1) took 10 minutes and 10 seconds to render 500 passes. The latter (precision 99) took 1 hour and 13 minutes (73 minutes). Which is 7.3 times longer for such a subtle lighting difference and more noise. Plus the GI computing which on the first case is almost instantaneous while on the second case took 2 min and 5 seconds. And as you'll see, I'm talking about low res images.

So, simple numbers:

1st image
precision 1
10 min and 10 sec to render 500 passes

2nd image
precision 99
1 hour and 13 min to render 500 passes

The reason I wanted to bring this topic here is that maybe there are more Corona users that, like I did, have this wrong idea about the UHD Caches' precision setting and consequently are paying the price: 7.3x the render time.

Surely I don't think that the results of this test are true for every scenario, but I think it's a good insight to what happens when we change this setting.

Thanks

P.S.: I increased the images' exposure on Photoshop by 1,52.

2015-05-01, 11:59:18
Reply #1

lacilaci

  • Active Users
  • **
  • Posts: 749
    • View Profile
High values for uhd precision are meant for reducing flickering and artifacts in animations. It is even stated in the rollover popup in render settings that high values for Precision should be avoided cause it causes less succes rate of the cache and slows rendering down.

If you're doing animation, you should do some testing to see how high you really need to go with the setting to make sure no defects/flickering are present. Or use PT+PT instead some crazy values for uhd cache.

If you're rendering stills, stick to defaults. Defaults in corona are really well set-up. If you ever need to change something it is usually light samples multiplier vs path tracing samples based on direct/gi noise in your renderings. But most of the time even those defaults are working well.

2015-05-01, 13:28:07
Reply #2

danielljunior

  • Active Users
  • **
  • Posts: 6
    • View Profile
Indeed lacilaci, thanks for your reply.

I acknowledged that, but even so I had this idea that the precision would help with the general quality. Probably because I'm a noob in Corona. But I wanted to save someone else who eventually might have the same oversight about it.

2015-05-01, 16:50:59
Reply #3

Juraj

  • Active Users
  • **
  • Posts: 4815
    • View Profile
    • studio website
You're not noob, I posted the same issue maybe month (or two) ago, it's in this section as well, just in "resolved" :- ).
https://forum.corona-renderer.com/index.php/topic,7544.msg50567.html#msg50567

The tooltip was since updated, as I had no idea of this concept either. In A7 it was instead quality multiplier which was since scrapped.
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!

2015-05-01, 17:37:16
Reply #4

Ondra

  • Administrator
  • Active Users
  • *****
  • Posts: 9048
  • Turning coffee to features since 2009
    • View Profile
I'll probably change the maximum value of the parameter, 99 is just unreasonably high, to the point where the algorithm just breaks down
Rendering is magic.How to get minidumps for crashed/frozen 3ds Max | Sorry for short replies, brief responses = more time to develop Corona ;)

2015-05-01, 18:56:50
Reply #5

danielljunior

  • Active Users
  • **
  • Posts: 6
    • View Profile
Thanks Juraj and Ondra for your replies!

I actually crossed my eye over that topic, Juraj, but didn't realize that HD success rate and precision are the same thing (which led me to not read it). I'm still getting used to the corona jargons hehehe. You relieved me a little of my noobness burden! :)

I can't say much about that, Ondra (at first I misunderstood the precision concept). Maybe you could just put the recommended values on the tip, as it is for LSM, GI and MSI. If the algorithm doesn't actually break down, which, again, I can't say much, maybe there might be some case somewhere on which someone needs it. It's always good to have the option.

Corona is simply amazing, fast and beautiful. But this misconception of mine took away a little bit of that fast hehehe. The last project I did, I rendered 8 stills (1080p) on which they took 10-14 hours for 300 passes and had yet some noise. I'm not fanatical about noise clean images (AFAIK there's noise on actual photography) but what really concerned me was the time it took. These images happened to have precision set on 99, so you get why I wanted to bring it here.

Again, thank you!

2015-05-01, 19:01:03
Reply #6

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 13708
  • Marcin
    • View Profile
I see it like this:
lower precision = faster, more "blur" allowed, less detail
higher precision = slower, less "blur" allowed, more detail
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2015-05-01, 19:47:00
Reply #7

danielljunior

  • Active Users
  • **
  • Posts: 6
    • View Profile
Yes maru, that seems to be the case. thanks for your comment!

But if you relate "more detail" to higher quality (not saying you do [I kinda did]) and are willing to sacrifice some time for that end, imho, based on this test, you would be a little disappointed. For the final image would take too much longer and would be noisier.

I didn't do that test yet, but I believe that if I show these images above to a layman (client, if you wish) he would say that the noise free image looks better, 'cause he doesn't care much about that tiny shade of light here and there (unless it's a very highlighted requirement for the image), but he most likely cares more about that noisy look. Even if it was the other way around, would the time required be a good trade off? I frankly believe it wouldn't. And of course, we're talking about stills, and this is just my limited point of view, not saying it is like this for everyone or every case.

By the way, I forgot to mention before: lacilaci, you said that it's stated in the rollover popup that "high values for Precision should be avoided cause it causes less success rate of the cache and slows rendering down". If you're talking about the precision rollover, mine doesn't say it, and I'm using Corona v. 1.00.02.

2015-05-01, 20:17:30
Reply #8

lacilaci

  • Active Users
  • **
  • Posts: 749
    • View Profile
Yes maru, that seems to be the case. thanks for your comment!

But if you relate "more detail" to higher quality (not saying you do [I kinda did]) and are willing to sacrifice some time for that end, imho, based on this test, you would be a little disappointed. For the final image would take too much longer and would be noisier.

I didn't do that test yet, but I believe that if I show these images above to a layman (client, if you wish) he would say that the noise free image looks better, 'cause he doesn't care much about that tiny shade of light here and there (unless it's a very highlighted requirement for the image), but he most likely cares more about that noisy look. Even if it was the other way around, would the time required be a good trade off? I frankly believe it wouldn't. And of course, we're talking about stills, and this is just my limited point of view, not saying it is like this for everyone or every case.

By the way, I forgot to mention before: lacilaci, you said that it's stated in the rollover popup that "high values for Precision should be avoided cause it causes less success rate of the cache and slows rendering down". If you're talking about the precision rollover, mine doesn't say it, and I'm using Corona v. 1.00.02.

I'm using build from 16 of april 2015. (don't know if it matters and I didn't repeat that statement word by word - sorry)
But I still think it is pretty much clear.

As Ondra said. Some max value limit could help preventing user error.
Maybe I would even name the whole parametter as "animation precission" instead precission.

Cause you can't really expect any dramatic difference in stills using higher values than defaults for this. (limited personal experience as when I personally want more definition or have more time then I just switch to PT+PT, i might be wrong)

And on that noise in renderings and comparing it with photographs: noise, aberations and distortions in photography means, cheap equipment or cheap photographer or both... I know there might be some specific times when you actually would need to do that.. Like making your rendering match some specific camera purposefully looking like a cheap shot.. etc.. but even then it should be under control... anything random in your rendering/photography is your enemy :D But hey.. Maybe I'm wrong..

2015-05-01, 21:13:19
Reply #9

danielljunior

  • Active Users
  • **
  • Posts: 6
    • View Profile
Yeah, I didn't expected those words to be precise, but the idea is what matters here. And indeed these are clear words. As you'll see I don't have these. In that Juraj's topic, Ondra said that changed it, and that's your case.

Maybe what happened here in my Corona, is that I used the A6 free version, A7 and 1.0 trial version then got the License, maybe the installation doesn't substitute every single file, which maybe led to this popup not changing here. Uninstalling it and re-installing probably solve the issue.

I do read the popups, I even have that interactive documentation on my favorites (now chrome calls it bookmarks). But this popup I only read on 3ds max. But yeah, I learned the lesson.

For the photos I didn't mean grainy (heavy) noise (neither for the renders), but there's always some noise, usually on dark spots. One way to decrease it (that I know) is merging some exposure shots. Surely, better cameras have more subtle noise, but you can spot it in almost every photo (if you see it in the original resolution of course). That's for my experience, I could be wrong too. And for aberration and stuff like that, it's more of an artistic subject (I think) than Corona itself (as it doesn't generate it as artifacts).

Thanks for the reply lacilaci!

2015-05-02, 09:54:09
Reply #10

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 9281
  • Let's move this topic, shall we?
    • View Profile
    • My Models
OFF TOPIC AFAIK, no real world camera, be it analog or digital, can be completely noise free. /OFF TOPIC
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures