I looked into that LaFortune stuff a bit after it came up in relation to a post on c.g.r.renderman I think… looked interesting, but kinda like one of things where you’ve got some guy at Stanford solving it all with a 100-term differential equation, but some other bloke gets just the same result by calling specular() 3 times with different parameters…
Do you have any good references for LaFortune, Simon?
M-J: What I mean is 9 times out of 10, just using a lambert with a blinn specular highlight will get you perfectly good results. On some occasions you need to use something different for anisotropic highlights, for example. Good textures and good lighting negate the need for a complex BRDF in most cases, imo.
If you’re still having trouble with what BRDF actually is, it works like this. For a given point on the surface, the BRDF basically tells you how much of the light from a given light source is reflected off the surface towards the viewer.
The simplest example is Lambert’s diffuse model. This states that the intensity of the reflected light is proportional to the cosine of the angle between the light’s direction vector and the surface normal.