[Bf-committers] BRDF conversion - Was Farsthary anouncement

Yves Poissant ypoissant2 at videotron.ca
Tue Feb 10 02:26:50 CET 2009


> As for kr, the perfectly smooth reflection from a surface that also have
> partially smooth properties and perfectly diffuse properties seems like an
> aberration. But it is not so. In fact, there are materials that act 
> exactly
> like that. Those materials can be modeled with double layer of BSDF. And 
> in
> fact, double layer materials can much better mimick other seemingly
> incongruities or contradictions of legacy materials. But that is another
> story.

As I noted in a previous post, kd, ks, es and dr could be controled by one 
single parameter: "roughness". Indeed, a single layer BRDF tightly controls 
those 4 properties. But in legacy CG, those 4 properties are individually 
controlable by the end user and usually end up being set in some 
inconsistent manner. Inconsistent manner for a single layer material such as 
stone, marble, concrete, metals, wood, etc, that is.

But it is not entirely inconsistent if we accept that the material is made 
out of multiple layers such as varnished wood, glazed ceramics, vinyl, 
plastic, etc. And that is exactly why it is difficult to design material 
that does not look like plastic with legacy material specifications. By 
setting up inconsistent values on the different materials parameters, the 
end user is actually setting up a multiple layer material without knowing 
it.

It takes a lot of knowledge (or a lot of tweaking time, experience and a 
keen sense of observation) to succesfully setup a consistent set of legacy 
material parameters for a single layer material look. The nice thing about 
BRDF is that this is all done automatically for the end-user.

Legacy CG material specification does, more often than not, look like 
plastic because the underlying assumptions implemented in the basic shaders 
almost perfectly match plastic material compositon. A plastic is composed of 
a smooth transparent polymer substrate into which are suspended pigments or 
colored particles. The smooth transparent polymer substrate gives this nice 
smooth reflection with the characteristics highlights while the suspended 
pigments or particles provide the nice diffuse reflection. Since there is 
little control on the diffuse component of the shaders, and the highlight 
characteristic of every specular shader looks more or less the same, we have 
a nice easy recipe for plastic material but a hard time doing anything else 
(BTW, our best bet, for better control of our legacy multiple layer material 
look is to use Oren-Nayar diffuse shader instead of any of the others and 
play with its roughness parameter).

Because of inconsistent (physically speaking)  set of legacy material 
parameters, shaders to BRDF conversions will usually end up as being 
represented by a double layer material with the bottom layer 100% rough and 
the top layer's roughness corresponding more or less to the es parameter and 
the top layer transparency matching the kd to ks proportions. Mix in a 
proper dose of Fresnel reflection and there goes the conversion and 
obviously, those materials will all look more or less like plastic.

Yves 



More information about the Bf-committers mailing list