Sampling and BRDFs

We provide both a fixed sampler and an adaptive sampler.
There’s just a single parameter where to choose sampling type and sampling quality.

sampling_refl_UI

Generally for the Beckmann BRDF we can just forget about sampling and leave the default Adaptive.Medium that will take care of everything. GGX instead is way more problematic especially when the material is reflecting an HDR environment with tiny bright lights. This is because GGX has a ‘long tail’ which is difficult to sample.

sampling_refl_Beckmann__medium

sampling_refl_GGX__medium

For example the first sphere is Beckmann. With Adaptive.Medium sampling there isn’t any artifact. While the second sphere is GGX and you can see artifacts around the tiny bright lights reflections. To clean the artifacts we choose Adaptive.Smart.

sampling_GGX__smart

 

Here a comparison with increasing roughness values: GGX(GTR) vs Beckmann(Ward)

GGXvsBeckmann

One thought on “Sampling and BRDFs

  • In this case, if we choose a random number, where there exists an equal likelihood that any value between 0 and 1 will be produced, then more numbers will map to the important sample, S2, and thus we will sample that direction more often.

Leave a Reply