I was recently trying to read some rendering papers and textbooks. The word 2D BRDF slice/lobe is often used while no official definition is provided. I know that BRDF is a 4D function of input direction and output direction. What is the 2D slice/lobe based on that? Are they the same concept? If not, what's the definition of each of them?
1 Answer
A BRDF is a 4D function, but as we cannot really visualize a 4D function in a comprehensible way, if we want to understand its behavior it can be instructive to fix 2 or 3 of the parameters and graph the others. This kind of graph can be called a "slice". (The mental image I have is like: the BRDF is some oddly shaped fruit, and we're taking a knife and making a slice through it, to examine the shape of the cut area.)
In particular, a common way to do this is to fix the incoming light direction; then the BRDF can be graphed as a function of the outgoing light direction, like this:
(image from http://brdflab.sourceforge.net/)
The orange line on the left represents the fixed incoming light direction. This is a polar graph, so the magnitude of outgoing light in each direction is graphed as the radius of the shape.
In this case we can see that most of the light is going out along the specular reflection direction, to the upper right; but some is heading back toward the source as well (retroreflection). These are the "lobes". Lobes are not precisely defined, but intuitively they are the visible features in the shape of the function. Here, we would say there is a "specular lobe" and a "retroreflection lobe". In fact, this BRDF looks like it has two specular lobes, one long skinny one (which represents a tightly concentrated, bright highlight) and another short and fat one (a more spread-out, soft/rough highlight). There appears be a diffuse lobe as well, which shows up as a hemisphere around the origin in this type of graph.
It's also common to simplify the graph even more by constraining the outgoing light directions to be coplanar with the normal and the incoming light, so now you're only graphing the (N, V) angle. That gets you a graph like this:
(image from Physically Based Rendering in Filament)
This is the one that's most likely to be called a "slice". This diagram also shows two "lobes", a specular one and a diffuse-ish one.
Synthetic BRDFs (what we mostly use in graphics) are usually constructed by taking a weighted average of various lobes generated by different models, e.g. a Lambert diffuse lobe with one or more microfacet specular lobes, etc. When looking at measured BRDFs, we could try to identify the "lobes" by fitting some model lobes to the measured data.
To sum up, "slice" is a type of graph that allows us to visualize the features of a BRDF, and "lobe" is the name for the typical kind of features that we see in the BRDF shape, or that we use to construct the BRDF in the first place.
-
$\begingroup$ Thanks! Concise, clean, and professional, I totally understand these two terms! $\endgroup$ Aug 30, 2020 at 19:19