Announcement

Collapse
No announcement yet.

Adaptive Subdivision Image Sampler gone

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Adaptive Subdivision Image Sampler gone

    Hey guys,

    Once I posted some question in regards the Adaptive Subdivision Sampler here and many mentioned how it was an obsolete Sampler and how I should not be using it. Thing is, now that is gone completely and I'm bouncing between Bucket and Progressive, I was never able to reach the same clean renders (less noisy) with a short render time as I had with the Adaptive Subdivision sampler. I'm not using the de-noiser since I use a different frame buffer (VFB+2.7) so I'm not taking advantage of this method.

    Is there any in-depth documentation I can check to get better results using the new Image Samplers? What makes the Adaptive Subdivision Method so obsolete or not recommended that it got removed?

    Thanks!

    -Fausto.

  • #2
    Fausto, it's only been removed from the UI, as it's a heritage way of doing Anti-aliasing which only really works well when undersampling (if you did volumes, particularly, before probabilistic sampling was introduced.), and has the nasty habit, when over-sampling, to have to cast the full amount of samples per sub-pixel.
    Meaning with a max rate of 3, you'd be casting 64 times the base samples per pixel, making rendertimes shoot skyward whenever a few pixels need to reach the max AA.

    If you have a particular scene which you find rendering very slowly for your expectations, please send it over to my chaosgroup address (emanuele.lecchi at the chaosgroup domain), and i'll see what can be done to give you back a similar result.
    If it's an issue you feel you can't address without it, i'd love if you could elaborate a bit more.

    In the while, with V-Ray as current production renderer, you can run this line of script to get it back:
    Code:
    renderers.current.imageSampler_type=2
    The dropdown will show no text, but the sampler settings will be there.

    However, it'd really help if you provided for more info about your present issues.
    Lele
    Trouble Stirrer in RnD @ Chaos
    ----------------------
    emanuele.lecchi@chaos.com

    Disclaimer:
    The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

    Comment


    • #3
      Originally posted by FaustoDeMartini View Post
      What makes the Adaptive Subdivision Method so obsolete or not recommended that it got removed?
      In most of my tests it's been slower and more difficult to adjust than the Adaptive one, especially with the move to more brute force methods and automatic light/material sampling. There are a few cases where it does have some advantage, but those cases are relatively rare. If you have any scenes where the reverse is true, you can post them here.

      Best regards,
      Vlado
      I only act like I know everything, Rogers.

      Comment


      • #4
        Vlado, Lele,

        Thanks so much for the clarification!

        Lele it happens in a case by case basis. The file I have right now its under NDA so I will rebuild a scene with similar objects and same shaders to send you guys.

        Meanwhile, I see the issue more often when I have materials that has a broad Reflection Glossiness. In order for me to get a good visual result (which means less noise in the reflections) I resort in rendering as Bucket using a Max SubDiv of 8-10. Below this I get a noisy effect but the render times feel too slow.
        Last edited by FaustoDeMartini; 02-09-2016, 04:26 PM.

        Comment


        • #5
          Originally posted by FaustoDeMartini View Post
          Vlado, Lele,

          Thanks so much for the clarification!

          Lele it happens in a case by case basis. The file I have right now its under NDA so I will rebuild a scene with similar objects and same shaders to send you guys.

          Meanwhile, I see the issue more often when I have materials that has a broad Reflection Glossiness. In order for me to get a good visual result (which means less noise in the reflections) I resort in rendering as Bucket using a Max SubDiv of 8-10. Below this I get a noisy effect but the render times feel too slow.
          Well I think "feels" can be a subjective thing. Some hard facts/examples would be best. I don't disagree that adaptive subdivision did good with glossy surfaces, but with each subdiv level it applies a lot more samples, I don't remember the math already but 1/3 adaptive subdiv would be like 4/64 samples which is a lot.
          Dmitry Vinnik
          Silhouette Images Inc.
          ShowReel:
          https://www.youtube.com/watch?v=qxSJlvSwAhA
          https://www.linkedin.com/in/dmitry-v...-identity-name

          Comment


          • #6
            Originally posted by Morbid Angel View Post
            Well I think "feels" can be a subjective thing. Some hard facts/examples would be best. I don't disagree that adaptive subdivision did good with glossy surfaces, but with each subdiv level it applies a lot more samples, I don't remember the math already but 1/3 adaptive subdiv would be like 4/64 samples which is a lot.
            the maths is simple enough.
            Each level of aSubD splits the pixel in 2 on each side, creating 4 sub-pixel per level up, and quarter the virtual resolution for each level down.
            So the maths is a simple (4^level): at 0 the number of sub-pixels (and the corresponding sampling multiplier) is 1, it's 1/4 for -1, and 4 for 1, 1/16 for -2, and 16 for 2, 64 for 3, 256 for 4, 1024 for 5.
            That isn't samples, it's the amount of TIMES each sub-pixel will cast the FULL amount of samples shaders and lights are set to.

            I used it in both car rendering and vfx (Pixo, Oblivion and GoT, and RTT) in 2.x as a tool to precisely control the sampling, but i would then adapt the global subdivs multipler to the reciprocal of my MIN aa (for a 2-3, i'd then set GSD to 1 / (4^2), or 0.0625, so to make sure the base was sampled as without AA).
            Still, if a pixel was needing the MAX aa, i would still suffer a massive FOUR TIMES the sampling for that one pixel alone, which for the most complex of shaders meant infamous hung buckets.

            The boring maths and historical perspective are just to explain why the current methods are superior: if a pixel is found wanting, it now gets MSR SAMPLES more, and is checked again.
            If before, with a standard shader subdivs of 6, i'd cast 64 rays for the effect per AA level/sub-pixel, facing a per-pixel scale of 64/256/1024/4096/16384/65536 (aSubD of 0/1/2/3/4/5), now i gracefully start at 6 (for the deafult MSR) and add 6 each time a pixel is found wanting and is resampled, so my scaling is 6/12/18/24/30/36 and so on, for each AA ray (so if it hit 100 max, or 10000 AA pixels, with an msr of 6 it'd cast 60000+10000 samples at most).

            The "slack" is infintely minor, and it's now easier to NOT bound the Max AA that harshly, and as manically, as we had to.

            The approach as of 3.0, and all the more so from 3.3+, is similar in concept only to the old "universal settings", as Vlado rewrote the sampling routines from scratch.

            TL; DR: see the cheatsheet in this post
            http://forums.chaosgroup.com/showthr...362#post675362
            Lele
            Trouble Stirrer in RnD @ Chaos
            ----------------------
            emanuele.lecchi@chaos.com

            Disclaimer:
            The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

            Comment

            Working...
            X