108
$\begingroup$

The term "BSDF" is common in Cycles shaders such as "Diffuse BSDF" and "Glass BSDF" but is not present in all names ("Emission" and "Mix Shader" are two such examples).

What exactly is a BSDF?

$\endgroup$

1 Answer 1

147
$\begingroup$

BSDF stands for bidirectional scattering distribution function.

Essentially, it's a mathematical function that determines the probability that a specific ray of light will be reflected (scattered) at a given angle.

Cycles is a probabilistic ray-tracing engine. It incorporates randomness by tracing the paths of rays of light at slightly different angles. The number of rays per pixel is determined by the sample count; more samples means a more accurate image. Each time a ray bounces, the BSDF determines in which direction the ray will bounce.

Some shaders, like "Emission," don't have the suffix BSDF because they don't reflect light. Emission shaders, as the name implies, emit light, while Mix Shaders simply take the weighted average of the BSDF of two different shaders, with the weight determined by the Factor input.

You may also notice that the Subsurface Scattering shader output is called a "BSSRDF." Similarly, this is a bidirectional surface scattering reflectance distribution function, because SSS materials don't simply reflect light; they absorb it and then reflect it later:

BSDF vs BSSRDF

(images from Wikipedia, created by User:Jurohi)

In short, the suffix BSDF means that the shader will scatter light. The type of shader determines the distribution function, which in turn determines how the light is scattered and how the material appears.

$\endgroup$
3
  • 13
    $\begingroup$ +1 for a great explanation (for both BSDF and BSSRDF) and the diagrams. $\endgroup$
    – CharlesL
    Commented Jun 9, 2013 at 22:48
  • 5
    $\begingroup$ To be clear those aren't my diagrams; they're from Wikipedia. I'll edit that in explicitly. $\endgroup$
    – wchargin
    Commented Jun 9, 2013 at 23:03
  • 5
    $\begingroup$ Yeah, that's fine. It's still a really good answer. $\endgroup$
    – CharlesL
    Commented Jun 9, 2013 at 23:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .