Announcement

Collapse
No announcement yet.

Raw Lights pass Acne issue!

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

  • Raw Lights pass Acne issue!

    Hey guys,

    I am rendering this animation, using IR and LC. My shaders, lights and IR+LC have enough samples, the adaptive is 1-8 with 0.01 threshold...
    I am lighting this mainly with and blurred low-res HDR in the dome light for the diffuse, and the high res non-blurried version in another dome light just for spec and reflections.
    Every other pass seams very good and clean, but I get this weird acne in some parts of my scene!
    If I switch the primary engine from IR to BF this acne disappear, and some fine grain noise is introduced every where, of course the main issues is higher render time then the past setup...
    The other way I alleviate more this acne is lowering the adaptive dmc threshold from 0.01 to 0.05 of course at a cost of higher render time.
    Another way that I find is not use the dome light with the blurried low res image. By using the original HDR to contribute for the diffuse as well, I get rid of this acne, but my raw GI pass got very splotch and not acceptable!
    I know that I can alleviate this noise with denoise in Nuke, but I thought would be nice to illustrate this case here, so maybe the math code responsible to cause this could be investigated and improved in later versions.


    Best regards,
    Antonio Neto.

  • #2

    Comment


    • #3
      So this is an easy one.

      Raw light and raw reflection can often be a tiny bit misleading when you look at them as render elements and try to judge quality. The raw passes get combined with a second pass to make the final diffuse or reflection bit that's used in your render, in the case of raw light or raw GI, both of them are multiplied with your diffuse filter or colour pass to make the final diffuse and gi lighting bits for the picture. Your raw reflection is multiplied by the reflection filter to do the same. What's happening here is you're only looking at one part of the puzzle.

      If you have a 100% black object for example, it'll absorb any light that hits it since black doesn't bounce any light. If you had a raw light and diffuse filter pass for this, you'll get black in the diffuse filter as this was the colour of your object, and then you'll either get absolutely nothing in the raw light pass, or some really dirty noisy stuff similar to the above. What happens is when you go to the comp stage, you'll have to combine the two passes using multiplication to get the final result. Light in your 3d renders is pretty much the colour of the object, multiplied by the intensity of the light that's hitting it, so it's the same here. We'd take our black colour from the diffuse filter pass and then multiply it by whatever's in the raw light pass to get the final direct light. If we temporarily go to numbers, black is generally 0 and white is 1. So if we have an object that's a middle grey or 0.5 in colour, and a light with a brightness of 1 hitting it, your raw light by colour equation that comes out the other side of it is 0.5 x 1 which of course equals 1. If the object however has a black colour or 0, then any amount of light that hits it won't make a difference as 0 or black in our diffuse filter pass multiplied by any value of light what so ever (lets say a brightness of 1 again) will always end up as black - our equation is 0 diffuse x 1 light which equals 0.

      It's the same with raw reflection, when you look at that pass it's like a mirror pass, as if you had applied a 100% reflective material to your object. There's a second pass called reflection filter which, much light the raw light pass, acts as a multiplier for the raw reflection and brings it down to the final level used in your render. So for example if you had an object that's 50% reflective, you'd have a mirror like raw reflection pass, and then a reflection filter pass which is 50% grey. It takes the raw reflection and knocks it down to 50% strength before adding it in to the final image.

      What's happening with your passes here is as the name suggests, it's the full, raw amount of either the light hitting the object or the reflection. You're seeing loads of horrible noise and grain in there and it looks very off putting. However, if your object is very dark, or in the case of reflection not very reflective, when it gets multiplied with the reflection or diffuse filter pass, it'll get darkened down so much that you won't be able to see the noise as clearly.

      Comment


      • #4
        Ok I findout that the main responsible for that acne is the store light feature in the light cache option!
        If you have that checked, no matter how much samples you put in light cache, or how low your adaptive and threshold values are you will get that acne in places where you have dark shadows.
        I did a comparison

        Comment


        • #5
          Ok here's the tip. If you improve you lights subdivs it will improve that acne noise, to a point where you will have some of it, and the overall image will be super-clean, and your render time is just going longer wihout improving it much. And this is up to your adaptive amount and your adaptive threshold at DMC. Same thing for the threshold and AA at your image sampler. It may help on this, but again you are just making your render time longer and making the overall quality of your image super clean and over sampled.
          So how to balance on this?
          Well I find out that if you leave your adaptive amount at the dmc in 0.5 you could conter-balance the subdivs in your materials, light and GI, to a point where it mitigate that acne noise and you render times doesn't go up much, and still have a good quality image.
          But you could go one step further. By calculating the GI with more samples on light and the adaptive amount dmc at 0.5 instead of 0.85 or higher, you can reduce the subdivs in GI, and the interpolate samples, still keeping it fast and good! Less than 0.5 in the adaptive amount dmc will clean it up a bit more but the render time will take a hit.
          There is one more step, to mitigate that more, without having a hit in the render time, and that is calculate just the light cache with the store direct light on, and when you get ready to render the final image, turn it off, remember to load the IR from your file and the LC as single frame, so it will be recalculated. With this you will mitigate more that acne noise, without have a hit in the render time. Without store the direct light in the light cache, GI get much more splotch and the render time is really much higher!
          So in the end, after many tests with different settings combinations and different GI engines, this was the fast way to go, with less nosier of all the possibilities...

          Comment


          • #6
            In the very end, during the comp you could use the denoise from nuke the get rid of the fine grain and have an even nicer render!

            Comment


            • #7
              The hard thing is that every scene is different with noise coming from different areas. Once you have a few methods of identifying where the noise comes from and some ideas about how to change this then you should be good!

              Comment

              Working...
              X